{"report_id":"daa664b9-6393-4ca7-9885-0f2d38a3c3f1","version":0,"status":"done","tags":[],"date":"2026-07-27T10:37:29Z","url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":0,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"final":{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"title":"Equinuxglobalasset - Best Crypto Signals | Paid and Free","dom":{"size":324594,"mime_type":"text/html; charset=utf-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (24589)","md5":"92b55f5804ec0c63cae165739d29c19a","sha1":"a3e929028dc5daaa6bc668007b12fda5938589a3","sha256":"e003041b1c6ba2252b59b8397bfd4f71d433e330ed1477e8e9dd033dcec5c32c","sha512":"acf703bf00b1b0b51b76870db7596be4549299e47bf1ca50c2fe2147172f57ec273d771f60e5bb6cc53cd431d49e52f2c3c590c927b0139918a38e841ebf5804","ssdeep":"3072:9Q0Zmaq4+YnjlTwyYrdczEarZJ5iWLnsqB/PCndAmsoWge7519fqLNadxo6iGnfs:a0ZRq4+ksqB/6Wgs519k","tlshash":"4264f7db577d3634334706d9b88a33a8b99d8033e69114b0bcb9859c8bc2993136b75f","dom_hash":"domhash413d2b7263d979a49e1a890e0942a7a2","first_seen":"2026-07-27T10:37:38.198199Z","last_seen":"2026-07-27T10:37:38.198199Z","times_seen":1,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":0,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T10:37:29Z","useragent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0","referer":"","cookies":null,"exit_node":"qguvgzjxzsgb3vs"},"stats":{"alert_count":{"ids":0,"urlquery":0,"analyzer":1}},"detection":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null},"summary":[{"fqdn":"stats.wp.com","ip":{"addr":"192.0.76.3","port":443,"asn":2635,"as":"AUTOMATTIC","country":"United States","country_code":"US"},"domain_registered":"1997-03-28","domain_rank":22660,"first_seen":"2017-01-30T05:06:59Z","last_seen":"2026-07-27T08:34:52.526387Z","alert_count":0,"request_count":2,"received_data":14813,"sent_data":924,"comment":"","tags":null,"fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}]},{"fqdn":"static.getbutton.io","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2019-09-03","domain_rank":386210,"first_seen":"2019-10-01T09:11:58Z","last_seen":"2026-07-25T14:48:54.018453Z","alert_count":0,"request_count":1,"received_data":0,"sent_data":487,"comment":"","tags":null,"fingerprints":null},{"fqdn":"wp-content","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"unknown","domain_rank":0,"first_seen":"2024-10-26T09:27:14.604358Z","last_seen":"2026-07-27T08:11:21.727866Z","alert_count":0,"request_count":1,"received_data":0,"sent_data":529,"comment":"","tags":null,"fingerprints":null},{"fqdn":"s3.tradingview.com","ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"domain_registered":"2010-03-20","domain_rank":165395,"first_seen":"2018-06-24T04:06:00Z","last_seen":"2026-07-25T05:38:23.80932Z","alert_count":0,"request_count":1,"received_data":14554,"sent_data":503,"comment":"","tags":null,"fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}]},{"fqdn":"equinuxglobalassets.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"unknown","domain_rank":0,"first_seen":"No data","last_seen":"No data","alert_count":51,"request_count":51,"received_data":1293809,"sent_data":29174,"comment":"","tags":null,"fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"jQuery","description":"jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.","website":"https://jquery.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery:*:*:*:*:*:*:*:*","icon":"jQuery.svg","categories":["JavaScript libraries"]},{"name":"WooCommerce Multilingual:5.0.2","description":"WooCommerce Multilingual plugin makes it possible to run fully multilingual ecommerce sites using WooCommerce and WPML.","website":"https://wordpress.org/plugins/woocommerce-multilingual","common_platform_enumeration":"","icon":"WooCommerce Multilingual.png","categories":["WordPress plugins","Translation"]},{"name":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"Google Analytics","description":"Google Analytics is a free web analytics service that tracks and reports website traffic.","website":"https://google.com/analytics","common_platform_enumeration":"","icon":"Google Analytics.svg","categories":["Analytics"]},{"name":"Premio Chaty","description":"Chat with your website visitors via their favorite channels with Chaty by Premio.","website":"https://premio.io/downloads/chaty","common_platform_enumeration":"","icon":"Premio.png","categories":["WordPress plugins"]},{"name":"MailChimp","description":"Mailchimp is a marketing automation platform and email marketing service.","website":"https://mailchimp.com","common_platform_enumeration":"cpe:2.3:a:thinkshout:mailchimp:*:*:*:*:*:*:*:*","icon":"mailchimp.svg","categories":["Marketing automation","Email"]},{"name":"Yoast SEO:19.7.1","description":"Yoast SEO is a search engine optimisation plugin for WordPress and other platforms.","website":"https://yoast.com/wordpress/plugins/seo/","common_platform_enumeration":"","icon":"Yoast SEO.png","categories":["SEO","WordPress plugins"]},{"name":"Yoast SEO Premium:19.3","description":"Yoast SEO Premium is a search engine optimisation plugin for WordPress and other platforms.","website":"https://yoast.com/wordpress/plugins/seo/","common_platform_enumeration":"","icon":"Yoast SEO.png","categories":["SEO"]},{"name":"WordPress:6.0.2","description":"WordPress is a free and open-source content management system written in PHP and paired with a MySQL or MariaDB database. Features include a plugin architecture and a template system.","website":"https://wordpress.org","common_platform_enumeration":"cpe:2.3:a:wordpress:wordpress:*:*:*:*:*:*:*:*","icon":"WordPress.svg","categories":["CMS","Blogs"]},{"name":"Divi","description":"Divi is a WordPress Theme and standalone WordPress plugin from Elegant themes that allows users to build websites using the visual drag-and-drop Divi page builder.","website":"https://www.elegantthemes.com/gallery/divi","common_platform_enumeration":"","icon":"Divi.svg","categories":["Page builders","WordPress themes","WordPress plugins"]},{"name":"PHP","description":"PHP is a general-purpose scripting language used for web development.","website":"https://php.net","common_platform_enumeration":"cpe:2.3:a:php:php:*:*:*:*:*:*:*:*","icon":"PHP.svg","categories":["Programming languages"]},{"name":"MailChimp for WooCommerce:2.7.5.01","description":"MailChimp for WooCommerce gives you the ability to automatically sync customer purchase data to your MailChimp account.","website":"https://mailchimp.com/integrations/woocommerce","common_platform_enumeration":"","icon":"mailchimp.svg","categories":["WordPress plugins"]},{"name":"FitVids.JS:4.18.0","description":"jQuery plugin for fluid width video embeds","website":"https://fitvidsjs.com/","common_platform_enumeration":"","icon":"FitVids.JS.png","categories":["Widgets","Video players"]},{"name":"MySQL","description":"MySQL is an open-source relational database management system.","website":"https://mysql.com","common_platform_enumeration":"cpe:2.3:a:mysql:mysql:*:*:*:*:*:*:*:*","icon":"MySQL.svg","categories":["Databases"]},{"name":"WooCommerce:6.9.4","description":"WooCommerce is an open-source ecommerce plugin for WordPress.","website":"https://woocommerce.com","common_platform_enumeration":"","icon":"WooCommerce.svg","categories":["Ecommerce","WordPress plugins"]},{"name":"WooCommerce PayPal Checkout Payment Gateway:2.1.3","description":"WooCommerce PayPal Checkout Payment Gateway is a WordPress plugin which allows you to securely sell your products and subscriptions online using in-context checkout.","website":"https://github.com/woocommerce/woocommerce-gateway-paypal-express-checkout","common_platform_enumeration":"","icon":"WooCommerce PayPal.png","categories":["WordPress plugins"]},{"name":"WPML:4.5.11","description":"WPML plugin makes it possible to build and run fully multilingual WordPress sites.","website":"https://wpml.org/","common_platform_enumeration":"","icon":"WPML.svg","categories":["WordPress plugins","Translation"]},{"name":"Tidio","description":"Tidio is a customer communication product. It provides multi-channel support so users can communicate with customers on the go. Live chat, messenger, or email are all supported.","website":"https://www.tidio.com","common_platform_enumeration":"","icon":"Tidio.svg","categories":["Live chat"]},{"name":"jQuery Migrate:3.3.2","description":"Query Migrate is a javascript library that allows you to preserve the compatibility of your jQuery code developed for versions of jQuery older than 1.9.","website":"https://github.com/jquery/jquery-migrate","common_platform_enumeration":"","icon":"jQuery.svg","categories":["JavaScript libraries"]}]},{"fqdn":"fonts.gstatic.com","ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2008-02-11","domain_rank":0,"first_seen":"2014-04-02T10:51:04Z","last_seen":"2026-07-26T22:19:52.505461Z","alert_count":0,"request_count":6,"received_data":3251,"sent_data":3434,"comment":"","tags":null,"fingerprints":null},{"fqdn":"code.tidio.co","ip":{"addr":"172.67.73.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2014-06-01","domain_rank":120056,"first_seen":"2014-11-27T09:26:14Z","last_seen":"2026-07-24T11:10:32.108544Z","alert_count":0,"request_count":2,"received_data":7731,"sent_data":997,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"www.googletagmanager.com","ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2011-11-11","domain_rank":283,"first_seen":"2012-10-04T01:07:32Z","last_seen":"2026-07-26T22:31:28.839046Z","alert_count":0,"request_count":1,"received_data":425911,"sent_data":488,"comment":"","tags":null,"fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]}],"files":null,"artifacts":{"windows_shortcuts":null,"files":null,"telegram":null,"pdfs":null,"clipboard":null},"sensors":{"ids":null,"analyzer":null,"urlquery":null},"javascript":{"script":[{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"ef5cf85f5319541b973cec298560e3db","sha1":"4e6b7bbc4d565b965a1db971597f340464e99577","sha256":"54354334d453444ba9c144d69eaea2b5a35d7354c511515b5d5e319404bb1a8c","sha512":"ab47f12cb8484093d5b53c17e866e3a465c669218749d05f31cb28ca3f6bbfb3281b81d9ae267a164d455a5a55221c90785a873f4f57ae2c65e25350819a06e9","ssdeep":"","tlshash":"1390047170114c34074d100d713cc3d43cf4405077433c00c07c504c0070dc34400d4c","size":42,"data":"","first_seen":"2023-03-07T01:16:43Z","last_seen":"2026-08-12T08:23:55.317045Z","times_seen":8161,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"f28cdba8b1a33fab7b4935482c683e17","sha1":"7fb92b438ae880e659636e12f78ecca1ab9dd1a9","sha256":"76d9ab1fc9999540d0f7167df3325f71fbd86160eda576cb60f285b0e65d89a9","sha512":"c362266ce59d89cbf9b965fab58daf36b03066d1e3b628c21d7108d2614a2c2ed8acf85411f8d3e3cb5d03a3bf350c9f5bf61fca2399d43e81f6e86d1149d0e3","ssdeep":"","tlshash":"dd80000c0808300080f2a020232b3fc8b3020330e0b030cc0ac3022cb0230838e0c2c0","size":32,"data":"","first_seen":"2023-03-07T01:03:05Z","last_seen":"2026-08-12T05:50:47.574964Z","times_seen":22580,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"89125ad04aa60b44b078bda9f3a1ca29","sha1":"9c277746a57e669b793154fd2a4291fbbd4b5ace","sha256":"82fdf6f7dd07c87fa7c1455e2a0029f9c18aa81ba304576d2f689d5d55480f5b","sha512":"8bc579d1bc746de32705e5ae88861ec14705bcaa47e75b6b42ac1382a6874489fbd761460770b715c16715c40ddc4b19ad343088cb4d4be90189c215994f8e99","ssdeep":"","tlshash":"96011e195e12e2dc55b2652ef13b43b879ff770730d6909da90c645d1c1ce1974226fc","size":735,"data":"","first_seen":"2023-03-07T12:56:05Z","last_seen":"2026-08-12T08:23:55.31816Z","times_seen":5600,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"966242aa728a135bf9c7d18bdb73c666","sha1":"87b97b930306933a5ee5bf11260fa4800cc54d50","sha256":"8b8745fba92fed33cd0c2598a521393c86fc46dc059212d3c6e3ea25e5e34f32","sha512":"b42aa6f61cf3a5baf4f32d7043f0b3c43f02186b12a947ee2837d88453108b9c1a445c630a2c0f21e47608be9727fbed64033e91223ed221c98bf544a0022b24","ssdeep":"","tlshash":"c8c0121d324da79d04b72514a06fa32950bb5b3575898091520ee464187ed191563a84","size":178,"data":"","first_seen":"2023-03-07T12:56:05Z","last_seen":"2026-08-11T10:33:42.849132Z","times_seen":740,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"35c642f8c119a4a540021b631e3004dc","sha1":"82d217c7f80733a1e42e6c59eb55e35652a710da","sha256":"e5d116912de510002861a5802d811952ba90ccc94682235bc27a7a5b59538584","sha512":"5fcf6f80939f0f5cb03cc730ecb7fede07de0a45c3c6ca6d3efe671f363f02868b43eb7b8970a014e8df6ea8b8444cfc5d877a6c8ec2461d17e79a67f53a9b1b","ssdeep":"","tlshash":"1db012005cc83fc371a059fc3660b97303f21230a83488401ac4d0864e02401cc48201","size":88,"data":"","first_seen":"2026-07-27T08:11:29.000204Z","last_seen":"2026-07-27T10:37:50.421215Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"4994db0d80bcd160d4d547a8152a0d93","sha1":"0ca5a27e55b01d084652fdd066e06afda203a08c","sha256":"c28dc32448ea771492f2b3a7130570dce43125ff3ff37921dda9c76440d4568e","sha512":"16a80e3ad5d773ea873a5107dda0b702b1a1fe7015e607f391f32fe28bb78a1c959f697c8013a905e20c6b1c93173dcfae9afff9159d9ecc87d8b7d6e97dd063","ssdeep":"","tlshash":"bfd02e03303a9c3a31c0078f138151e061fa678739c2c82c1c3dadf81fc02a2488026a","size":257,"data":"","first_seen":"2026-07-27T08:11:29.003172Z","last_seen":"2026-07-27T10:37:50.421754Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"c563a2d0fd15f62eb170a98d6b8b969b","sha1":"15d03c4f494379ccb589a21604c88771694e2d9d","sha256":"71d85ccc47773d265e938ce9799b8486868aa57cef738dedb2e09b858b15e8a2","sha512":"93f0e30da2dbe1de107a9592aa28f7b3ce3121af33cf347ee48a1224dc1faa46326baeded779213ce6d8870c203e3cb72e3dcc92d279a0d37fb64818b46df18d","ssdeep":"","tlshash":"a2e068ce752c58a795a3a6fb33b7952cb4662648ac51aea38d2e854e10009d6449f0dc","size":397,"data":"","first_seen":"2026-07-27T08:11:29.00572Z","last_seen":"2026-07-27T10:37:50.422327Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"fd90e00efc4816c998a4b0a86f7bfef4","sha1":"dd39996bce92b18c792424324c889e0bb0321017","sha256":"77f3ea900351a34b4efaa5797cda30d6134cdd2f313146810c7e1a141b4a74dd","sha512":"3b3e18490835fe0907829602a069a92c378fbdab4cc5a2307c6317dbb0de184c9c70688bc47929bacde29d1681cd7334d6ed527360e8908289703d7177c770ae","ssdeep":"","tlshash":"0dc02bc8210a1c7152f72702cb7ff600b4013204d8f05d32082d23448d20e03d754c54","size":151,"data":"","first_seen":"2026-07-27T08:11:29.007832Z","last_seen":"2026-07-27T10:37:50.422914Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"9c4d7369268199cfc24fe89720d0286f","sha1":"68d71bf819743e03f42dec69b0ec4d1e8e0b4dd5","sha256":"df3ea68e3e34b306ad55ecd04412e89cceac887bd123428f1a35eadcb8822b78","sha512":"d3ab41ac96185d8fc6c74a253377fabab9779d9dccd071143a56263a9400896917f07e9dc05d3e63e7e0a76de4ff06ab505257c5d2b442c8f8d2b34c0e9731e3","ssdeep":"","tlshash":"cae0f1d06f0d7c971bb1337472ba95072045624262497fc1d69dda202a1149b4827788","size":401,"data":"","first_seen":"2026-07-27T08:11:29.01Z","last_seen":"2026-07-27T10:37:50.423485Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"00fc80d67dc9f586d046349d69b0f7ea","sha1":"817e0d83001910145de683788ab935417effb157","sha256":"9820ddef4ce8f9392b79f5ea2aab848d46c5a6f0003df1d1dd12a90f2583fbf8","sha512":"f413c3a8d57c9148a073d5f6a98d14ac8da14cc7a292e02631fe5d62d663747636de52349db309cf56cbfa81ffbb4124b674af2b226972dba232926d17279546","ssdeep":"","tlshash":"b8f02b9c3c62b0233bf93639d3238fab33a2170171839a24d606cc2828648c61886d8e","size":442,"data":"","first_seen":"2026-07-27T08:11:29.011613Z","last_seen":"2026-07-27T10:37:50.424107Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"03a1fdb172dfeb2ee7e2fd974c6c30db","sha1":"6882c6b7a77bc0d476617027efb352bdb8227258","sha256":"fa26115d49a1a9b62a388d96c2cec88ff607c6b003ac42cec946b8d5d566d57a","sha512":"b729d9c0ed07575306ec950b1fbf301a0cc09f6e0e6b14655cf2f24ff4fdac2c62a9cc915b061dda89eeccebcd59c036c0275f014c3cc555b5fd4d31cd835314","ssdeep":"","tlshash":"f7c09b9cc791000dd98d0067f5b5125d1431538d637c443ed70d5d5d1255bc19750d1f","size":134,"data":"","first_seen":"2026-07-27T08:11:29.012995Z","last_seen":"2026-07-27T10:37:50.424657Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"c6ff8a4db29bd66be3703f521e7942cc","sha1":"196009373b31a6c85d714673f5302c6150a5206d","sha256":"cf647a63351d078fdffd56e5e087c68c4c53705892e033387195be0a521a3f65","sha512":"a68b97580bdbaef77b236222d8d0083c222a1e5de37b499ef71cba3fa244c2b3767670970ca651d601e9c0f5b36811d17603a9072f4c79dddd9865505bd61dbf","ssdeep":"","tlshash":"43012409b6b41a2945e3603c5d4ec81638fc49049e48eb80b0eca1968aa0e6927ddae9","size":733,"data":"","first_seen":"2026-06-18T00:53:11.934193Z","last_seen":"2026-07-27T10:37:50.425245Z","times_seen":4,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"fb6242bd54761b59f25294b070263680","sha1":"955be16253d5d62c9136385f4de0044e68cc3060","sha256":"cba5b2f9b87d742a37c47170037ae776e2b9b72eb910d55aafe2c057bff7dcae","sha512":"22730b9c6a3cb62e654a4b374e72fb3d17c88538bc212ac52daac07efcd4be36241b3387ad0456ca2663310b4a73048c2dd505a52753e5fa38e94d6f9af7b39a","ssdeep":"","tlshash":"f501dd8d98437a3a2a0b71e5763ea11038b8005a8816e819f94dc690af64e886d0bded","size":667,"data":"","first_seen":"2026-07-27T08:11:29.0291Z","last_seen":"2026-07-27T10:37:50.425751Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"b396da6e5fab47a082d93eef4cd10f38","sha1":"345cecc4abe2a70a3aedbc4b01ca102b1a1b8ddf","sha256":"25f680ab68433b70daa67d2703118549cd028ccf9e6d8a94c7ba64834fed3abd","sha512":"6717a798e579f0d712dec87b81046530f19417507a26ab4b8cdf7fc22cc9535cd603b3e838c892d7aae6ba4256ff2e1ab8e598cd3bfb1e53347e36fca689471a","ssdeep":"","tlshash":"0ed0954b294c05153bab24542536071c60af051214121c31c0dedc549038fe90a2a11f","size":247,"data":"","first_seen":"2026-07-27T08:11:29.03156Z","last_seen":"2026-07-27T10:37:50.42626Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"788fdd06e9636e7723dd5237d97296f4","sha1":"e990f6c015792d37039dd9b6694180afbad4783b","sha256":"858511e4e4172bb8db61b6900da4062bff55aea36448e980c407087059caabeb","sha512":"43a3312872939e2c8a51cb41fa8735270112e4cffdb458db677f5d21ee1b3b60fdb5870867b85dab4c9948286b9dc8ffbc86a2984a3fe0fb82da1928d363e7b3","ssdeep":"","tlshash":"30f0c9d6ab5c0821a7aa0316c62938c8d0ae003525216a63fc1a89f4b1a0a9c33be258","size":518,"data":"","first_seen":"2026-07-27T08:11:29.035161Z","last_seen":"2026-07-27T10:37:50.42676Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"d0f31db2a16036c93f5bad933f84b036","sha1":"cb2bf1433bc25de625ff5ca5631583b6356dc71f","sha256":"d48f843d51fba6c50cf9943ff6ea7681910e76e0f20a4e0f64d8c3599a13c9d3","sha512":"dda0cb8f307a055da24f56e320488c13e5d4b43717e0b2d5d75b6d02b882e29a91786420ea6f76dceae035dac21956dfd64c2ea203206cf25e7b22e4ee39a40a","ssdeep":"","tlshash":"a05194ea222ecdfb54af25a9493e231b60fea5d496cd0cc3f9ed4c28cb409604113d19","size":2789,"data":"","first_seen":"2026-07-27T08:11:29.036876Z","last_seen":"2026-07-27T10:37:50.427306Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"d54a821c4848222c68e8098be777a970","sha1":"2cc724331743c835bcd2f0c1c2490b508ce8ee24","sha256":"f8d2649eb2889b67c9d2681d4ab8257dd697dc11c1421673b32d088cafe81dd2","sha512":"3c6d0af6078448b5a865d106bebf2abd496c05b5707733f10b0eb29127f0db9f37162bd076bbfeff74595898edba5264b0b53d149986df679ef1899a52b49a96","ssdeep":"","tlshash":"6dc04c6b774c19e5124739d01f9f62d53839918876517c118caca905d49089a6d06f9c","size":147,"data":"","first_seen":"2023-03-07T01:02:44Z","last_seen":"2026-08-12T08:26:23.380476Z","times_seen":19946,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"c747cd41ee3980064bde7a47220887f4","sha1":"c2c5bb8df616cb08fb8c8d96c94f0b8f99078af7","sha256":"5e4a6fdae4ad802049648d07ca5badfb1a8dde678e18bf9d087d97fd0f45b765","sha512":"dabbdd218a4c71acc9dce8072ea7f45f10d56ad7d8b5068ba9d8558de11901d585e808c12eae6a8422c9315b5333d0ecee45e7fb7047bc06bd55e3de9fc20389","ssdeep":"","tlshash":"7e21afbf7b730db25e1354486f6d5888357520077445f920786cdc816f3cee0a4a579c","size":1150,"data":"","first_seen":"2025-07-10T19:27:24.869052Z","last_seen":"2026-07-27T10:37:50.428446Z","times_seen":5,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"5af04d5639bfea6ccaf28ea1a1e39981","sha1":"7fa471483da9d29b7ae1bf4a2fd9116b91aac10f","sha256":"9981fe91da31d0d23a5951155847954a53df17a2ed35bda9abe477db0d1429dc","sha512":"1b8878de214b0d3b8d163ef1ebf60ec101a76ec7442d699faa2b9702e4e1baef32cb4ce3ab6bfd1547a54a47e364ac5014dbccf256309c0cb5315780ff91a06a","ssdeep":"","tlshash":"fd117b0c74fb60b2407b753f56afa4083436a4072108ce50796c5fe09f912259bf5eb8","size":929,"data":"","first_seen":"2025-09-26T16:56:14.957997Z","last_seen":"2026-07-27T10:37:50.429054Z","times_seen":7,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"b019171658e83c687b44aca708ed8bd5","sha1":"607f3657b777771446b3f21994b79211e2a62afc","sha256":"29cf7bd45e8fedc946a041e2b0c82118e7234dacf8236be83f47e11ee01a25f9","sha512":"84968d08d4dd3a54788e11cb00d4cab3c5e35287c014e35b22c0afe795c113ceb4f552ededf63b97e51a455244e1e01acbde7b1c56ee81727c83bf53e45a6a3f","ssdeep":"","tlshash":"63e0201bd0772b87d0574dd494cd5523abc01bffe005d610abc685c00add47755d534d","size":358,"data":"","first_seen":"2026-07-27T08:11:29.046056Z","last_seen":"2026-07-27T10:37:50.42956Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"92d78f0e006e3f6f92d83146c0c18d09","sha1":"0a1d02c3ef3fc4612337b3653b6db587f7bbea9a","sha256":"1f127b3d4d5bb4974671da14b1fad6afcde69ec6b37041cde31502cea0d41634","sha512":"2ed2c02f0fce2345c7b19af7b0ccba325702bf7c8de8223dfb55f1cd3b8d0a251c3a8b12e4e5f83f8f5ac3cd2c124a4cea99fe66ba9ec0908a5ef1cf9655ca93","ssdeep":"","tlshash":"82d022144a360ddbb1c279e028e06aa352d323403a2cce000fc8fd880e4b20eea1930b","size":198,"data":"","first_seen":"2026-07-27T08:11:29.049152Z","last_seen":"2026-07-27T10:37:50.430123Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"77a63ff83a568caf9449cb827b98e0e7","sha1":"bbaf80031955c311fb17b3560fb9b489cbbcafe9","sha256":"7d948facbbfc094c6a7aba4748cc4476fa6f48e22ad81e2e1260036d0aeef1bd","sha512":"70b9b4273ccfef24823ab1d795c42cac322fb0dff790ef882f8de2a73bc5a0552eafefbc9fe9bc2eea78ea4a5751301802c319ebb3aec3d4dd2e08d433149ef9","ssdeep":"","tlshash":"fc3142b544455e321fb344c8a86ebb02dcea0175f7c48c0cebdd545d13cae99616370c","size":1494,"data":"","first_seen":"2026-07-27T08:11:29.052383Z","last_seen":"2026-07-27T10:37:50.430688Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"c0f8fe8a1e41018cb7051fa46a8ef944","sha1":"9221354dac9bff210537ef09f46cdbfd9dfd997b","sha256":"7cdfb0f8ec63a9e153cc07ebeaa1edc5d6ce7998876d0b6d9ea14e914ce731cc","sha512":"201fe3306d85d679b5e7dce51b5ce2d8c1b9706698269224025aa9906111dfc10492efff8069a5e381a7b3577abdb1703bb6227664ff5b225b8114215a429c1f","ssdeep":"","tlshash":"a7a01202208139a1115340b031c9101275d69238500455121c8bc2154e30480c0d1990","size":83,"data":"","first_seen":"2024-08-21T04:24:14.537415Z","last_seen":"2026-08-08T20:00:04.597783Z","times_seen":51,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"facc5653208e5a8fed129e122532e6d6","sha1":"9349d89d616d3b47266af5a46ee4e1d266362665","sha256":"5c3290fc4cc65642b3fba01dc284caabdcb841b780bfd6280a3a0da4de4eb56f","sha512":"b65c1abd4586e5dbfdf94fe5bfcf5d0299f0e9517e8341017402dfe4c6438fc98301272f1db8b1f2f06332c40202661763132881e66462d2ab809fb6305a759f","ssdeep":"","tlshash":"82c0129143b8673e16e46158383ee45abfe135259265054169603088233f2ca02a0644","size":174,"data":"","first_seen":"2026-07-27T08:11:29.054733Z","last_seen":"2026-07-27T10:37:50.431816Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"79b4956b7ec478ec10244b5e2d33ac7d","sha1":"a46025b9d05e3df30d610a8aef14f392c7058dc9","sha256":"029e0a2e809fd6b5dbe76abe8b7a74936be306c9a8c27c814c4d44aa54623300","sha512":"217f86fee871fa36eca4f25830e3917c7bf57a681140b135c508aa32f2a1e3eff5a80661f3b5ba46747d0c305af10b658d207f449550f3d417d9683216feea8f","ssdeep":"192:JrprDNvD66fPP/+I6OP1fQP0OIr96DB6MHXcwr1RF:JrprxG6fPP3P1fQMOIsDsMMS","tlshash":"8232c59d71a6b4624eb735b8b03f939f71b605d9250d8940d26cc9f6782c84ec22bf68","size":11224,"data":"","first_seen":"2023-03-07T01:02:02Z","last_seen":"2026-08-12T08:11:51.592781Z","times_seen":86667,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/affiliate-wp/assets/js/tracking.min.js?ver=2.9.6.1","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"1f693895db157c862dc884377aeeb660","sha1":"8c3af3e1079b1df0acf6da2e38afede83d605d99","sha256":"9c7bb881d50daf10495cb74da00bd5530559e1d819b85a29db561f3e93762f05","sha512":"e3b330c7584b6244f873a261ed22f23c762183f92c60aa3d4c4e643d60f1718c7dea7cbee4e3d9354e57c8561f7186c0c6b3b6acafff17502471d29e8a198b98","ssdeep":"48:kM7H+ypasQpWZ9pVp44Mp1TrZvdqiwLiZuP2+/xF0FuezWr4QysB4n6+OBRZ86jW:V+b4OuP2+NBOHv6/gj","tlshash":"8781204b789a843fbed2155d5c7f0a7a203e9b9776ebd588cd20a5b80e10f0b1d21c1b","size":4182,"data":"","first_seen":"2023-03-07T01:19:17Z","last_seen":"2026-07-27T10:37:50.411249Z","times_seen":205,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"eventHandler","is_inline":false,"md5":"43e28c5553d54ed2964bd5147521769b","sha1":"0a2b8c3db330a47aa7b9195e6dfdf944adb9240d","sha256":"d63026c985dc46aeb316574b7bf1828080c906238e35d5e34cb80414c0e70d23","sha512":"6dda085e4196167cf64287cb675c05b09bdaa291decebd1bea2b52ccdbd380de5875dc233fa3d439559413693f1e7974f485d60a2c1541bf62a8887bf5ff9811","ssdeep":"","tlshash":"1b80000c0a20c0882a00af00e000c202a0c2200f0220238ce823bce2a83c888808fea0","size":38,"data":"","first_seen":"2023-04-10T16:02:06Z","last_seen":"2026-08-12T08:40:23.746284Z","times_seen":191481,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/woocommerce/assets/js/jquery-cookie/jquery.cookie.min.js?ver=1.4.1-wc.6.9.4","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"5dc9897cc1411b13f193806a5fcb498c","sha1":"d0460d4aed2af636761b80ea87f2a075b6f79de8","sha256":"fff09637c3bdbb4988240901f1ae70e3245cbc4ba4aff028fb1053c7064b0c6c","sha512":"9c1146c296d5dbb11fde5e776aeb99f2b00f5168cceaf040cbfce53dd0ad32ccc0907c9e3da948708b08b31f6d1987361467aa5ee71cef39d5c540f82ba27a92","ssdeep":"","tlshash":"2e2144943040b449953a2335233f69af3074ea3771de505ccb76e5a42db0d4316a3fba","size":1392,"data":"","first_seen":"2023-03-07T01:19:17Z","last_seen":"2026-08-09T14:54:28.005312Z","times_seen":434,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-includes/js/jquery/jquery.min.js?ver=3.6.0","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"02dd5d04add4759122013c5ab4dc5cc2","sha1":"a45a56e396ac549b4ff39b696ce9e0c16a7612de","sha256":"bd4de6a3fc0fb68d6f76ba7b93514b96a92e585c295b5351c31ad92a4b0777ea","sha512":"04690d9875e98f5ae6bf94f5c71b7a0177b374bc09609a0f58312e1c337348749a40e07fe226737dc248bd8fe2f6a489071258619affc7f1df644e4255159615","ssdeep":"1536:DjExXUqJnxDjoXEZxkMV4QYSt0zvDL6gP3h8cApwEIOzVTB/UjPazMdLiX4mQ1vM:DIh8GgP3hujzwbhd3XvSiDQ47GKq","tlshash":"e99309ddb2c6702257a720ba007f510bf236199d6c4d8450f169d8eabc78a4e827bf7d","size":89521,"data":"","first_seen":"2023-03-07T01:02:02Z","last_seen":"2026-08-12T08:11:51.614031Z","times_seen":60292,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/chaty/js/cht-front-script.min.js?ver=1627838794","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"ab66f25aa55e87ee2a747e6f07397c97","sha1":"3da6bd0899a09d6b3d9cafe62fa250ddfe2f3439","sha256":"322998bdbd9777b10d8a706f97ed4f446e5b238e86c37649be7deb54096f5888","sha512":"3c09169b76d8b4f18d76c7e22f086ea7d98b9f3a1e710e375214cbfb3d9999b8d36227884b58013ae67d51b5181f87819d139e219aa655ddee7399a7f05b969d","ssdeep":"768:Ohi/IfEZTTPdy8v5+dwvPMoY/K3fmot312Wg:On+Y/K3P4","tlshash":"93438940e21594bf01ff22a565fe71240139d1eadc1489b2b9f9e0f89579cfaf026f62","size":55160,"data":"","first_seen":"2023-03-07T12:01:36Z","last_seen":"2026-07-27T10:37:50.415531Z","times_seen":69,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"log","text":"JQMIGRATE: Migrate is installed, version 3.3.2","filename":"https://equinuxglobalassets.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2","line_number":2,"column_number":709}]},"http":[{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/sitepress-multilingual-cms/res/flags/en.png","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.973Z","timestamp":1785148618973,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /wp-content/plugins/sitepress-multilingual-cms/res/flags/en.png HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/img2.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.976Z","timestamp":1785148618976,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /img2.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfChc4.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.462Z","timestamp":1785148619462,"http_version":"HTTP/3","security_state":"","security_info":null,"request":{"raw":"GET /s/roboto/v30/KFOlCnqEu92Fr1MmWUlfChc4.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://equinuxglobalassets.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 22580\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:49:07 GMT\r\nexpires: Thu, 22 Jul 2027 13:49:07 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Wed, 11 May 2022 19:24:59 GMT\r\ncontent-type: font/woff2\r\nage: 420472\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"font/woff2","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-includes/js/mediaelement/wp-mediaelement.min.css?ver=6.0.2","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.591Z","timestamp":1785148618591,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-includes/js/mediaelement/wp-mediaelement.min.css?ver=6.0.2 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 4186\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:10 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":4186,"size_decoded":4395,"mime_type":"text/css","magic":"ASCII text, with very long lines (4186), with no line terminators","md5":"ea958276b7de454bd3c2873f0dc47e5f","sha1":"b143f6e8e8f79d8f104c26b0057ef5514d763219","sha256":"2e10d353ff038c2cad3492fc17801af3e6ef2669c9e9713bdb78b1dcb104c4fe","sha512":"2d40a1e713355eff88fa3bbf5471b4db5acc48fa2b978a555c034f2e5c7f131fcaf48e849d5d048df9d5dae068c4b6467a97b1dde99115e6b32f57e928569fc1","ssdeep":"48:wFfAeWkkqEsKO+TBxaBIIj+NqUFQW76d7JrOv2bN:wueWkkrLoI7U","tlshash":"d9810c1084149d2cf4eab33766cec75db43ad747fe75e7b86936e2b8c098a842073484","first_seen":"2023-04-05T04:06:46Z","last_seen":"2026-08-12T08:45:13.518592Z","times_seen":92684,"resource_available":false,"data":"Lm1lanMtY29udGFpbmVye2NsZWFyOmJvdGg7bWF4LXdpZHRoOjEwMCV9Lm1lanMtY29udGFpbmVyICp7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLEFyaWFsfS5tZWpzLWNvbnRhaW5lciwubWVqcy1jb250YWluZXIgLm1lanMtY29udHJvbHMsLm1lanMtZW1iZWQsLm1lanMtZW1iZWQgYm9keXtiYWNrZ3JvdW5kOiMyMjJ9Lm1lanMtdGltZXtmb250LXdlaWdodDo0MDA7d29yZC13cmFwOm5vcm1hbH0ubWVqcy1jb250cm9scyBhLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVye2Rpc3BsYXk6dGFibGV9Lm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLWN1cnJlbnQsLm1lanMtY29udHJvbHMgLm1lanMtdGltZS1yYWlsIC5tZWpzLXRpbWUtbG9hZGVke2JhY2tncm91bmQ6I2ZmZn0ubWVqcy1jb250cm9scyAubWVqcy10aW1lLXJhaWwgLm1lanMtdGltZS1jdXJyZW50e2JhY2tncm91bmQ6IzAwNzNhYX0ubWVqcy1jb250cm9scyAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWwsLm1lanMtY29udHJvbHMgLm1lanMtdGltZS1yYWlsIC5tZWpzLXRpbWUtdG90YWx7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4zMyl9Lm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLWN1cnJlbnQsLm1lanMtY29udHJvbHMgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLXRvdGFsLC5tZWpzLWNvbnRyb2xzIC5tZWpzLXRpbWUtcmFpbCBzcGFue2JvcmRlci1yYWRpdXM6MH0ubWVqcy1vdmVybGF5LWxvYWRpbmd7YmFja2dyb3VuZDowIDB9Lm1lanMtY29udHJvbHMgYnV0dG9uOmhvdmVye2JvcmRlcjpub25lOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZX0ubWUtY2Fubm90cGxheXt3aWR0aDphdXRvIWltcG9ydGFudH0ubWVkaWEtZW1iZWQtZGV0YWlscyAud3AtYXVkaW8tc2hvcnRjb2Rle2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDo0MDBweH0uYXVkaW8tZGV0YWlscyAuZW1iZWQtbWVkaWEtc2V0dGluZ3N7b3ZlcmZsb3c6dmlzaWJsZX0ubWVkaWEtZW1iZWQtZGV0YWlscyAuZW1iZWQtbWVkaWEtc2V0dGluZ3MgLnNldHRpbmcgc3Bhbjpub3QoLmJ1dHRvbi1ncm91cCl7bWF4LXdpZHRoOjQwMHB4O3dpZHRoOmF1dG99Lm1lZGlhLWVtYmVkLWRldGFpbHMgLmVtYmVkLW1lZGlhLXNldHRpbmdzIC5jaGVja2JveC1zZXR0aW5nIHNwYW57ZGlzcGxheTppbmxpbmUtYmxvY2t9Lm1lZGlhLWVtYmVkLWRldGFpbHMgLmVtYmVkLW1lZGlhLXNldHRpbmdze3BhZGRpbmctdG9wOjA7dG9wOjI4cHh9Lm1lZGlhLWVtYmVkLWRldGFpbHMgLmluc3RydWN0aW9uc3twYWRkaW5nOjE2cHggMDttYXgtd2lkdGg6NjAwcHh9Lm1lZGlhLWVtYmVkLWRldGFpbHMgLnNldHRpbmcgLnJlbW92ZS1zZXR0aW5nLC5tZWRpYS1lbWJlZC1kZXRhaWxzIC5zZXR0aW5nIHB7Y29sb3I6I2EwMDtmb250LXNpemU6MTBweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lm1lZGlhLWVtYmVkLWRldGFpbHMgLnNldHRpbmcgLnJlbW92ZS1zZXR0aW5ne3BhZGRpbmc6NXB4IDB9Lm1lZGlhLWVtYmVkLWRldGFpbHMgLnNldHRpbmcgYTpob3Zlcntjb2xvcjojZGMzMjMyfS5tZWRpYS1lbWJlZC1kZXRhaWxzIC5lbWJlZC1tZWRpYS1zZXR0aW5ncyAuY2hlY2tib3gtc2V0dGluZ3tmbG9hdDpub25lO21hcmdpbjowIDAgMTBweH0ud3AtdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99LndwX2F0dGFjaG1lbnRfaG9sZGVyIC53cC1hdWRpby1zaG9ydGNvZGUsLndwX2F0dGFjaG1lbnRfaG9sZGVyIC53cC12aWRlb3ttYXJnaW4tdG9wOjE4cHh9LndwLXZpZGVvLXNob3J0Y29kZSB2aWRlbyx2aWRlby53cC12aWRlby1zaG9ydGNvZGV7bWF4LXdpZHRoOjEwMCU7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnZpZGVvLWRldGFpbHMgLndwLXZpZGVvLWhvbGRlcnt3aWR0aDoxMDAlO21heC13aWR0aDo2NDBweH0ud3AtcGxheWxpc3R7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO3BhZGRpbmc6MTBweDttYXJnaW46MTJweCAwIDE4cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MS41fS53cC1hZG1pbiAud3AtcGxheWxpc3R7bWFyZ2luOjAgMCAxOHB4fS53cC1wbGF5bGlzdCB2aWRlb3tkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MTAwJX0ud3AtcGxheWxpc3QgYXVkaW97ZGlzcGxheTpub25lO21heC13aWR0aDoxMDAlO3dpZHRoOjQwMHB4fS53cC1wbGF5bGlzdCAubWVqcy1jb250YWluZXJ7bWFyZ2luOjA7bWF4LXdpZHRoOjEwMCV9LndwLXBsYXlsaXN0IC5tZWpzLWNvbnRyb2xzIC5tZWpzLWJ1dHRvbiBidXR0b257b3V0bGluZTowfS53cC1wbGF5bGlzdC1saWdodHtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzAwMH0ud3AtcGxheWxpc3QtZGFya3tjb2xvcjojZmZmO2JhY2tncm91bmQ6IzAwMH0ud3AtcGxheWxpc3QtY2FwdGlvbntkaXNwbGF5OmJsb2NrO21heC13aWR0aDo4OCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNX0ud3AtcGxheWxpc3QtaXRlbSAud3AtcGxheWxpc3QtY2FwdGlvbnt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjojMDAwO21heC13aWR0aDotd2Via2l0LWNhbGMoMTAwJSAtIDQwcHgpO21heC13aWR0aDpjYWxjKDEwMCUgLSA0MHB4KX0ud3AtcGxheWxpc3QtaXRlbS1tZXRhe2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MS41fS53cC1wbGF5bGlzdC1pdGVtLXRpdGxle2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNX0ud3AtcGxheWxpc3QtaXRlbS1hbGJ1bXtmb250LXN0eWxlOml0YWxpYztvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LndwLXBsYXlsaXN0LWl0ZW0tYXJ0aXN0e2ZvbnQtc2l6ZToxMnB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ud3AtcGxheWxpc3QtaXRlbS1sZW5ndGh7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6M3B4O3RvcDowO2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNX0ucnRsIC53cC1wbGF5bGlzdC1pdGVtLWxlbmd0aHtsZWZ0OjNweDtyaWdodDphdXRvfS53cC1wbGF5bGlzdC10cmFja3N7bWFyZ2luLXRvcDoxMHB4fS53cC1wbGF5bGlzdC1pdGVte3Bvc2l0aW9uOnJlbGF0aXZlO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MCAzcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2NjY30ud3AtcGxheWxpc3QtaXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206MH0ud3AtcGxheWxpc3QtbGlnaHQgLndwLXBsYXlsaXN0LWNhcHRpb257Y29sb3I6IzMzM30ud3AtcGxheWxpc3QtZGFyayAud3AtcGxheWxpc3QtY2FwdGlvbntjb2xvcjojZGRkfS53cC1wbGF5bGlzdC1wbGF5aW5ne2ZvbnQtd2VpZ2h0OjcwMDtiYWNrZ3JvdW5kOiNmN2Y3Zjd9LndwLXBsYXlsaXN0LWxpZ2h0IC53cC1wbGF5bGlzdC1wbGF5aW5ne2JhY2tncm91bmQ6I2ZmZjtjb2xvcjojMDAwfS53cC1wbGF5bGlzdC1kYXJrIC53cC1wbGF5bGlzdC1wbGF5aW5ne2JhY2tncm91bmQ6IzAwMDtjb2xvcjojZmZmfS53cC1wbGF5bGlzdC1jdXJyZW50LWl0ZW17b3ZlcmZsb3c6aGlkZGVuO21hcmdpbi1ib3R0b206MTBweDtoZWlnaHQ6NjBweH0ud3AtcGxheWxpc3QgLndwLXBsYXlsaXN0LWN1cnJlbnQtaXRlbSBpbWd7ZmxvYXQ6bGVmdDttYXgtd2lkdGg6NjBweDtoZWlnaHQ6YXV0bzttYXJnaW4tcmlnaHQ6MTBweDtwYWRkaW5nOjA7Ym9yZGVyOjB9LnJ0bCAud3AtcGxheWxpc3QgLndwLXBsYXlsaXN0LWN1cnJlbnQtaXRlbSBpbWd7ZmxvYXQ6cmlnaHQ7bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6MH0ud3AtcGxheWxpc3QtY3VycmVudC1pdGVtIC53cC1wbGF5bGlzdC1pdGVtLWFydGlzdCwud3AtcGxheWxpc3QtY3VycmVudC1pdGVtIC53cC1wbGF5bGlzdC1pdGVtLXRpdGxle292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ud3AtYXVkaW8tcGxheWxpc3QgLm1lLWNhbm5vdHBsYXkgc3BhbntwYWRkaW5nOjVweCAxNXB4fQ=="}},"time_used":287,"timings":{"blocked":-1,"dns":0,"connect":92,"send":0,"wait":95,"receive":0,"ssl":99},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/woo-gutenberg-products-block/build/wc-blocks-style.css?ver=8.6.0","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.593Z","timestamp":1785148618593,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/woo-gutenberg-products-block/build/wc-blocks-style.css?ver=8.6.0 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 233665\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:12 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":233665,"size_decoded":233876,"mime_type":"text/css","magic":"Unicode text, UTF-8 text, with very long lines (65527), with no line terminators","md5":"81b96feb8bed4f875265c6a60c92c59e","sha1":"c5953d2fcc67c3a9c928f5a660281e8424ec5104","sha256":"80283ed9168c64116576d113d854247cb5c162c51a61689a0ead596adb246ecd","sha512":"f3ad98d9fa4433af901b76701d9930628f67aa56c47a0c8f7b333daa6300fb8832178d8885bf8d01fd7be7c27b7eeca99b1a5042e438e68309a750093fd41ad5","ssdeep":"768:v5ZEkFkLOrUNR1S6MNhV/Q+06jSV3CwVZKk2mSggHJGyWM444n0f+lRWlOYMabKI:mf6Y25NWx4dURWlOYMWICaaKq","tlshash":"dd34fe7153301ce928d68e254fb1ba8335f49281cb8305ebd547d89863cea990ee77db","first_seen":"2026-07-27T08:11:28.911535Z","last_seen":"2026-07-27T10:37:50.416116Z","times_seen":3,"resource_available":false,"data":"LndjLWJsb2NrLWxpbmstYnV0dG9ue2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDtib3gtc2hhZG93Om5vbmU7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OmlubGluZTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MDtwYWRkaW5nOjA7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LXNoYWRvdzpub25lO3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LndjLWJsb2NrLWxpbmstYnV0dG9uLC53Yy1ibG9jay1saW5rLWJ1dHRvbjphY3RpdmUsLndjLWJsb2NrLWxpbmstYnV0dG9uOmZvY3VzLC53Yy1ibG9jay1saW5rLWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS53Yy1ibG9jay1zdXNwZW5zZS1wbGFjZWhvbGRlcntiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1zdXNwZW5zZS1wbGFjZWhvbGRlcj4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1zdXNwZW5zZS1wbGFjZWhvbGRlcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1zdXNwZW5zZS1wbGFjZWhvbGRlcnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stc3VzcGVuc2UtcGxhY2Vob2xkZXI6YmVmb3Jle2NvbnRlbnQ6IsKgIn0ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2V7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWRlY29yYXRpb246bm9uZX0ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgYXtib3JkZXI6MDtib3gtc2hhZG93Om5vbmU7b3V0bGluZTowO3RleHQtZGVjb3JhdGlvbjpub25lfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1pbWFnZSBpbWd7aGVpZ2h0OmF1dG87bWF4LXdpZHRoOjEwMCU7d2lkdGg6YXV0b30ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgaW1nW2hpZGRlbl17ZGlzcGxheTpub25lfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1pbWFnZSBpbWdbYWx0PSIiXXtib3JkZXI6MXB4IHNvbGlkICNmMmYyZjJ9LmVkaXQtcG9zdC12aXN1YWwtZWRpdG9yIC5lZGl0b3ItYmxvY2stbGlzdF9fYmxvY2sgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtdGl0bGUsLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC10aXRsZSwud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC10aXRsZXtjb2xvcjppbmhlcml0O2Rpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MS4yO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1wcmljZXtkaXNwbGF5OmJsb2NrfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXByaWNlIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXByaWNlX19yZWd1bGFye21hcmdpbi1yaWdodDouNWVtfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWFkZC10by1jYXJ0LndwLWJsb2NrLWJ1dHRvbnt3aGl0ZS1zcGFjZTpub3JtYWw7d29yZC1icmVhazpicmVhay13b3JkfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWFkZC10by1jYXJ0LndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5re2Rpc3BsYXk6aW5saW5lLWZsZXg7Zm9udC1zaXplOjFlbTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjowIGF1dG8haW1wb3J0YW50O3BhZGRpbmc6LjVlbSAxZW07dGV4dC1hbGlnbjpjZW50ZXI7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5sb2FkaW5ne29wYWNpdHk6LjI1fS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWFkZC10by1jYXJ0LndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmFkZGVkOmFmdGVye2NvbnRlbnQ6Iu6AlyI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6V29vQ29tbWVyY2U7aGVpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6LjVlbTt3aWR0aDphdXRvfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWFkZC10by1jYXJ0LndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmxvYWRpbmc6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246c3BpbiAycyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOnNwaW4gMnMgbGluZWFyIGluZmluaXRlO2NvbnRlbnQ6Iu6AsSI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6V29vQ29tbWVyY2U7aGVpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6LjVlbTt3aWR0aDphdXRvfS5oYXMtNS1jb2x1bW5zOm5vdCguYWxpZ25mdWxsKSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazphZnRlciwuaGFzLTYtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazphZnRlciwuaGFzLTctY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazphZnRlciwuaGFzLTgtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazphZnRlciwuaGFzLTktY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazphZnRlcntjb250ZW50OiIiO21hcmdpbjowfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXJhdGluZ3tjb2xvcjojMDAwO2Rpc3BsYXk6YmxvY2t9LndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5nIC5zdGFyLXJhdGluZywud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1yYXRpbmcgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5nX19zdGFyc3tmb250LWZhbWlseTpzdGFyO2ZvbnQtc2l6ZToxZW07Zm9udC13ZWlnaHQ6NDAwO2hlaWdodDoxLjYxOGVtO2xpbmUtaGVpZ2h0OjEuNjE4O21hcmdpbjowIGF1dG87b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246bGVmdDt3aWR0aDo1LjNlbX0ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1yYXRpbmcgLnN0YXItcmF0aW5nOmJlZm9yZSwud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1yYXRpbmcgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5nX19zdGFyczpiZWZvcmV7Y29sb3I6I2FhYTtjb250ZW50OiJTU1NTUyI7bGVmdDowO29wYWNpdHk6LjU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt3aGl0ZS1zcGFjZTpub3dyYXB9LndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5nIC5zdGFyLXJhdGluZyBzcGFuLC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXJhdGluZyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1yYXRpbmdfX3N0YXJzIHNwYW57bGVmdDowO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLXRvcDoxLjVlbTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXJhdGluZyAuc3Rhci1yYXRpbmcgc3BhbjpiZWZvcmUsLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5nIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXJhdGluZ19fc3RhcnMgc3BhbjpiZWZvcmV7Y29sb3I6aW5oZXJpdDtjb250ZW50OiJTU1NTUyI7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2hpdGUtc3BhY2U6bm93cmFwfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0LW9uc2FsZXtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjNDM0NTRiO2JvcmRlci1yYWRpdXM6M3B4O2NvbG9yOiM0MzQ1NGI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOi44NzVlbTtmb250LXdlaWdodDo2MDA7cGFkZGluZzouMjVlbSAuNzVlbTtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7d2lkdGg6YXV0bzt6LWluZGV4Ojl9LndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2U6bm90KC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2UpLC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXRpdGxle21hcmdpbjowIDAgMTJweH0ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydCwud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1vbnNhbGUsLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcHJpY2UsLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5ne21hcmdpbjowIGF1dG8gMTJweH0udGhlbWUtdHdlbnR5c2l4dGVlbiAud2MtYmxvY2stZ3JpZCAucHJpY2UgaW5ze2NvbG9yOiM3N2E0NjR9LnRoZW1lLXR3ZW50eW5pbmV0ZWVuIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZvbnQtc2l6ZTouODg4ODllbX0udGhlbWUtdHdlbnR5bmluZXRlZW4gLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdlLC50aGVtZS10d2VudHluaW5ldGVlbiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRpdGxlLC50aGVtZS10d2VudHluaW5ldGVlbiAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1vbnNhbGUsLnRoZW1lLXR3ZW50eW5pbmV0ZWVuIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXRpdGxle2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFNlZ29lIFVJLFJvYm90byxPeHlnZW4sVWJ1bnR1LENhbnRhcmVsbCxGaXJhIFNhbnMsRHJvaWQgU2FucyxIZWx2ZXRpY2EgTmV1ZSxzYW5zLXNlcmlmfS50aGVtZS10d2VudHluaW5ldGVlbiAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC10aXRsZTpiZWZvcmV7ZGlzcGxheTpub25lfS50aGVtZS10d2VudHluaW5ldGVlbiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXNhbGUtYmFkZ2UsLnRoZW1lLXR3ZW50eW5pbmV0ZWVuIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LW9uc2FsZXtsaW5lLWhlaWdodDoxfS50aGVtZS10d2VudHluaW5ldGVlbiAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpub3QoLmhhcy10ZXh0LWNvbG9yKXtjb2xvcjojZmZmfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtbGlua3tjb2xvcjojMDAwfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC10aXRsZSwudGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXRpdGxle2NvbG9yOiNjZDI2NTM7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxibGlua21hY3N5c3RlbWZvbnQsSGVsdmV0aWNhIE5ldWUsaGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFlbX0udGhlbWUtdHdlbnR5dHdlbnR5IC53cC1ibG9jay1jb2x1bW5zIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtdGl0bGV7bWFyZ2luLXRvcDowfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZSAud29vY29tbWVyY2UtUHJpY2UtYW1vdW50LC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZV9fdmFsdWUsLnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1wcmljZSAud29vY29tbWVyY2UtUHJpY2UtYW1vdW50LC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcHJpY2VfX3ZhbHVle2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sYmxpbmttYWNzeXN0ZW1mb250LEhlbHZldGljYSBOZXVlLGhlbHZldGljYSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouOWVtfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZSBkZWwsLnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1wcmljZSBkZWx7b3BhY2l0eTouNX0udGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcHJpY2UgaW5zLC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcHJpY2UgaW5ze3RleHQtZGVjb3JhdGlvbjpub25lfS50aGVtZS10d2VudHl0d2VudHkgLnN0YXItcmF0aW5nLC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5ne2ZvbnQtc2l6ZTouN2VtfS50aGVtZS10d2VudHl0d2VudHkgLnN0YXItcmF0aW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcmF0aW5nX19zdGFycywudGhlbWUtdHdlbnR5dHdlbnR5IC5zdGFyLXJhdGluZyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1yYXRpbmdfX3N0YXJzLC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcmF0aW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcmF0aW5nX19zdGFycywudGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXJhdGluZyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1yYXRpbmdfX3N0YXJze2xpbmUtaGVpZ2h0OjF9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbj4ud3AtYmxvY2stYnV0dG9uX19saW5rLC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtYWRkLXRvLWNhcnQ+LndwLWJsb2NrLWJ1dHRvbl9fbGlua3tmb250LWZhbWlseTotYXBwbGUtc3lzdGVtLGJsaW5rbWFjc3lzdGVtZm9udCxIZWx2ZXRpY2EgTmV1ZSxoZWx2ZXRpY2Esc2Fucy1zZXJpZn0udGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3Qtc2FsZS1iYWRnZSwudGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1vbnNhbGV7YmFja2dyb3VuZDojY2QyNjUzO2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxibGlua21hY3N5c3RlbWZvbnQsSGVsdmV0aWNhIE5ldWUsaGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDJlbTtsaW5lLWhlaWdodDoxLjI7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3Qtc2FsZS1iYWRnZXtwb3NpdGlvbjpzdGF0aWN9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdle3Bvc2l0aW9uOmFic29sdXRlfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LW9uc2FsZTpub3QoLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdlKXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo0cHg7dG9wOjRweDt6LWluZGV4OjF9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX3RpdGxlLC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX3RpdGxlLC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLXByaWNlLWZpbHRlcl9fdGl0bGUsLnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stc3RvY2stZmlsdGVyX190aXRsZXtmb250LXNpemU6MWVtfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fY2xlYXItYWxse2ZvbnQtc2l6ZTouNzVlbX0udGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWFkZC10by1jYXJ0LndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5re2ZvbnQtc2l6ZTouNzVlbTtwYWRkaW5nOi41ZW19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjc2OHB4KXsudGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1vbnNhbGV7Zm9udC1zaXplOi44NzVlbTtwYWRkaW5nOi41ZW19fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMTY4cHgpey50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LW9uc2FsZXtmb250LXNpemU6Ljg3NWVtO3BhZGRpbmc6LjVlbX19LnRoZW1lLXR3ZW50eXR3ZW50eXR3byAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1hZGQtdG8tY2FydCAuYWRkZWRfdG9fY2FydHtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6MTJweH0udGhlbWUtdHdlbnR5dHdlbnR5dHdvIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcHJpY2UgaW5zLC50aGVtZS10d2VudHl0d2VudHl0d28gLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcHJpY2UgaW5ze3RleHQtZGVjb3JhdGlvbjpub25lfS5zY3JlZW4tcmVhZGVyLXRleHR7Y2xpcDpyZWN0KDFweCwxcHgsMXB4LDFweCk7d29yZC13cmFwOm5vcm1hbCFpbXBvcnRhbnQ7Ym9yZGVyOjA7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoNTAlKTtjbGlwLXBhdGg6aW5zZXQoNTAlKTtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtvdmVyZmxvdy13cmFwOm5vcm1hbCFpbXBvcnRhbnQ7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt3aWR0aDoxcHh9LnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1c3tjbGlwOmF1dG8haW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjNweDtib3gtc2hhZG93OjAgMCAycHggMnB4IHJnYmEoMCwwLDAsLjYpOy13ZWJraXQtY2xpcC1wYXRoOm5vbmU7Y2xpcC1wYXRoOm5vbmU7Y29sb3I6IzJiMmQyZjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6YXV0bztsZWZ0OjVweDtsaW5lLWhlaWdodDpub3JtYWw7cGFkZGluZzoxNXB4IDIzcHggMTRweDt0ZXh0LWRlY29yYXRpb246bm9uZTt0b3A6NXB4O3dpZHRoOmF1dG87ei1pbmRleDoxMDAwMDB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1hdHRyaWJ1dGUtcGlja2Vye2ZsZXgtYmFzaXM6MTAwJTttYXJnaW46MH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWF0dHJpYnV0ZS1waWNrZXIgbGFiZWx7ZGlzcGxheTpibG9jaztmb250LXNpemU6MWVtfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtYXR0cmlidXRlLXBpY2tlciAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWF0dHJpYnV0ZS1waWNrZXJfX2NvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWF0dHJpYnV0ZS1waWNrZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1hdHRyaWJ1dGUtcGlja2VyX19zZWxlY3R7bWFyZ2luOjAgMCAuNzVlbX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWF0dHJpYnV0ZS1waWNrZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1hdHRyaWJ1dGUtcGlja2VyX19zZWxlY3Qgc2VsZWN0e21pbi1oZWlnaHQ6MS43NWVtO21pbi13aWR0aDo2MCV9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1hdHRyaWJ1dGUtcGlja2VyIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtYXR0cmlidXRlLXBpY2tlcl9fc2VsZWN0Lmhhcy1lcnJvcnttYXJnaW4tYm90dG9tOjI0cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1hdHRyaWJ1dGUtcGlja2VyIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtYXR0cmlidXRlLXBpY2tlcl9fc2VsZWN0Lmhhcy1lcnJvciBzZWxlY3R7Ym9yZGVyLWNvbG9yOiNjYzE4MTh9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1hdHRyaWJ1dGUtcGlja2VyIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtYXR0cmlidXRlLXBpY2tlcl9fc2VsZWN0Lmhhcy1lcnJvciBzZWxlY3Q6Zm9jdXN7b3V0bGluZS1jb2xvcjojY2MxODE4fS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnR7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO21hcmdpbjowfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1idXR0b257bWFyZ2luOjAgMCAuNzVlbX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtYnV0dG9uIC53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbl9fdGV4dHtkaXNwbGF5OmJsb2NrfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1idXR0b24gLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uX190ZXh0PnN2Z3tmaWxsOmN1cnJlbnRDb2xvcjtoZWlnaHQ6MS41ZW07bWFyZ2luOi0uMjVlbSAwIC0uMjVlbSAuNWVtO3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDoxLjVlbX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtcXVhbnRpdHl7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXItcmFkaXVzOjJweDtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4xMjUpO2NvbG9yOiM0MzQ1NGI7ZmxleC1iYXNpczo1ZW07bWFyZ2luOjAgMWVtIC43NWVtIDA7cGFkZGluZzouNjE4ZW07dGV4dC1hbGlnbjpjZW50ZXJ9LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWJ1dHRvbiwuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtcXVhbnRpdHksLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC0tcGxhY2Vob2xkZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1idXR0b24sLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC0tcGxhY2Vob2xkZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1xdWFudGl0eXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1idXR0b24+KiwuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtcXVhbnRpdHk+Kiwud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LS1wbGFjZWhvbGRlciAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWJ1dHRvbj4qLC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtLXBsYWNlaG9sZGVyIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtcXVhbnRpdHk+Knt2aXNpYmlsaXR5OmhpZGRlbn0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtYnV0dG9uOmFmdGVyLC5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1xdWFudGl0eTphZnRlciwud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LS1wbGFjZWhvbGRlciAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWJ1dHRvbjphZnRlciwud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LS1wbGFjZWhvbGRlciAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LXF1YW50aXR5OmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWJ1dHRvbiwuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtcXVhbnRpdHksLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC0tcGxhY2Vob2xkZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1idXR0b24sLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC0tcGxhY2Vob2xkZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1xdWFudGl0eXstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stZ3JpZCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0e2p1c3RpZnktY29udGVudDpjZW50ZXJ9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydC1ub3RpY2V7bWFyZ2luOjB9LndwLWJsb2NrLWJ1dHRvbi53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYnV0dG9ue21hcmdpbi1ib3R0b206MTJweDttYXJnaW4tdG9wOjA7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud3AtYmxvY2stYnV0dG9uLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1idXR0b24gLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1idXR0b25fX2J1dHRvbntib3JkZXItc3R5bGU6bm9uZTtkaXNwbGF5OmlubGluZS1mbGV4O2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjowIGF1dG87d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud3AtYmxvY2stYnV0dG9uLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1idXR0b24gLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1idXR0b25fX2J1dHRvbi0tcGxhY2Vob2xkZXJ7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O21pbi1oZWlnaHQ6M2VtO21pbi13aWR0aDo4ZW07b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53cC1ibG9jay1idXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbl9fYnV0dG9uLS1wbGFjZWhvbGRlcj4qe3Zpc2liaWxpdHk6aGlkZGVufS53cC1ibG9jay1idXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbl9fYnV0dG9uLS1wbGFjZWhvbGRlcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53cC1ibG9jay1idXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbl9fYnV0dG9uLS1wbGFjZWhvbGRlcnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbj4ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbl9fYnV0dG9ue2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxO21heC13aWR0aDoxMDAlIWltcG9ydGFudDttaW4taGVpZ2h0OjNlbTttaW4td2lkdGg6OGVtO291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbj4ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJ1dHRvbl9fYnV0dG9uPip7dmlzaWJpbGl0eTpoaWRkZW59LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1idXR0b24+LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1idXR0b25fX2J1dHRvbjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYnV0dG9uPi53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYnV0dG9uX19idXR0b257LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmt7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO2JvcmRlci1jb2xvcjp2YXIoLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQpO2NvbG9yOnZhcigtLWJ1dHRvbi0tY29sb3ItdGV4dCl9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1jYXRlZ29yeS1saXN0e21hcmdpbi1ib3R0b206Ljc1ZW07bWFyZ2luLXRvcDowfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtY2F0ZWdvcnktbGlzdCB1bHtkaXNwbGF5OmlubGluZTttYXJnaW46MDtwYWRkaW5nOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1jYXRlZ29yeS1saXN0IHVsIGxpe2Rpc3BsYXk6aW5saW5lO2xpc3Qtc3R5bGU6bm9uZX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWNhdGVnb3J5LWxpc3QgdWwgbGk6YWZ0ZXJ7Y29udGVudDoiLCAifS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtY2F0ZWdvcnktbGlzdCB1bCBsaTpsYXN0LWNoaWxkOmFmdGVye2NvbnRlbnQ6IiJ9LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1pbWFnZSwud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdle2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1pbWFnZSBhLC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2UgYXtib3JkZXI6MDtib3JkZXItcmFkaXVzOmluaGVyaXQ7Ym94LXNoYWRvdzpub25lO291dGxpbmU6MDt0ZXh0LWRlY29yYXRpb246bm9uZX0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdlIGltZywud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdlIGltZ3tib3JkZXItcmFkaXVzOmluaGVyaXQ7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjEwMCV9LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1pbWFnZSBpbWdbaGlkZGVuXSwud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdlIGltZ1toaWRkZW5de2Rpc3BsYXk6bm9uZX0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdlIGltZ1thbHQ9IiJdLC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2UgaW1nW2FsdD0iIl17Ym9yZGVyOjFweCBzb2xpZCAjZjJmMmYyfS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2UgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdlLS1hbGlnbi1sZWZ0LC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2UgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdlLS1hbGlnbi1sZWZ0e2xlZnQ6NHB4O21hcmdpbjowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OmF1dG87dG9wOjRweH0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdlIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3Qtc2FsZS1iYWRnZS0tYWxpZ24tY2VudGVyLC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2UgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdlLS1hbGlnbi1jZW50ZXJ7bGVmdDo1MCU7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6YXV0bzt0b3A6NHB4O3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpfS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2UgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdlLS1hbGlnbi1yaWdodCwud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdlIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3Qtc2FsZS1iYWRnZS0tYWxpZ24tcmlnaHR7bGVmdDphdXRvO21hcmdpbjowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweDt0b3A6NHB4fS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2V7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3dpZHRoOmF1dG87ei1pbmRleDoxfS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2U+Knt2aXNpYmlsaXR5OmhpZGRlbn0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdlOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1pbWFnZXstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWltYWdle21hcmdpbjowIDAgMTJweH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXJhdGluZ3tkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MTJweDttYXJnaW4tdG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1yYXRpbmdfX3N0YXJze2ZvbnQtZmFtaWx5OnN0YXI7Zm9udC1zaXplOjFlbTtmb250LXdlaWdodDo0MDA7aGVpZ2h0OjEuNjE4ZW07bGluZS1oZWlnaHQ6MS42MTg7bWFyZ2luOjAgYXV0bztvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjUuM2VtfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcmF0aW5nX19zdGFyczpiZWZvcmV7Y29sb3I6aW5oZXJpdDtjb250ZW50OiJTU1NTUyI7bGVmdDowO29wYWNpdHk6LjU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt3aGl0ZS1zcGFjZTpub3dyYXB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1yYXRpbmdfX3N0YXJzIHNwYW57Y29sb3I6aW5oZXJpdDtsZWZ0OjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctdG9wOjEuNWVtO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1yYXRpbmdfX3N0YXJzIHNwYW46YmVmb3Jle2NvbG9yOmluaGVyaXQ7Y29udGVudDoiU1NTU1MiO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3doaXRlLXNwYWNlOm5vd3JhcH0ud2MtYmxvY2stc2luZ2xlLXByb2R1Y3QgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1yYXRpbmdfX3N0YXJze21hcmdpbjowfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3Qtc2FsZS1iYWRnZXtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjNDM0NTRiO2JvcmRlci1yYWRpdXM6M3B4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojNDM0NTRiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NjAwO21hcmdpbjowIGF1dG8gMTJweDtwYWRkaW5nOi4yNWVtIC43NWVtO3Bvc2l0aW9uOnN0YXRpYzt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7d2lkdGg6YXV0bzt6LWluZGV4Ojl9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zYWxlLWJhZGdlIHNwYW57YmFja2dyb3VuZC1jb2xvcjppbmhlcml0O2NvbG9yOmluaGVyaXR9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1za3V7ZGlzcGxheTpibG9jaztmb250LXNpemU6Ljg3NWVtO21hcmdpbi1ib3R0b206MTJweDttYXJnaW4tdG9wOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3Qtc3RvY2staW5kaWNhdG9ye2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOi44NzVlbTttYXJnaW4tYm90dG9tOi43NWVtO21hcmdpbi10b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXN1bW1hcnl7bWFyZ2luLWJvdHRvbToxMnB4O21hcmdpbi10b3A6MH0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXN1bW1hcnk6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7Y29udGVudDoiLiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6NmVtO2xpbmUtaGVpZ2h0OjE7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXN1bW1hcnk6YmVmb3JlPip7dmlzaWJpbGl0eTpoaWRkZW59LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zdW1tYXJ5OmJlZm9yZTphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3Qtc3VtbWFyeTpiZWZvcmV7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC10YWctbGlzdHttYXJnaW4tYm90dG9tOi43NWVtO21hcmdpbi10b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRhZy1saXN0IHVse2Rpc3BsYXk6aW5saW5lO21hcmdpbjowO3BhZGRpbmc6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRhZy1saXN0IHVsIGxpe2Rpc3BsYXk6aW5saW5lO2xpc3Qtc3R5bGU6bm9uZX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRhZy1saXN0IHVsIGxpOmFmdGVye2NvbnRlbnQ6IiwgIn0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRhZy1saXN0IHVsIGxpOmxhc3QtY2hpbGQ6YWZ0ZXJ7Y29udGVudDoiIn0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRpdGxle2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXRvcDowO3BhZGRpbmc6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRpdGxlIGF7Y29sb3I6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdH0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRpdGxlOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2NvbnRlbnQ6Ii4iO2Rpc3BsYXk6YmxvY2s7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7d2lkdGg6N2VtO3otaW5kZXg6MX0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRpdGxlOmJlZm9yZT4qe3Zpc2liaWxpdHk6aGlkZGVufS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtdGl0bGU6YmVmb3JlOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC10aXRsZTpiZWZvcmV7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LmlzLWxvYWRpbmcgLndjLWJsb2NrLWdyaWQgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC10aXRsZTpiZWZvcmV7d2lkdGg6MTBlbX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRpdGxlLS1hbGlnbi1sZWZ0e3RleHQtYWxpZ246bGVmdH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXRpdGxlLS1hbGlnbi1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC10aXRsZS0tYWxpZ24tcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0ud2MtYmxvY2stY29tcG9uZW50cy1lcnJvcnthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6Izc1NzU3NTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjQwcHggMDtwYWRkaW5nOjQwcHggMDt0ZXh0LWFsaWduOmNlbnRlcn0ud2MtYmxvY2stY29tcG9uZW50cy1lcnJvcl9faGVhZGVye2NvbG9yOiM2NDY5NzA7Zm9udC1zaXplOjJlbTttYXJnaW46MH0ud2MtYmxvY2stY29tcG9uZW50cy1lcnJvcl9faW1hZ2V7bWFyZ2luOjAgMCAyNHB4O3dpZHRoOjI1JX0ud2MtYmxvY2stY29tcG9uZW50cy1lcnJvcl9fdGV4dHtjb2xvcjojOGM4Zjk0O2ZvbnQtc2l6ZToxLjI1ZW07bWFyZ2luOjFlbSAwIDA7bWF4LXdpZHRoOjYwY2h9LndjLWJsb2NrLWNvbXBvbmVudHMtZXJyb3JfX21lc3NhZ2V7Y29sb3I6IzhjOGY5NDtmb250LXN0eWxlOml0YWxpYzttYXJnaW46MWVtIGF1dG8gMDttYXgtd2lkdGg6NjBjaH0ud2MtYmxvY2stZXJyb3JfX2J1dHRvbnttYXJnaW46NDBweCAwIDB9LndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOm5vdCguaXMtbGluayl7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOmluaGVyaXQ7ZGlzcGxheTppbmxpbmUtZmxleDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2ZvbnQtd2VpZ2h0OjcwMDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtsaW5lLWhlaWdodDoxO21pbi1oZWlnaHQ6M2VtO3BhZGRpbmc6MCAxZW07cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTpub25lO3RyYW5zaXRpb246Ym94LXNoYWRvdyAuMXMgbGluZWFyfS53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgMnB4ICMwNjc1YzQ7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZiwwIDAgMCAycHggIzA2NzVjNDtvdXRsaW5lOjNweCBzb2xpZCB0cmFuc3BhcmVudH0ud2MtYmxvY2stY29tcG9uZW50cy1idXR0b246bm90KC5pcy1saW5rKSAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b25fX3RleHR7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stY29tcG9uZW50cy1idXR0b246bm90KC5pcy1saW5rKSAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b25fX3RleHQ+c3Zne2ZpbGw6Y3VycmVudENvbG9yfS53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspIC53Yy1ibG9jay1jb21wb25lbnRzLXNwaW5uZXIrLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uX190ZXh0e3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLnRleHR7Y29sb3I6IzFlMWUxZX0ud2MtYmxvY2stY29tcG9uZW50cy1idXR0b246bm90KC5pcy1saW5rKS50ZXh0OmhvdmVye29wYWNpdHk6Ljl9LndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOm5vdCguaXMtbGluaykuY29udGFpbmVkLC53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLmNvbnRhaW5lZDphY3RpdmUsLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOm5vdCguaXMtbGluaykuY29udGFpbmVkOmRpc2FibGVkLC53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLmNvbnRhaW5lZDpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy1idXR0b246bm90KC5pcy1saW5rKS5jb250YWluZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWUxZTFlO2NvbG9yOiNmZmZ9LndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOm5vdCguaXMtbGluaykuY29udGFpbmVkOmhvdmVye29wYWNpdHk6Ljl9LndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOm5vdCguaXMtbGluaykub3V0bGluZWR7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojMWUxZTFlfS53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLm91dGxpbmVkOm5vdCg6Zm9jdXMpe2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICMxZTFlMWV9LndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOm5vdCguaXMtbGluaykub3V0bGluZWQ6YWN0aXZlLC53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLm91dGxpbmVkOmRpc2FibGVkLC53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLm91dGxpbmVkOmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLm91dGxpbmVkOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFlMWUxZTtjb2xvcjojZmZmfS53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbjpub3QoLmlzLWxpbmspLm91dGxpbmVkOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFlMWUxZTtjb2xvcjojZmZmO29wYWNpdHk6MX0ud2MtYmxvY2stY29tcG9uZW50cy1mb3Jte2NvdW50ZXItcmVzZXQ6Y2hlY2tvdXQtc3RlcH0ud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXB7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO21hcmdpbjowO3BhZGRpbmc6MCAwIDAgMjRweDtwb3NpdGlvbjpyZWxhdGl2ZX0uaXMtbW9iaWxlIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcCwuaXMtc21hbGwgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwe3BhZGRpbmctbGVmdDowfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXAtLWRpc2FibGVke29wYWNpdHk6LjZ9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcF9fY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2NvbnRlbnQ+KnttYXJnaW4tYm90dG9tOjFlbX0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwLS13aXRoLXN0ZXAtbnVtYmVyIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2NvbnRlbnQ+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowO3BhZGRpbmctYm90dG9tOjEuNWVtfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2hlYWRpbmd7YWxpZ24tY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6MWVtO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21hcmdpbjouNzVlbSAwIDFlbTtwb3NpdGlvbjpyZWxhdGl2ZX0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwOmZpcnN0LWNoaWxkIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2hlYWRpbmcsLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50LWNvbnRpbnVlLXJ1bGUrLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcCAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwX19oZWFkaW5ne21hcmdpbi10b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwX190aXRsZXttYXJnaW46MCAxMnB4IDAgMH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwX19oZWFkaW5nLWNvbnRlbnR7Zm9udC1zaXplOi43NWVtfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2hlYWRpbmctY29udGVudCBhe2NvbG9yOmluaGVyaXQ7Zm9udC13ZWlnaHQ6NzAwfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2Rlc2NyaXB0aW9ue2ZvbnQtc2l6ZTouODc1ZW07bGluZS1oZWlnaHQ6MS4yNTttYXJnaW4tYm90dG9tOjE2cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcC0td2l0aC1zdGVwLW51bWJlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwX190aXRsZTpiZWZvcmV7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Y29udGVudDoiwqAiIGNvdW50ZXIoY2hlY2tvdXQtc3RlcCkgIi4iO2NvbnRlbnQ6IsKgIiBjb3VudGVyKGNoZWNrb3V0LXN0ZXApICIuIi8iIjtjb3VudGVyLWluY3JlbWVudDpjaGVja291dC1zdGVwO2xlZnQ6LTI0cHg7bWFyZ2luOjA7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO3dpZHRoOjI0cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcC0td2l0aC1zdGVwLW51bWJlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwX19jb250YWluZXI6YWZ0ZXJ7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkO2NvbnRlbnQ6IiI7aGVpZ2h0OjEwMCU7bGVmdDotMjRweDtvcGFjaXR5Oi4zO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS5pcy1tb2JpbGUgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcC0td2l0aC1zdGVwLW51bWJlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwX190aXRsZTpiZWZvcmUsLmlzLXNtYWxsIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXAtLXdpdGgtc3RlcC1udW1iZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcF9fdGl0bGU6YmVmb3Jle2NvbnRlbnQ6Y291bnRlcihjaGVja291dC1zdGVwKSAiLsKgIjtjb250ZW50OmNvdW50ZXIoY2hlY2tvdXQtc3RlcCkgIi7CoCIvIiI7bGVmdDphdXRvO3Bvc2l0aW9uOnN0YXRpYzt0b3A6YXV0bzt0cmFuc2Zvcm06bm9uZX0uaXMtbW9iaWxlIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXAtLXdpdGgtc3RlcC1udW1iZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcF9fY29udGFpbmVyOmFmdGVyLC5pcy1zbWFsbCAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1zdGVwLS13aXRoLXN0ZXAtbnVtYmVyIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2NvbnRhaW5lcjphZnRlcntjb250ZW50OnVuc2V0fS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrIGg0LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtc3RlcF9fdGl0bGV7Zm9udC1zaXplOjFlbTtsaW5lLWhlaWdodDoyNHB4O21hcmdpbjowIDEycHggMCAwfS53Yy1ibG9jay1jb21wb25lbnRzLW9yZGVyLXN1bW1hcnkgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbnttYXJnaW4tdG9wOjA7cGFkZGluZy10b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy1vcmRlci1zdW1tYXJ5IC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19jb250ZW50e21hcmdpbi1ib3R0b206MH0ud2MtYmxvY2stY29tcG9uZW50cy1vcmRlci1zdW1tYXJ5X19jb250ZW50e2Rpc3BsYXk6dGFibGU7d2lkdGg6MTAwJX0ud2MtYmxvY2stY29tcG9uZW50cy1vcmRlci1zdW1tYXJ5LWl0ZW17ZGlzcGxheTpmbGV4O2ZvbnQtc2l6ZTouODc1ZW07cGFkZGluZy1ib3R0b206MXB4O3BhZGRpbmctdG9wOjE2cHg7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJX0ud2MtYmxvY2stY29tcG9uZW50cy1vcmRlci1zdW1tYXJ5LWl0ZW06YWZ0ZXJ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDowIDAgMXB4O2JvdHRvbTowO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztsZWZ0OjA7b3BhY2l0eTouMztwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtOmZpcnN0LWNoaWxke3BhZGRpbmctdG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtOmxhc3QtY2hpbGQ+ZGl2e3BhZGRpbmctYm90dG9tOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtOmxhc3QtY2hpbGQ6YWZ0ZXJ7ZGlzcGxheTpub25lfS53Yy1ibG9jay1jb21wb25lbnRzLW9yZGVyLXN1bW1hcnktaXRlbSAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW1ldGFkYXRhe2ZvbnQtc2l6ZToxZW19LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtX19kZXNjcmlwdGlvbiwud2MtYmxvY2stY29tcG9uZW50cy1vcmRlci1zdW1tYXJ5LWl0ZW1fX2ltYWdle2Rpc3BsYXk6dGFibGUtY2VsbDt2ZXJ0aWNhbC1hbGlnbjp0b3B9LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtX19pbWFnZXtwYWRkaW5nLWJvdHRvbToxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjQ4cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtX19pbWFnZT5pbWd7bWF4LXdpZHRoOjQ4cHg7d2lkdGg6NDhweH0ud2MtYmxvY2stY29tcG9uZW50cy1vcmRlci1zdW1tYXJ5LWl0ZW1fX3F1YW50aXR5e2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjJweCBzb2xpZDtib3JkZXItcmFkaXVzOjFlbTtib3gtc2hhZG93OjAgMCAwIDJweCAjZmZmO2NvbG9yOiMwMDA7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7bGluZS1oZWlnaHQ6MTttaW4taGVpZ2h0OjIwcHg7bWluLXdpZHRoOjIwcHg7cGFkZGluZzowIC40ZW07cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKDUwJSwtNTAlKTt3aGl0ZS1zcGFjZTpub3dyYXA7ei1pbmRleDoxfS53Yy1ibG9jay1jb21wb25lbnRzLW9yZGVyLXN1bW1hcnktaXRlbV9fZGVzY3JpcHRpb257cGFkZGluZy1ib3R0b206MTZweDtwYWRkaW5nLWxlZnQ6MjRweDtwYWRkaW5nLXJpZ2h0OjEycHh9LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtX19kZXNjcmlwdGlvbiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW1ldGFkYXRhLC53Yy1ibG9jay1jb21wb25lbnRzLW9yZGVyLXN1bW1hcnktaXRlbV9fZGVzY3JpcHRpb24gcHtsaW5lLWhlaWdodDoxLjM3NTttYXJnaW4tdG9wOjRweH0ud2MtYmxvY2stY29tcG9uZW50cy1vcmRlci1zdW1tYXJ5LWl0ZW1fX3RvdGFsLXByaWNle2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tbGVmdDphdXRvO3RleHQtYWxpZ246cmlnaHR9LndjLWJsb2NrLWNvbXBvbmVudHMtb3JkZXItc3VtbWFyeS1pdGVtX19pbmRpdmlkdWFsLXByaWNlc3tkaXNwbGF5OmJsb2NrfS53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWljb25ze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC13cmFwOndyYXA7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW46MCAwIDE0cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtaWNvbnMgLndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtaWNvbntkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjRweDttYXJnaW46MCA0cHggMnB4O21heC1oZWlnaHQ6MjRweDttYXgtd2lkdGg6MzhweDtwYWRkaW5nOjA7d2lkdGg6YXV0b30ud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1pY29ucy0tYWxpZ24tbGVmdHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1pY29ucy0tYWxpZ24tbGVmdCAud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1pY29ue21hcmdpbi1sZWZ0OjA7bWFyZ2luLXJpZ2h0OjhweH0ud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1pY29ucy0tYWxpZ24tcmlnaHR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWljb25zLS1hbGlnbi1yaWdodCAud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1pY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1pY29uczpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uaXMtbW9iaWxlIC53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWljb25zIC53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWljb24sLmlzLXNtYWxsIC53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWljb25zIC53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWljb257aGVpZ2h0OjE2cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtbGFiZWwtLXdpdGgtaWNvbntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtbGFiZWwtLXdpdGgtaWNvbj5pbWcsLndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtbGFiZWwtLXdpdGgtaWNvbj5zdmd7bWFyZ2luOi0ycHggNHB4IDAgMDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmlzLW1vYmlsZSAud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1sYWJlbC0td2l0aC1pY29uPmltZywuaXMtbW9iaWxlIC53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWxhYmVsLS13aXRoLWljb24+c3ZnLC5pcy1zbWFsbCAud2MtYmxvY2stY29tcG9uZW50cy1wYXltZW50LW1ldGhvZC1sYWJlbC0td2l0aC1pY29uPmltZywuaXMtc21hbGwgLndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtbGFiZWwtLXdpdGgtaWNvbj5zdmd7ZGlzcGxheTpub25lfS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtcG9saWNpZXMsLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtcG9saWNpZXN7Zm9udC1zaXplOi43NWVtO2xpbmUtaGVpZ2h0OjE7bGlzdC1zdHlsZTpub25lIG91dHNpZGU7bWFyZ2luOjI0cHggMDt0ZXh0LWFsaWduOmNlbnRlcn0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1wb2xpY2llc19faXRlbXtkaXNwbGF5OmlubGluZS1ibG9jaztsaXN0LXN0eWxlOm5vbmUgb3V0c2lkZTttYXJnaW46MDtwYWRkaW5nOjAgLjI1ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtcG9saWNpZXNfX2l0ZW06bm90KDpmaXJzdC1jaGlsZCl7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNjY2N9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtcG9saWNpZXNfX2l0ZW0+YXtjb2xvcjppbmhlcml0O3BhZGRpbmc6MCAuMjVlbX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWJhZGdle2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLXJhZGl1czoycHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOi43NWVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjAgLjY2ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWRldGFpbHMud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWRldGFpbHN7bGlzdC1zdHlsZTpub25lO21hcmdpbjouNWVtIDA7cGFkZGluZzowfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtZGV0YWlscy53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtZGV0YWlsczpsYXN0LW9mLXR5cGV7bWFyZ2luLWJvdHRvbTowfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtZGV0YWlscy53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtZGV0YWlscyBsaXttYXJnaW4tbGVmdDowfS53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtZGV0YWlsc19fbmFtZSwud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWRldGFpbHNfX3ZhbHVle2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5pcy1sYXJnZTpub3QoLndjLWJsb2NrLWNoZWNrb3V0KSAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWRldGFpbHNfX25hbWV7Zm9udC13ZWlnaHQ6NzAwfWltZy53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtaW1hZ2VbYWx0PSIiXXtib3JkZXI6MXB4IHNvbGlkICNmMmYyZjJ9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YXtmb250LXNpemU6Ljc1ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YSAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW1ldGFkYXRhX19kZXNjcmlwdGlvbj5wLC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbWV0YWRhdGEgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YV9fdmFyaWF0aW9uLWRhdGF7bWFyZ2luOi4yNWVtIDB9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtcmV0dXJuLXRvLWNhcnQtYnV0dG9ue2JveC1zaGFkb3c6bm9uZTtjb2xvcjppbmhlcml0O3BhZGRpbmctbGVmdDpjYWxjKDI0cHggKyAuMjVlbSk7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtcmV0dXJuLXRvLWNhcnQtYnV0dG9uIHN2Z3tsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1jYWxjdWxhdG9yLWFkZHJlc3N7bWFyZ2luLWJvdHRvbTowfS53Yy1ibG9jay1jb21wb25lbnRzLXNoaXBwaW5nLWNhbGN1bGF0b3ItYWRkcmVzc19fYnV0dG9ue21hcmdpbi10b3A6MS41ZW07d2lkdGg6MTAwJX0ud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1jYWxjdWxhdG9ye3BhZGRpbmc6LjVlbSAwIC43NWVtfS53Yy1ibG9jay1jb21wb25lbnRzLXNoaXBwaW5nLXJhdGVzLWNvbnRyb2xfX3BhY2thZ2V7bWFyZ2luLWJvdHRvbTozNnB4fS53Yy1ibG9jay1jb21wb25lbnRzLXNoaXBwaW5nLXJhdGVzLWNvbnRyb2xfX3BhY2thZ2U6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtc2hpcHBpbmctcmF0ZXMtY29udHJvbF9fcGFja2FnZSAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9ue21hcmdpbi1ib3R0b206MDttYXJnaW4tdG9wOjA7cGFkZGluZy1ib3R0b206Ljc1ZW07cGFkZGluZy10b3A6Ljc1ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtc2hpcHBpbmctcmF0ZXMtY29udHJvbF9fcGFja2FnZSAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fY29udGVudCwud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1yYXRlcy1jb250cm9sX19wYWNrYWdlIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wsLndjLWJsb2NrLWNvbXBvbmVudHMtc2hpcHBpbmctcmF0ZXMtY29udHJvbF9fcGFja2FnZSAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbi1sYXlvdXQsLndjLWJsb2NrLWNvbXBvbmVudHMtc2hpcHBpbmctcmF0ZXMtY29udHJvbF9fcGFja2FnZSAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19vcHRpb24tbGF5b3V0e3BhZGRpbmctYm90dG9tOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtc2hpcHBpbmctcmF0ZXMtY29udHJvbF9fcGFja2FnZS1pdGVtc3tkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouODc1ZW07bGlzdC1zdHlsZTpub25lO21hcmdpbjowO3BhZGRpbmc6MH0ud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1yYXRlcy1jb250cm9sX19wYWNrYWdlLWl0ZW17ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTtwYWRkaW5nOjA7d29yZC1icmVhazpicmVhay13b3JkOy1tcy13b3JkLWJyZWFrOmJyZWFrLWFsbH0ud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1yYXRlcy1jb250cm9sX19wYWNrYWdlLWl0ZW06bm90KDpsYXN0LWNoaWxkKTphZnRlcntjb250ZW50OiIsICI7d2hpdGUtc3BhY2U6cHJlfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1jb3Vwb24gLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbnttYXJnaW4tdG9wOjA7cGFkZGluZy10b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtY291cG9uIC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19jb250ZW50e3BhZGRpbmctYm90dG9tOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWNvdXBvbl9fZm9ybXtkaXNwbGF5OmZsZXg7bWFyZ2luLWJvdHRvbTowO3dpZHRoOjEwMCV9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWNvdXBvbl9fZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtY291cG9uX19pbnB1dHtmbGV4LWdyb3c6MTttYXJnaW4tYm90dG9tOjA7bWFyZ2luLXRvcDowfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1jb3Vwb25fX2Zvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWNvdXBvbl9fYnV0dG9ue2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjNlbTttYXJnaW4tbGVmdDo4cHg7cGFkZGluZy1sZWZ0OjI0cHg7cGFkZGluZy1yaWdodDoyNHB4O3doaXRlLXNwYWNlOm5vd3JhcH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtY291cG9uX19mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1jb3Vwb25fX2J1dHRvbi5uby1tYXJnaW57bWFyZ2luOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWNvdXBvbl9fY29udGVudHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWRpc2NvdW50X19jb3Vwb24tbGlzdHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1kaXNjb3VudCAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtaXRlbV9fdmFsdWV7Y29sb3I6IzRhYjg2Nn0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtZm9vdGVyLWl0ZW0gLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW1fX2xhYmVsLC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1mb290ZXItaXRlbSAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtaXRlbV9fdmFsdWV7Zm9udC1zaXplOjEuMjVlbX0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtZm9vdGVyLWl0ZW0gLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW1fX2xhYmVse2ZvbnQtd2VpZ2h0OjcwMH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtZm9vdGVyLWl0ZW0gLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWZvb3Rlci1pdGVtLXRheHttYXJnaW4tYm90dG9tOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nIGZpZWxkc2V0LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nX19maWVsZHNldHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjowO21hcmdpbjowO3BhZGRpbmc6MH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nX192aWF7bWFyZ2luLWJvdHRvbToxNnB4fS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1zaGlwcGluZyAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmdfX29wdGlvbnMgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fZGVzY3JpcHRpb24sLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1zaGlwcGluZ19fb3B0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19sYWJlbCwud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nX19vcHRpb25zIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX3NlY29uZGFyeS1kZXNjcmlwdGlvbiwud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nX19vcHRpb25zIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX3NlY29uZGFyeS1sYWJlbHtmbGV4LWJhc2lzOjEwMCU7dGV4dC1hbGlnbjpsZWZ0fS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1zaGlwcGluZyAud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1yYXRlcy1jb250cm9sX19uby1yZXN1bHRzLW5vdGljZXttYXJnaW46MCAwIC43NWVtfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1zaGlwcGluZyAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmdfX2NoYW5nZS1hZGRyZXNzLWJ1dHRvbntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDtib3gtc2hhZG93Om5vbmU7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OmlubGluZTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MDtwYWRkaW5nOjA7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LXNoYWRvdzpub25lO3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1zaGlwcGluZ19fY2hhbmdlLWFkZHJlc3MtYnV0dG9uOmFjdGl2ZSwud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nX19jaGFuZ2UtYWRkcmVzcy1idXR0b246Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1zaGlwcGluZ19fY2hhbmdlLWFkZHJlc3MtYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7b3BhY2l0eTouOH0udGhlbWUtdHdlbnR5dHdlbnR5b25lLnRoZW1lLXR3ZW50eXR3ZW50eW9uZS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXNoaXBwaW5nX19jaGFuZ2UtYWRkcmVzcy1idXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lO2NvbG9yOmluaGVyaXQ7ZGlzcGxheTppbmxpbmU7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXN0eWxlOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjA7cGFkZGluZzowO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTppbmhlcml0O3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS50aGVtZS10d2VudHl0d2VudHlvbmUudGhlbWUtdHdlbnR5dHdlbnR5b25lLnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmdfX2NoYW5nZS1hZGRyZXNzLWJ1dHRvbjphY3RpdmUsLnRoZW1lLXR3ZW50eXR3ZW50eW9uZS50aGVtZS10d2VudHl0d2VudHlvbmUudGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1zaGlwcGluZ19fY2hhbmdlLWFkZHJlc3MtYnV0dG9uOmZvY3VzLC50aGVtZS10d2VudHl0d2VudHlvbmUudGhlbWUtdHdlbnR5dHdlbnR5b25lLnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtc2hpcHBpbmdfX2NoYW5nZS1hZGRyZXNzLWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3gtbGlzdCwud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0e2xpc3Qtc3R5bGU6bm9uZSBvdXRzaWRlO21hcmdpbjowO3BhZGRpbmc6MH0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94LWxpc3QgbGksLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3gtbGlzdCBsaXtsaXN0LXN0eWxlOm5vbmUgb3V0c2lkZTttYXJnaW46MCAwIDRweDtwYWRkaW5nOjB9LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0IGxpLnNob3ctbGVzcyBidXR0b24sLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0IGxpLnNob3ctbW9yZSBidXR0b24sLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3gtbGlzdCBsaS5zaG93LWxlc3MgYnV0dG9uLC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94LWxpc3QgbGkuc2hvdy1tb3JlIGJ1dHRvbntiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0LmlzLWxvYWRpbmcgbGksLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3gtbGlzdC5pcy1sb2FkaW5nIGxpe2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxO21heC13aWR0aDoxMDAlIWltcG9ydGFudDtvdXRsaW5lOjAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTt6LWluZGV4OjF9LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0LmlzLWxvYWRpbmcgbGk+Kiwud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0LmlzLWxvYWRpbmcgbGk+Knt2aXNpYmlsaXR5OmhpZGRlbn0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94LWxpc3QuaXMtbG9hZGluZyBsaTphZnRlciwud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0LmlzLWxvYWRpbmcgbGk6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94LWxpc3QuaXMtbG9hZGluZyBsaSwud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC1saXN0LmlzLWxvYWRpbmcgbGl7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcHthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO2NvbG9yOmluaGVyaXQ7ZGlzcGxheTppbmxpbmUtZmxleDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtsaW5lLWhlaWdodDoxO21hcmdpbjowIC4zNjVlbSAuMzY1ZW0gMDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOi4yNWVtIC41ZW07dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwLC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXA6YWN0aXZlLC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXA6Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcDpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQ7Y29sb3I6aW5oZXJpdH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcC0tcmFkaXVzLXNtYWxse2JvcmRlci1yYWRpdXM6M3B4fS53Yy1ibG9jay1jb21wb25lbnRzLWNoaXAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwLS1yYWRpdXMtbWVkaXVte2JvcmRlci1yYWRpdXM6LjQzM2VtfS53Yy1ibG9jay1jb21wb25lbnRzLWNoaXAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwLS1yYWRpdXMtbGFyZ2V7Ym9yZGVyLXJhZGl1czoyZW07cGFkZGluZy1sZWZ0Oi43NWVtO3BhZGRpbmctcmlnaHQ6LjI1ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcCAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX190ZXh0e2ZsZXgtZ3JvdzoxfS53Yy1ibG9jay1jb21wb25lbnRzLWNoaXAuaXMtcmVtb3ZhYmxlIC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3RleHR7cGFkZGluZy1yaWdodDouNWVtfS53Yy1ibG9jay1jb21wb25lbnRzLWNoaXAgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcF9fcmVtb3Zley13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOiNlMGUwZTA7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czoyNXB4O2hlaWdodDoxNnB4O2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luOjA7cGFkZGluZzowO3dpZHRoOjE2cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcCAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmUtaWNvbntmaWxsOiMxZTFlMWV9LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwLC50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcDphY3RpdmUsLnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwOmZvY3VzLC50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcDpob3ZlcntiYWNrZ3JvdW5kOiNmZmZ9LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwOmFjdGl2ZSBidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmU6bm90KDpob3Zlcik6bm90KDphY3RpdmUpOm5vdCguaGFzLWJhY2tncm91bmQpLC50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcDpmb2N1cyBidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmU6bm90KDpob3Zlcik6bm90KDphY3RpdmUpOm5vdCguaGFzLWJhY2tncm91bmQpLC50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcDpob3ZlciBidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmU6bm90KDpob3Zlcik6bm90KDphY3RpdmUpOm5vdCguaGFzLWJhY2tncm91bmQpLC50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcCBidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmU6bm90KDpob3Zlcik6bm90KDphY3RpdmUpOm5vdCguaGFzLWJhY2tncm91bmQpe2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcF9fcmVtb3ZlOmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZTpob3ZlcixidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwOmZvY3VzPi53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZSxidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwOmhvdmVyPi53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZXtiYWNrZ3JvdW5kOiM5NDk0OTR9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcF9fcmVtb3ZlOmZvY3VzIC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZS1pY29uLC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZTpob3ZlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmUtaWNvbixidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwOmZvY3VzPi53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZSAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmUtaWNvbixidXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1jaGlwOmhvdmVyPi53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZSAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmUtaWNvbntmaWxsOiNmZmZ9LndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcF9fcmVtb3ZlOmRpc2FibGVkLGJ1dHRvbi53Yy1ibG9jay1jb21wb25lbnRzLWNoaXA6ZGlzYWJsZWQ+LndjLWJsb2NrLWNvbXBvbmVudHMtY2hpcF9fcmVtb3Zle2ZpbGw6I2ZmZjtjdXJzb3I6bm90LWFsbG93ZWR9LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2x7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO2NvbG9yOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXN0eWxlOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjA7cGFkZGluZzowO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1iYXNlLWNvbnRyb2xfX2ZpZWxkLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1iYXNlLWNvbnRyb2xfX2ZpZWxke2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDttYXJnaW46MDtwYWRkaW5nOjA7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19zdWdnZXN0aW9ucy1jb250YWluZXIsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX3N1Z2dlc3Rpb25zLWNvbnRhaW5lcntib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Y29sb3I6aW5oZXJpdDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MDtwYWRkaW5nOjA7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXQsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXR7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgIzUwNTc1ZTtib3JkZXItcmFkaXVzOjRweDtib3gtc2hhZG93Om5vbmU7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOmluaGVyaXQ7Y29sb3I6IzJiMmQyZjtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc2l6ZToxZW07Zm9udC1zdHlsZTppbmhlcml0O2ZvbnQtd2VpZ2h0OmluaGVyaXQ7Zm9udC13ZWlnaHQ6NDAwO2hlaWdodDozZW07bGV0dGVyLXNwYWNpbmc6aW5oZXJpdDtsaW5lLWhlaWdodDppbmhlcml0O2xpbmUtaGVpZ2h0OjE7b3BhY2l0eToxO291dGxpbmU6aW5oZXJpdDtwYWRkaW5nOjEuNWVtIDE2cHggLjI1ZW07dGV4dC1hbGlnbjpsZWZ0O3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vd3JhcDt3aWR0aDoxMDAlfS53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dDpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXRbYXJpYS1leHBhbmRlZD10cnVlXSwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dDpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dFthcmlhLWV4cGFuZGVkPXRydWVde2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93OjAgMCAwIDFweCAjNTA1NzVlO2NvbG9yOiMyYjJkMmY7b3V0bGluZTowfS53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dFthcmlhLWV4cGFuZGVkPXRydWVdLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCBpbnB1dC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX2lucHV0W2FyaWEtZXhwYW5kZWQ9dHJ1ZV17Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dCwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xKTtib3JkZXItY29sb3I6aHNsYSgwLDAlLDEwMCUsLjQpO2NvbG9yOiNmZmZ9Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dDpmb2N1cywuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXQ6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xKTtib3gtc2hhZG93OjAgMCAwIDFweCBoc2xhKDAsMCUsMTAwJSwuNCk7Y29sb3I6I2ZmZn0ud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3QsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3R7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgIzUwNTc1ZTtib3JkZXItdG9wOjA7Y29sb3I6IzJiMmQyZjttYXJnaW46M2VtIDAgMDttYXgtaGVpZ2h0OjMwMHB4O21pbi13aWR0aDoxMDAlO292ZXJmbG93OmF1dG87cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTB9Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbnMtbGlzdCwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3R7YmFja2dyb3VuZC1jb2xvcjojMWUxZTFlO2NvbG9yOiNmZmZ9LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0IC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb24sLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3QgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbntjb2xvcjojNzU3NTc1O2N1cnNvcjpkZWZhdWx0O2ZvbnQtc2l6ZToxZW07bGlzdC1zdHlsZTpub25lO21hcmdpbjowO3BhZGRpbmc6LjI1ZW0gMTZweH0ud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3QgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbi5pcy1zZWxlY3RlZCwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbnMtbGlzdCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9uLmlzLXNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6I2RkZH0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0IC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb24uaXMtc2VsZWN0ZWQsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0IC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb24uaXMtc2VsZWN0ZWR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC40KX0ud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3QgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbi5pcy1oaWdobGlnaHRlZCwud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3QgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbjphY3RpdmUsLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0IC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb246Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0IC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb246aG92ZXIsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3QgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbi5pcy1oaWdobGlnaHRlZCwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbnMtbGlzdCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9uOmFjdGl2ZSwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbnMtbGlzdCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9uOmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0IC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA2NjllO2NvbG9yOiNmZmZ9LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCBsYWJlbC5jb21wb25lbnRzLWJhc2UtY29udHJvbF9fbGFiZWwsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGxhYmVsLmNvbXBvbmVudHMtYmFzZS1jb250cm9sX19sYWJlbHtjb2xvcjppbmhlcml0O2NvbG9yOiM3NTc1NzU7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXNpemU6MWVtO2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtsaW5lLWhlaWdodDoxLjM3NTttYXJnaW46MCAwIDAgMTdweDttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMzJweCk7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt0cmFuc2Zvcm06dHJhbnNsYXRlWSguNzVlbSk7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDt0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZTt3aGl0ZS1zcGFjZTpub3dyYXA7ei1pbmRleDoxfS5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGxhYmVsLmNvbXBvbmVudHMtYmFzZS1jb250cm9sX19sYWJlbCwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGxhYmVsLmNvbXBvbmVudHMtYmFzZS1jb250cm9sX19sYWJlbHtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNil9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGxhYmVsLmNvbXBvbmVudHMtYmFzZS1jb250cm9sX19sYWJlbCwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgbGFiZWwuY29tcG9uZW50cy1iYXNlLWNvbnRyb2xfX2xhYmVse3RyYW5zaXRpb246bm9uZX19LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3guaXMtYWN0aXZlIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgbGFiZWwuY29tcG9uZW50cy1iYXNlLWNvbnRyb2xfX2xhYmVsLC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94OmZvY3VzLXdpdGhpbiAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGxhYmVsLmNvbXBvbmVudHMtYmFzZS1jb250cm9sX19sYWJlbCwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LmlzLWFjdGl2ZSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGxhYmVsLmNvbXBvbmVudHMtYmFzZS1jb250cm9sX19sYWJlbCwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94OmZvY3VzLXdpdGhpbiAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGxhYmVsLmNvbXBvbmVudHMtYmFzZS1jb250cm9sX19sYWJlbHt0cmFuc2Zvcm06dHJhbnNsYXRlWSg0cHgpIHNjYWxlKC43NSl9LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3guaGFzLWVycm9yIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgbGFiZWwuY29tcG9uZW50cy1iYXNlLWNvbnRyb2xfX2xhYmVsLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3guaGFzLWVycm9yIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgbGFiZWwuY29tcG9uZW50cy1iYXNlLWNvbnRyb2xfX2xhYmVse2NvbG9yOiNjYzE4MTh9LndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3guaGFzLWVycm9yIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dCwud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC5oYXMtZXJyb3IgLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCBpbnB1dC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX2lucHV0OmFjdGl2ZSwud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC5oYXMtZXJyb3IgLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCBpbnB1dC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX2lucHV0OmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94Lmhhcy1lcnJvciAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sIGlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXQ6aG92ZXIsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC5oYXMtZXJyb3IgLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCBpbnB1dC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX2lucHV0LC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3guaGFzLWVycm9yIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dDphY3RpdmUsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC5oYXMtZXJyb3IgLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCBpbnB1dC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX2lucHV0OmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3guaGFzLWVycm9yIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dDpob3Zlcntib3JkZXItY29sb3I6I2NjMTgxOH0ud2MtYmxvY2stY29tcG9uZW50cy1jb21ib2JveC5oYXMtZXJyb3IgLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbCBpbnB1dC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX2lucHV0OmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY29tYm9ib3guaGFzLWVycm9yIC53Yy1ibG9jay1jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2wgaW5wdXQuY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19pbnB1dDpmb2N1c3tib3gtc2hhZG93OjAgMCAwIDFweCAjY2MxODE4fS53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXR7bWFyZ2luLXRvcDoxLjVlbX1ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZWluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUBrZXlmcmFtZXMgZmFkZWluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUAtd2Via2l0LWtleWZyYW1lcyBzbGlkZWluezAle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVYKC00ODBweCl9fUBrZXlmcmFtZXMgc2xpZGVpbnswJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNDgwcHgpfX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDgwcHgpe0Atd2Via2l0LWtleWZyYW1lcyBzbGlkZWluezAle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDB2dyl9fUBrZXlmcmFtZXMgc2xpZGVpbnswJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwdncpfX19LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyX19zY3JlZW4tb3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoOTUsOTUsOTUsLjM1KTtib3R0b206MDtsZWZ0OjA7b3BhY2l0eToxO3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjA7dG9wOjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zczt6LWluZGV4Ojk5OTl9LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyX19zY3JlZW4tb3ZlcmxheS0td2l0aC1zbGlkZS1vdXR7dHJhbnNpdGlvbjpvcGFjaXR5IC4zc30ud2MtYmxvY2stY29tcG9uZW50cy1kcmF3ZXJfX3NjcmVlbi1vdmVybGF5LS13aXRoLXNsaWRlLWluey13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOi4zczthbmltYXRpb24tZHVyYXRpb246LjNzOy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZmFkZWluO2FuaW1hdGlvbi1uYW1lOmZhZGVpbn0ud2MtYmxvY2stY29tcG9uZW50cy1kcmF3ZXJfX3NjcmVlbi1vdmVybGF5LS1pcy1oaWRkZW57b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2Vye2JhY2tncm91bmQ6I2ZmZjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTtwb3NpdGlvbjpmaXhlZDtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC00ODBweCk7d2lkdGg6NDgwcHh9LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyOmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MCAwIDAgMXB4O2JvdHRvbTowO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztsZWZ0OjA7b3BhY2l0eTouMztwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjQ4MHB4KXsud2MtYmxvY2stY29tcG9uZW50cy1kcmF3ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMHZ3KTt3aWR0aDoxMDB2d319LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyX19zY3JlZW4tb3ZlcmxheS0td2l0aC1zbGlkZS1vdXQgLndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2Vye3RyYW5zaXRpb246dHJhbnNmb3JtIC4zc30ud2MtYmxvY2stY29tcG9uZW50cy1kcmF3ZXJfX3NjcmVlbi1vdmVybGF5LS13aXRoLXNsaWRlLWluIC53Yy1ibG9jay1jb21wb25lbnRzLWRyYXdlcnstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjouM3M7YW5pbWF0aW9uLWR1cmF0aW9uOi4zczstd2Via2l0LWFuaW1hdGlvbi1uYW1lOnNsaWRlaW47YW5pbWF0aW9uLW5hbWU6c2xpZGVpbn0ud2MtYmxvY2stY29tcG9uZW50cy1kcmF3ZXJfX3NjcmVlbi1vdmVybGF5LS1pcy1oaWRkZW4gLndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2Vye3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyLC53Yy1ibG9jay1jb21wb25lbnRzLWRyYXdlcl9fc2NyZWVuLW92ZXJsYXl7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpub25lIWltcG9ydGFudDthbmltYXRpb24tbmFtZTpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fX0ud2MtYmxvY2stY29tcG9uZW50cy1kcmF3ZXIgLmNvbXBvbmVudHMtbW9kYWxfX2NvbnRlbnR7cGFkZGluZzo0MHB4IDE2cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyIC5jb21wb25lbnRzLW1vZGFsX19oZWFkZXJ7cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyIC5jb21wb25lbnRzLW1vZGFsX19oZWFkZXIgLmNvbXBvbmVudHMtYnV0dG9ue2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO21hcmdpbjotMWVtO3BhZGRpbmc6MWVtO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyIC5jb21wb25lbnRzLW1vZGFsX19oZWFkZXIgLmNvbXBvbmVudHMtYnV0dG9uPnNwYW57Y2xpcDpyZWN0KDFweCwxcHgsMXB4LDFweCk7d29yZC13cmFwOm5vcm1hbCFpbXBvcnRhbnQ7Ym9yZGVyOjA7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoNTAlKTtjbGlwLXBhdGg6aW5zZXQoNTAlKTtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtvdmVyZmxvdy13cmFwOm5vcm1hbCFpbXBvcnRhbnQ7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt3aWR0aDoxcHh9LndjLWJsb2NrLWNvbXBvbmVudHMtZHJhd2VyIC5jb21wb25lbnRzLW1vZGFsX19oZWFkZXItaGVhZGluZ3tib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjEuMjVyZW07bWFyZ2luOjA7cGFkZGluZzowO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud2MtZmlsdGVyLWVsZW1lbnQtbGFiZWwtbGlzdC1jb3VudDpiZWZvcmV7Y29udGVudDoiICgifS53Yy1maWx0ZXItZWxlbWVudC1sYWJlbC1saXN0LWNvdW50OmFmdGVye2NvbnRlbnQ6IikifS53Yy1ibG9jay1maWx0ZXItdGl0bGUtcGxhY2Vob2xkZXJ7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOiNjY2MhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3JkZXItcmFkaXVzOjEuNjI1ZW07Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWFyZ2luLWJvdHRvbToxMnB4O21hcmdpbi10b3A6MTJweDttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7bWF4LXdpZHRoOi13ZWJraXQtbWF4LWNvbnRlbnQhaW1wb3J0YW50O21heC13aWR0aDotbW96LW1heC1jb250ZW50IWltcG9ydGFudDttYXgtd2lkdGg6bWF4LWNvbnRlbnQhaW1wb3J0YW50O21pbi13aWR0aDo4MHB4O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0ud2MtYmxvY2stZmlsdGVyLXRpdGxlLXBsYWNlaG9sZGVyPip7dmlzaWJpbGl0eTpoaWRkZW59LndjLWJsb2NrLWZpbHRlci10aXRsZS1wbGFjZWhvbGRlcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1maWx0ZXItdGl0bGUtcGxhY2Vob2xkZXJ7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndjLWJsb2NrLWZpbHRlci10aXRsZS1wbGFjZWhvbGRlcjphZnRlcntiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjY2NjLCNlMGUwZTAsI2NjYyl9LndjLWJsb2NrLWZpbHRlci10aXRsZS1wbGFjZWhvbGRlciAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX3RpdGxlLC53Yy1ibG9jay1maWx0ZXItdGl0bGUtcGxhY2Vob2xkZXIgLndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX3RpdGxlLC53Yy1ibG9jay1maWx0ZXItdGl0bGUtcGxhY2Vob2xkZXIgLndjLWJsb2NrLXByaWNlLWZpbHRlcl9fdGl0bGUsLndjLWJsb2NrLWZpbHRlci10aXRsZS1wbGFjZWhvbGRlciAud2MtYmxvY2stc3RvY2stZmlsdGVyX190aXRsZXtoZWlnaHQ6MWVtO21hcmdpbjowfS53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1yZXNldC1idXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lO2NvbG9yOmluaGVyaXQ7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmU7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXN0eWxlOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjA7cGFkZGluZzowO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtc2hhZG93Om5vbmU7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItcmVzZXQtYnV0dG9uOmFjdGl2ZSwud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItcmVzZXQtYnV0dG9uOmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1yZXNldC1idXR0b246aG92ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItcmVzZXQtYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1yZXNldC1idXR0b25bZGlzYWJsZWRde2N1cnNvcjpub3QtYWxsb3dlZH0ud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItc3VibWl0LWJ1dHRvbntib3JkZXI6bm9uZTtkaXNwbGF5OmJsb2NrO21hcmdpbi1sZWZ0OmF1dG87d2hpdGUtc3BhY2U6bm93cmFwfS53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1zdWJtaXQtYnV0dG9uLmlzLWxvYWRpbmd7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym9yZGVyLXJhZGl1czowO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxO2xpbmUtaGVpZ2h0Om5vcm1hbDttYXJnaW4tdG9wOjE2cHg7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3dpZHRoOi13ZWJraXQtbWF4LWNvbnRlbnQ7d2lkdGg6LW1vei1tYXgtY29udGVudDt3aWR0aDptYXgtY29udGVudDt6LWluZGV4OjF9LndjLWJsb2NrLWNvbXBvbmVudHMtZmlsdGVyLXN1Ym1pdC1idXR0b24uaXMtbG9hZGluZz4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1zdWJtaXQtYnV0dG9uLmlzLWxvYWRpbmc6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItc3VibWl0LWJ1dHRvbi5pcy1sb2FkaW5ney13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3ZlcntsZWZ0OjA7b3BhY2l0eTowO3Bvc2l0aW9uOmZpeGVkO3RvcDowO3otaW5kZXg6ei1pbmRleCgiLmNvbXBvbmVudHMtcG9wb3ZlciIpfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlci5pcy1leHBhbmRlZCwud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXJbZGF0YS14LWF4aXNdW2RhdGEteS1heGlzXXtvcGFjaXR5OjF9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyLmlzLWV4cGFuZGVke2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3RvcDowO3otaW5kZXg6ei1pbmRleCgiLmNvbXBvbmVudHMtcG9wb3ZlciIpIWltcG9ydGFudH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KXttYXJnaW4tbGVmdDoycHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdyk6YmVmb3Jle2JvcmRlcjo4cHggc29saWQgI2NjY30ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KS5pcy1hbHRlcm5hdGU6YmVmb3Jle2JvcmRlci1jb2xvcjojMWUxZTFlfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpOmFmdGVye2JvcmRlcjo4cHggc29saWQgI2ZmZn0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KTphZnRlciwud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KTpiZWZvcmV7Y29udGVudDoiIjtoZWlnaHQ6MDtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjB9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdylbZGF0YS15LWF4aXM9dG9wXXttYXJnaW4tdG9wOi04cHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdylbZGF0YS15LWF4aXM9dG9wXTpiZWZvcmV7Ym90dG9tOi04cHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdylbZGF0YS15LWF4aXM9dG9wXTphZnRlcntib3R0b206LTZweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KVtkYXRhLXktYXhpcz10b3BdOmFmdGVyLC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpW2RhdGEteS1heGlzPXRvcF06YmVmb3Jle2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItbGVmdC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItcmlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcC1zdHlsZTpzb2xpZDttYXJnaW4tbGVmdDotMTBweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KVtkYXRhLXktYXhpcz1ib3R0b21de21hcmdpbi10b3A6OHB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpW2RhdGEteS1heGlzPWJvdHRvbV06YmVmb3Jle3RvcDotOHB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpW2RhdGEteS1heGlzPWJvdHRvbV06YWZ0ZXJ7dG9wOi02cHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdylbZGF0YS15LWF4aXM9Ym90dG9tXTphZnRlciwud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KVtkYXRhLXktYXhpcz1ib3R0b21dOmJlZm9yZXtib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkO2JvcmRlci1sZWZ0LWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1yaWdodC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItdG9wOm5vbmU7bWFyZ2luLWxlZnQ6LTEwcHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdylbZGF0YS15LWF4aXM9bWlkZGxlXVtkYXRhLXgtYXhpcz1sZWZ0XXttYXJnaW4tbGVmdDotOHB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpW2RhdGEteS1heGlzPW1pZGRsZV1bZGF0YS14LWF4aXM9bGVmdF06YmVmb3Jle3JpZ2h0Oi04cHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdylbZGF0YS15LWF4aXM9bWlkZGxlXVtkYXRhLXgtYXhpcz1sZWZ0XTphZnRlcntyaWdodDotNnB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpW2RhdGEteS1heGlzPW1pZGRsZV1bZGF0YS14LWF4aXM9bGVmdF06YWZ0ZXIsLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyOm5vdCguaXMtd2l0aG91dC1hcnJvdylbZGF0YS15LWF4aXM9bWlkZGxlXVtkYXRhLXgtYXhpcz1sZWZ0XTpiZWZvcmV7Ym9yZGVyLWJvdHRvbS1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtib3JkZXItcmlnaHQ6bm9uZTtib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpW2RhdGEteS1heGlzPW1pZGRsZV1bZGF0YS14LWF4aXM9cmlnaHRde21hcmdpbi1sZWZ0OjhweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KVtkYXRhLXktYXhpcz1taWRkbGVdW2RhdGEteC1heGlzPXJpZ2h0XTpiZWZvcmV7bGVmdDotOHB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoLmlzLXdpdGhvdXQtYXJyb3cpW2RhdGEteS1heGlzPW1pZGRsZV1bZGF0YS14LWF4aXM9cmlnaHRdOmFmdGVye2xlZnQ6LTZweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KVtkYXRhLXktYXhpcz1taWRkbGVdW2RhdGEteC1heGlzPXJpZ2h0XTphZnRlciwud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXI6bm90KC5pcy13aXRob3V0LWFycm93KVtkYXRhLXktYXhpcz1taWRkbGVdW2RhdGEteC1heGlzPXJpZ2h0XTpiZWZvcmV7Ym9yZGVyLWJvdHRvbS1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItbGVmdDpub25lO2JvcmRlci1yaWdodC1zdHlsZTpzb2xpZDtib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3ZlcltkYXRhLXktYXhpcz10b3Bde2JvdHRvbToxMDAlfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3ZlcltkYXRhLXktYXhpcz1ib3R0b21de3RvcDoxMDAlfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3ZlcltkYXRhLXktYXhpcz1taWRkbGVde2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyLmlzLWZyb20tdG9we21hcmdpbi10b3A6MTJweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXIuaXMtZnJvbS1ib3R0b217bWFyZ2luLXRvcDotMTJweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXIuaXMtZnJvbS1sZWZ0Om5vdCguaXMtZnJvbS10b3ApOm5vdCguaXMtZnJvbS1ib3R0b20pe21hcmdpbi1sZWZ0OjEycHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyLmlzLWZyb20tcmlnaHQ6bm90KC5pcy1mcm9tLXRvcCk6bm90KC5pcy1mcm9tLWJvdHRvbSl7bWFyZ2luLXJpZ2h0OjEycHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyX19jb250ZW50e2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyLXJhZGl1czoycHg7Ym94LXNoYWRvdzowIDJweCA2cHggcmdiYSgwLDAsMCwuMDUpO2hlaWdodDoxMDAlfS5pcy1hbHRlcm5hdGUgLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyX19jb250ZW50e2JvcmRlcjoxcHggc29saWQgIzFlMWUxZTtib3gtc2hhZG93Om5vbmV9LmNvbXBvbmVudHMtcG9wb3ZlciAud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXJfX2NvbnRlbnR7aGVpZ2h0OmF1dG87b3ZlcmZsb3cteTphdXRvO3Bvc2l0aW9uOmFic29sdXRlfS5jb21wb25lbnRzLXBvcG92ZXIuaXMtZXhwYW5kZWQgLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyX19jb250ZW50e2JvcmRlcjpub25lO2JvcmRlci10b3A6MXB4IHNvbGlkICMxZTFlMWU7aGVpZ2h0OmNhbGMoMTAwJSAtIDQ4cHgpO21pbi13aWR0aDphdXRvO292ZXJmbG93LXk6dmlzaWJsZTtwb3NpdGlvbjpzdGF0aWN9LmNvbXBvbmVudHMtcG9wb3ZlcltkYXRhLXktYXhpcz10b3BdIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcl9fY29udGVudHtib3R0b206MTAwJX0uY29tcG9uZW50cy1wb3BvdmVyW2RhdGEteC1heGlzPWNlbnRlcl0gLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyX19jb250ZW50e2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpfS5jb21wb25lbnRzLXBvcG92ZXJbZGF0YS14LWF4aXM9cmlnaHRdIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtcG9wb3Zlcl9fY29udGVudHtsZWZ0OjEwMCU7cG9zaXRpb246YWJzb2x1dGV9LmNvbXBvbmVudHMtcG9wb3Zlcjpub3QoW2RhdGEteS1heGlzPW1pZGRsZV0pW2RhdGEteC1heGlzPXJpZ2h0XSAud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXJfX2NvbnRlbnR7bWFyZ2luLWxlZnQ6LTI1cHh9LmNvbXBvbmVudHMtcG9wb3ZlcltkYXRhLXgtYXhpcz1sZWZ0XSAud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXJfX2NvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTAwJX0uY29tcG9uZW50cy1wb3BvdmVyOm5vdChbZGF0YS15LWF4aXM9bWlkZGxlXSlbZGF0YS14LWF4aXM9bGVmdF0gLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1wb3BvdmVyX19jb250ZW50e21hcmdpbi1yaWdodDotMjVweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXJfX2hlYWRlcnthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZDojZmZmO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NDhweDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjAgOHB4IDAgMTZweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXJfX2hlYWRlci10aXRsZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJX0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXBvcG92ZXJfX2Nsb3NlLmNvbXBvbmVudHMtYnV0dG9ue3otaW5kZXg6ei1pbmRleCgiLmNvbXBvbmVudHMtcG9wb3Zlcl9fY2xvc2UiKX0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXRvb2x0aXAuY29tcG9uZW50cy1wb3BvdmVye3otaW5kZXg6ei1pbmRleCgiLmNvbXBvbmVudHMtdG9vbHRpcCIpfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtdG9vbHRpcC5jb21wb25lbnRzLXBvcG92ZXIgLmNvbXBvbmVudHMtcG9wb3Zlcl9fY29udGVudHttaW4td2lkdGg6MH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXRvb2x0aXAgLmNvbXBvbmVudHMtcG9wb3Zlcl9fY29udGVudHtiYWNrZ3JvdW5kOiMxZTFlMWU7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyLXdpZHRoOjA7Ym94LXNoYWRvdzpub25lO2NvbG9yOiNmZmY7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS40O3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLXRvb2x0aXAgLmNvbXBvbmVudHMtcG9wb3Zlcl9fY29udGVudD5kaXZ7cGFkZGluZzo0cHggOHB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtdG9vbHRpcF9fc2hvcnRjdXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6OHB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmRpc2FibGVkLWVsZW1lbnQtd3JhcHBlcntwb3NpdGlvbjpyZWxhdGl2ZX0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5kaXNhYmxlZC1lbGVtZW50LXdyYXBwZXIgLmV2ZW50LWNhdGNoZXJ7Ym90dG9tOjA7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6MTAwJTt6LWluZGV4OnotaW5kZXgoIi5jb21wb25lbnRzLXRvb2x0aXAgLmV2ZW50LWNhdGNoZXIiKX0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVye2JvcmRlci1jb2xvcjojOTQ5NDk0fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fbGFiZWwsLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy12aXN1YWxseS1oaWRkZW57Y2xpcDpyZWN0KDFweCwxcHgsMXB4LDFweCk7d29yZC13cmFwOm5vcm1hbCFpbXBvcnRhbnQ7Ym9yZGVyOjA7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoNTAlKTtjbGlwLXBhdGg6aW5zZXQoNTAlKTtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtvdmVyZmxvdy13cmFwOm5vcm1hbCFpbXBvcnRhbnQ7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt3aWR0aDoxcHh9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVye2JvcmRlci1jb2xvcjppbmhlcml0O2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXJnaW4tYm90dG9tOjB9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dC1jb250YWluZXJ7Ym9yZGVyLXJhZGl1czowO2JveC1zaGFkb3c6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZX0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lciBpbnB1dFt0eXBlPXRleHRdLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXR7bWluLWhlaWdodDozMHB4fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fcmVtb3ZlLXRva2VuLmNvbXBvbmVudHMtYnV0dG9uLC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4tdGV4dHtiYWNrZ3JvdW5kOiNlMGUwZTB9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19yZW1vdmUtdG9rZW57Ym9yZGVyOm5vbmV9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0e2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICM5NDk0OTQ7Ym9yZGVyLXRvcDowIHNvbGlkICM5NDk0OTQ7bGVmdDotMXB4O21hcmdpbjoxcHggMCAwO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0Oi0xcHg7dG9wOjEwMCU7ei1pbmRleDo1MH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3Q6ZW1wdHl7ZGlzcGxheTpub25lfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbntwYWRkaW5nOjhweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb24uaXMtc2VsZWN0ZWR7YmFja2dyb3VuZDojZjBmMGYwO2NvbG9yOiMyZjJmMmZ9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlci5zaW5nbGUtc2VsZWN0aW9uIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2Vue21hcmdpbi1yaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlci5zaW5nbGUtc2VsZWN0aW9uIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3JlbW92ZS10b2tlbi5jb21wb25lbnRzLWJ1dHRvbiwud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyLnNpbmdsZS1zZWxlY3Rpb24gLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4tdGV4dHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIuc2luZ2xlLXNlbGVjdGlvbiAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi10ZXh0e3BhZGRpbmctbGVmdDo0cHg7d2lkdGg6MTAwJX0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyLnNpbmdsZS1zZWxlY3Rpb24gLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4raW5wdXRbdHlwZT10ZXh0XS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0e3Bvc2l0aW9uOmFic29sdXRlfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIuc2luZ2xlLXNlbGVjdGlvbiAuaXMtYWN0aXZlIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuK2lucHV0W3R5cGU9dGV4dF0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dHtib3JkZXI6MXB4IHNvbGlkICM5NDk0OTQ7bWFyZ2luOjAgMnB4IDRweDtwYWRkaW5nOjAgNXB4O3Bvc2l0aW9uOnN0YXRpY30ud2MtYmxvY2stY29tcG9uZW50cy1mb3JtYXR0ZWQtbW9uZXktYW1vdW50e3doaXRlLXNwYWNlOm5vd3JhcH0ud2MtYmxvY2stY29tcG9uZW50cy1sb2FkLW1vcmV7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MTAwJX0ud2MtYmxvY2stY29tcG9uZW50cy1sb2FkaW5nLW1hc2t7bWluLWhlaWdodDozNHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWNvbXBvbmVudHMtbG9hZGluZy1tYXNrIC5jb21wb25lbnRzLXNwaW5uZXJ7bGVmdDo1MCU7bWFyZ2luOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9LndjLWJsb2NrLWNvbXBvbmVudHMtbG9hZGluZy1tYXNrIC53Yy1ibG9jay1jb21wb25lbnRzLWxvYWRpbmctbWFza19fY2hpbGRyZW57b3BhY2l0eTouMjV9LndjLWJsb2NrLWNvbXBvbmVudHMtcGFnaW5hdGlvbnttYXJnaW46MCBhdXRvIDE2cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtcGFnaW5hdGlvbl9fZWxsaXBzaXMsLndjLWJsb2NrLWNvbXBvbmVudHMtcGFnaW5hdGlvbl9fcGFnZXtjb2xvcjojMzMzO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxZW07Zm9udC13ZWlnaHQ6NDAwfS53Yy1ibG9jay1jb21wb25lbnRzLXBhZ2luYXRpb25fX3BhZ2V7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O21pbi13aWR0aDoyLjJlbTtwYWRkaW5nOi4zZW0gLjZlbX1AbWVkaWEobWF4LXdpZHRoOjc4MnB4KXsud2MtYmxvY2stY29tcG9uZW50cy1wYWdpbmF0aW9uX19wYWdle21pbi13aWR0aDoxLjZlbTtwYWRkaW5nOi4xZW0gLjJlbX19LndjLWJsb2NrLWNvbXBvbmVudHMtcGFnaW5hdGlvbl9fcGFnZTpub3QoLnRvZ2dsZSl7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ud2MtYmxvY2stY29tcG9uZW50cy1wYWdpbmF0aW9uX19lbGxpcHNpc3twYWRkaW5nOi4zZW19QG1lZGlhKG1heC13aWR0aDo3ODJweCl7LndjLWJsb2NrLWNvbXBvbmVudHMtcGFnaW5hdGlvbl9fZWxsaXBzaXN7cGFkZGluZzouMWVtfX0ud2MtYmxvY2stY29tcG9uZW50cy1wYWdpbmF0aW9uX19wYWdlLS1hY3RpdmVbZGlzYWJsZWRde2NvbG9yOiMzMzM7Zm9udC13ZWlnaHQ6NzAwO29wYWNpdHk6MSFpbXBvcnRhbnR9LndjLWJsb2NrLWNvbXBvbmVudHMtcGFnaW5hdGlvbl9fcGFnZS0tYWN0aXZlW2Rpc2FibGVkXTpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy1wYWdpbmF0aW9uX19wYWdlLS1hY3RpdmVbZGlzYWJsZWRdOmhvdmVye2JhY2tncm91bmQtY29sb3I6aW5oZXJpdDtjb2xvcjojMzMzO29wYWNpdHk6MSFpbXBvcnRhbnR9aHRtbFtkaXI9cnRsXSAud2MtYmxvY2stY29tcG9uZW50cy1wYWdpbmF0aW9uLXBhZ2UtLWFycm93IHNwYW57ZGlzcGxheTppbmxpbmUtYmxvY2s7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVye21hcmdpbi1ib3R0b206MjRweH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXIuaXMtbG9hZGluZy5pcy1kaXNhYmxlZCAud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItcmVzZXQtYnV0dG9uLC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1zdWJtaXQtYnV0dG9uLC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1yZXNldC1idXR0b24+Kiwud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXIuaXMtbG9hZGluZy5pcy1kaXNhYmxlZCAud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItc3VibWl0LWJ1dHRvbj4qLC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcj4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1yZXNldC1idXR0b246YWZ0ZXIsLndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyLmlzLWxvYWRpbmcuaXMtZGlzYWJsZWQgLndjLWJsb2NrLWNvbXBvbmVudHMtZmlsdGVyLXN1Ym1pdC1idXR0b246YWZ0ZXIsLndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyLmlzLWxvYWRpbmcuaXMtZGlzYWJsZWQgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC13cmFwcGVyOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyLmlzLWxvYWRpbmcuaXMtZGlzYWJsZWQgLndjLWJsb2NrLWNvbXBvbmVudHMtZmlsdGVyLXJlc2V0LWJ1dHRvbiwud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXIuaXMtbG9hZGluZy5pcy1kaXNhYmxlZCAud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItc3VibWl0LWJ1dHRvbiwud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXIuaXMtbG9hZGluZy5pcy1kaXNhYmxlZCAud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LXdyYXBwZXJ7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyLmlzLWxvYWRpbmcuaXMtZGlzYWJsZWQgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19hbW91bnR7ZGlzcGxheTpub25lfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1kaXNhYmxlZDpub3QoLmlzLWxvYWRpbmcpIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fYW1vdW50LC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1kaXNhYmxlZDpub3QoLmlzLWxvYWRpbmcpIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fYnV0dG9uLC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1kaXNhYmxlZDpub3QoLmlzLWxvYWRpbmcpIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kOiNkZGQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NHB4O2NsZWFyOmJvdGg7ZmxleC1ncm93OjE7aGVpZ2h0OjRweDttYXJnaW46MTVweCAwO291dGxpbmU6bm9uZTtwYWRkaW5nOjAhaW1wb3J0YW50O3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlci5pcy1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JvcmRlci1yYWRpdXM6MDtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0Oi41NjI1ZW07bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlci5pcy1sb2FkaW5nPip7dmlzaWJpbGl0eTpoaWRkZW59LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC13cmFwcGVyLmlzLWxvYWRpbmc6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LXdyYXBwZXIuaXMtbG9hZGluZ3std2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LXByb2dyZXNzey0tdHJhY2stYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQgdmFyKC0tbG93KSx2YXIoLS1yYW5nZS1jb2xvcikgMCx2YXIoLS1yYW5nZS1jb2xvcikgdmFyKC0taGlnaCksdHJhbnNwYXJlbnQgMCkgbm8tcmVwZWF0IDAgMTAwJS8xMDAlIDEwMCU7LS1yYW5nZS1jb2xvcjojMWUxZTFlO2JhY2tncm91bmQ6dmFyKC0tdHJhY2stYmFja2dyb3VuZCk7aGVpZ2h0OjRweDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX2NvbnRyb2xze2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7Z2FwOjhweDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjttYXJnaW46MTZweCAwfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19hbW91bnR7Ym9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyLXdpZHRoOjFweDttYXJnaW46MDttYXgtd2lkdGg6ODBweDttaW4td2lkdGg6MDtwYWRkaW5nOjhweDt3aWR0aDphdXRvfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci0taXMtaW5wdXQtaW5saW5lIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19hbW91bnR7bWF4LXdpZHRoOjYwcHh9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX2Ftb3VudC5pcy1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JvcmRlci1yYWRpdXM6MCFpbXBvcnRhbnQ7Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3dpZHRoOi13ZWJraXQtbWF4LWNvbnRlbnQ7d2lkdGg6LW1vei1tYXgtY29udGVudDt3aWR0aDptYXgtY29udGVudDt6LWluZGV4OjF9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX2Ftb3VudC5pcy1sb2FkaW5nPip7dmlzaWJpbGl0eTpoaWRkZW59LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX2Ftb3VudC5pcy1sb2FkaW5nOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX2Ftb3VudC5pcy1sb2FkaW5ney13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9fS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtdGV4dHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21hcmdpbjoyNHB4IDB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19hY3Rpb25ze2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7Z2FwOjE2cHg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fYWN0aW9ucyBidXR0b25bdHlwZT1zdWJtaXRdOm5vdCgud3AtYmxvY2stc2VhcmNoX19idXR0b24pLndjLWJsb2NrLWNvbXBvbmVudHMtZmlsdGVyLXN1Ym1pdC1idXR0b257bWFyZ2luLWxlZnQ6MDttYXJnaW4tdG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dHstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MCFpbXBvcnRhbnQ7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtsZWZ0OjA7bWFyZ2luOjA7b3V0bGluZTpub25lO291dGxpbmU6bm9uZSFpbXBvcnRhbnQ7cGFkZGluZzowIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCV9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2N1cnNvcjpkZWZhdWx0O2hlaWdodDoxcHg7b3V0bGluZTowfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtcG9zaXRpb246MCAwO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MnB4IHNvbGlkICMxZTFlMWU7Ym9yZGVyLXJhZGl1czoxMDAlO2JveC1zaXppbmc6Y29udGVudC1ib3g7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OjEycHg7bWFyZ2luOi01cHggMCAwO3BhZGRpbmc6MDtwb2ludGVyLWV2ZW50czphdXRvOy13ZWJraXQtdHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDt2ZXJ0aWNhbC1hbGlnbjp0b3A7d2lkdGg6MTJweDt6LWluZGV4OjIwfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6IzFlMWUxZX0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0Ojotd2Via2l0LXNsaWRlci1wcm9ncmVzc3std2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MCFpbXBvcnRhbnQ7bWFyZ2luOjA7b3V0bGluZTpub25lO3BhZGRpbmc6MCFpbXBvcnRhbnR9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1vei1mb2N1cy1vdXRlcntib3JkZXI6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OjotbW96LXJhbmdlLXRyYWNrey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtjdXJzb3I6ZGVmYXVsdDtoZWlnaHQ6MXB4O291dGxpbmU6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OjotbW96LXJhbmdlLXByb2dyZXNzey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjowIWltcG9ydGFudDttYXJnaW46MDtvdXRsaW5lOm5vbmU7cGFkZGluZzowIWltcG9ydGFudH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OjotbW96LXJhbmdlLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtcG9zaXRpb246MCAwO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MnB4IHNvbGlkICMxZTFlMWU7Ym9yZGVyLXJhZGl1czoxMDAlO2JveC1zaXppbmc6Y29udGVudC1ib3g7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OjEycHg7bWFyZ2luOjA7cGFkZGluZzowO3BvaW50ZXItZXZlbnRzOmF1dG87LW1vei10cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0O3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDoxMnB4O3otaW5kZXg6MjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1vei1yYW5nZS10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiMxZTFlMWV9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1zLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtcG9zaXRpb246MCAwO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MnB4IHNvbGlkICMxZTFlMWU7Ym9yZGVyLXJhZGl1czoxMDAlO2JveC1zaXppbmc6Y29udGVudC1ib3g7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OjEycHg7bWFyZ2luOjA7cGFkZGluZzowO3BvaW50ZXItZXZlbnRzOmF1dG87LW1zLXRyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQ7dmVydGljYWwtYWxpZ246dG9wO3dpZHRoOjEycHg7ei1pbmRleDoyMH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OjotbXMtdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojMWUxZTFlfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQ6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1ie2JhY2tncm91bmQ6IzFlMWUxZX0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OmZvY3VzOjotbW96LXJhbmdlLXRodW1ie2JhY2tncm91bmQ6IzFlMWUxZX0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OmZvY3VzOjotbXMtdGh1bWJ7YmFja2dyb3VuZDojMWUxZTFlfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LS1taW57ei1pbmRleDoyMX0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC0tbWluOjotd2Via2l0LXNsaWRlci10aHVtYntiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6bGVmdDttYXJnaW4tbGVmdDotMnB4fS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LS1taW46Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZC1wb3NpdGlvbi14OmxlZnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMnB4LDJweCl9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtLW1pbjo6LW1zLXRodW1ie2JhY2tncm91bmQtcG9zaXRpb24teDpsZWZ0fS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LS1tYXh7ei1pbmRleDoyMH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC0tbWF4Ojotd2Via2l0LXNsaWRlci10aHVtYntiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6cmlnaHQ7bWFyZ2luLWxlZnQ6MnB4fS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LS1tYXg6Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZC1wb3NpdGlvbi14OnJpZ2h0O3RyYW5zZm9ybTp0cmFuc2xhdGUoMnB4LDJweCl9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtLW1heDo6LW1zLXRodW1ie2JhY2tncm91bmQtcG9zaXRpb24teDpyaWdodH0ucnRsIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtcHJvZ3Jlc3N7LS10cmFjay1iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgyNzBkZWcsdHJhbnNwYXJlbnQgdmFyKC0tbG93KSx2YXIoLS1yYW5nZS1jb2xvcikgMCx2YXIoLS1yYW5nZS1jb2xvcikgdmFyKC0taGlnaCksdHJhbnNwYXJlbnQgMCkgbm8tcmVwZWF0IDAgMTAwJS8xMDAlIDEwMCU7LS1yYW5nZS1jb2xvcjojYWY3ZGQxO2JhY2tncm91bmQ6dmFyKC0tdHJhY2stYmFja2dyb3VuZCl9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDpub25lKSxzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpey53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6bm9uZTtoZWlnaHQ6MjRweH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LXByb2dyZXNze2JhY2tncm91bmQ6I2FmN2RkMTt0b3A6N3B4O3dpZHRoOjEwMCV9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dHtoZWlnaHQ6MjRweDtwb2ludGVyLWV2ZW50czphdXRvfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQ6Oi1tcy10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItd2lkdGg6N3B4IDA7Y29sb3I6dHJhbnNwYXJlbnR9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1zLWZpbGwtbG93ZXJ7YmFja2dyb3VuZDojZTFlMWUxO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNiOGI4Yjh9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1zLWZpbGwtdXBwZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OjotbXMtdG9vbHRpcHtkaXNwbGF5Om5vbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1zLXRodW1ie3BvaW50ZXItZXZlbnRzOmF1dG87dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgpfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtLW1heDo6LW1zLWZpbGwtdXBwZXJ7YmFja2dyb3VuZDojZTFlMWUxO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNiOGI4Yjh9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC0tbWF4OjotbXMtZmlsbC1sb3dlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcj4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX19QG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSlhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSxzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDpub25lKWFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0Om5vbmUpLHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSl7LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyLmlzLWRpc2FibGVkOm5vdCguaXMtbG9hZGluZykgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC13cmFwcGVyey13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9fUBzdXBwb3J0cygtbXMtaW1lLWFsaWduOmF1dG8pey53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6bm9uZTtoZWlnaHQ6MjRweH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LXByb2dyZXNze2JhY2tncm91bmQ6I2FmN2RkMTt0b3A6N3B4O3dpZHRoOjEwMCV9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dHtoZWlnaHQ6MjRweDtwb2ludGVyLWV2ZW50czphdXRvfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQ6Oi1tcy10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItd2lkdGg6N3B4IDA7Y29sb3I6dHJhbnNwYXJlbnR9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1zLWZpbGwtbG93ZXJ7YmFja2dyb3VuZDojZTFlMWUxO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNiOGI4Yjh9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1zLWZpbGwtdXBwZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0OjotbXMtdG9vbHRpcHtkaXNwbGF5Om5vbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dDo6LW1zLXRodW1ie3BvaW50ZXItZXZlbnRzOmF1dG87dHJhbnNmb3JtOnRyYW5zbGF0ZSgxcHgpfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtLW1heDo6LW1zLWZpbGwtdXBwZXJ7YmFja2dyb3VuZDojZTFlMWUxO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNiOGI4Yjh9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC0tbWF4OjotbXMtZmlsbC1sb3dlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcj4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlci5pcy1sb2FkaW5nLmlzLWRpc2FibGVkIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXIuaXMtZGlzYWJsZWQ6bm90KC5pcy1sb2FkaW5nKSAud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LXdyYXBwZXJ7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LXdyYXBwZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6M3B4IHNvbGlkO2JveC1zaXppbmc6Ym9yZGVyLWJveH0udGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtcHJvZ3Jlc3N7LS1yYW5nZS1jb2xvcjpjdXJyZW50Q29sb3I7bWFyZ2luOi0zcHh9LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stcHJpY2UtZmlsdGVyX19yYW5nZS1pbnB1dHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O21hcmdpbjotM3B4O3dpZHRoOmNhbGMoMTAwJSArIDZweCl9LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stcHJpY2UtZmlsdGVyX19yYW5nZS1pbnB1dDpmb2N1czo6LXdlYmtpdC1zbGlkZXItdGh1bWIsLnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stcHJpY2UtZmlsdGVyX19yYW5nZS1pbnB1dDpob3Zlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7ZmlsdGVyOm5vbmV9LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stcHJpY2UtZmlsdGVyX19yYW5nZS1pbnB1dDpmb2N1czo6LW1vei1yYW5nZS10aHVtYiwudGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1wcmljZS1maWx0ZXJfX3JhbmdlLWlucHV0OmhvdmVyOjotbW96LXJhbmdlLXRodW1ie2ZpbHRlcjpub25lfS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLXByaWNlLWZpbHRlcl9fcmFuZ2UtaW5wdXQ6Zm9jdXM6Oi1tcy10aHVtYiwudGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1wcmljZS1maWx0ZXJfX3JhbmdlLWlucHV0OmhvdmVyOjotbXMtdGh1bWJ7ZmlsdGVyOm5vbmV9LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAud2MtYmxvY2stcHJpY2UtZmlsdGVyX19yYW5nZS1pbnB1dDo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7bWFyZ2luLXRvcDotOXB4fS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLXByaWNlLWZpbHRlcl9fcmFuZ2UtaW5wdXQud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX3JhbmdlLWlucHV0LS1tYXg6Oi1tb3otcmFuZ2UtdGh1bWJ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgycHgsMXB4KX0udGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1wcmljZS1maWx0ZXJfX3JhbmdlLWlucHV0LndjLWJsb2NrLWNvbXBvbmVudHMtcHJpY2Utc2xpZGVyX19yYW5nZS1pbnB1dC0tbWluOjotbW96LXJhbmdlLXRodW1ie3RyYW5zZm9ybTp0cmFuc2xhdGUoLTJweCwxcHgpfS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLXByaWNlLWZpbHRlcl9fcmFuZ2UtaW5wdXQ6Oi1tcy10cmFja3tib3JkZXItY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSksc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKXsudGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtd3JhcHBlcntib3JkZXI6MDtoZWlnaHQ6YXV0bztoZWlnaHQ6NTBweDtwb3NpdGlvbjpyZWxhdGl2ZX0udGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1jb21wb25lbnRzLXByaWNlLXNsaWRlcl9fcmFuZ2UtaW5wdXQtcHJvZ3Jlc3N7ZGlzcGxheTpub25lfS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLXByaWNlLWZpbHRlcl9fcmFuZ2UtaW5wdXR7aGVpZ2h0OjEwMCU7bWFyZ2luOjA7d2lkdGg6MTAwJX19LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1zb3J0LXNlbGVjdHttYXJnaW4tYm90dG9tOjI0cHg7dGV4dC1hbGlnbjpsZWZ0fUAtd2Via2l0LWtleWZyYW1lcyBzcGluezAle3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9dG97dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUBrZXlmcmFtZXMgc3BpbnswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0ud2MtYmxvY2stZ3JpZHt0ZXh0LWFsaWduOmNlbnRlcn0ud2MtYmxvY2stZ3JpZF9fbm8tcHJvZHVjdHN7cGFkZGluZzo0MHB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9LndjLWJsb2NrLWdyaWRfX25vLXByb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19uby1wcm9kdWN0cy1pbWFnZXtjb2xvcjppbmhlcml0O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgYXV0byAxZW07bWF4LXdpZHRoOjE1MHB4fS53Yy1ibG9jay1ncmlkX19uby1wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fbm8tcHJvZHVjdHMtdGl0bGV7ZGlzcGxheTpibG9jaztmb250LXdlaWdodDo3MDA7bWFyZ2luOjB9LndjLWJsb2NrLWdyaWRfX25vLXByb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19uby1wcm9kdWN0cy1kZXNjcmlwdGlvbntkaXNwbGF5OmJsb2NrO21hcmdpbjouMjVlbSAwIDFlbX0ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDttYXJnaW46MCAtOHB4IDE2cHg7cGFkZGluZzowfS53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2JvcmRlci1ib3R0b206MTZweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItbGVmdDo4cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjhweCBzb2xpZCB0cmFuc3BhcmVudDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZmxvYXQ6bm9uZTtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOmF1dG99LndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Qud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtYWxpZ25lZC1idXR0b25zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LC53Yy1ibG9jay1ncmlkLmhhcy1hbGlnbmVkLWJ1dHRvbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0udGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkLmhhcy1hbGlnbmVkLWJ1dHRvbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q+Omxhc3QtY2hpbGQsLndjLWJsb2NrLWdyaWQuaGFzLWFsaWduZWQtYnV0dG9ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdD46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjA7bWFyZ2luLXRvcDphdXRvO3BhZGRpbmctYm90dG9tOjEycHh9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtMS1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LC53Yy1ibG9jay1ncmlkLmhhcy0xLWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0udGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkLmhhcy0yLWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QsLndjLWJsb2NrLWdyaWQuaGFzLTItY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHtmbGV4OjEgMCA1MCU7bWF4LXdpZHRoOjUwJX0udGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkLmhhcy0zLWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QsLndjLWJsb2NrLWdyaWQuaGFzLTMtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHtmbGV4OjEgMCAzMy4zMzMzMzMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMzMzMzMyV9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtNC1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LC53Yy1ibG9jay1ncmlkLmhhcy00LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgMjUlO21heC13aWR0aDoyNSV9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtNS1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LC53Yy1ibG9jay1ncmlkLmhhcy01LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgMjAlO21heC13aWR0aDoyMCV9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtNi1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LC53Yy1ibG9jay1ncmlkLmhhcy02LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgMTYuNjY2NjY2NjY2NyU7bWF4LXdpZHRoOjE2LjY2NjY2NjY2NjclfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWQuaGFzLTctY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCwud2MtYmxvY2stZ3JpZC5oYXMtNy1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDE0LjI4NTcxNDI4NTclO21heC13aWR0aDoxNC4yODU3MTQyODU3JX0udGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1ncmlkLmhhcy04LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QsLndjLWJsb2NrLWdyaWQuaGFzLTgtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHtmbGV4OjEgMCAxMi41JTttYXgtd2lkdGg6MTIuNSV9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtNi1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LC53Yy1ibG9jay1ncmlkLmhhcy02LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7Zm9udC1zaXplOi41ZW19LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtNS1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWQuaGFzLTYtY29sdW1ucy5hbGlnbmZ1bGwgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QsLndjLWJsb2NrLWdyaWQuaGFzLTUtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCwud2MtYmxvY2stZ3JpZC5oYXMtNi1jb2x1bW5zLmFsaWduZnVsbCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHtmb250LXNpemU6LjU4ZW19LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtNC1jb2x1bW5zOm5vdCguYWxpZ253aWRlKTpub3QoLmFsaWduZnVsbCkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QsLnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stZ3JpZC5oYXMtNS1jb2x1bW5zLmFsaWduZnVsbCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCwud2MtYmxvY2stZ3JpZC5oYXMtNC1jb2x1bW5zOm5vdCguYWxpZ253aWRlKTpub3QoLmFsaWduZnVsbCkgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QsLndjLWJsb2NrLWdyaWQuaGFzLTUtY29sdW1ucy5hbGlnbmZ1bGwgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7Zm9udC1zaXplOi43NWVtfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWdyaWQuaGFzLTMtY29sdW1uczpub3QoLmFsaWdud2lkZSk6bm90KC5hbGlnbmZ1bGwpLC53Yy1ibG9jay1ncmlkLmhhcy0zLWNvbHVtbnM6bm90KC5hbGlnbndpZGUpOm5vdCguYWxpZ25mdWxsKXtmb250LXNpemU6LjkyZW19QG1lZGlhKG1heC13aWR0aDo0ODBweCl7LndjLWJsb2NrLWdyaWQuaGFzLTItY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stZ3JpZC5oYXMtMi1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9LndjLWJsb2NrLWdyaWQuaGFzLTMtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stZ3JpZC5oYXMtMy1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9LndjLWJsb2NrLWdyaWQuaGFzLTQtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stZ3JpZC5oYXMtNC1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9LndjLWJsb2NrLWdyaWQuaGFzLTUtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stZ3JpZC5oYXMtNS1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9LndjLWJsb2NrLWdyaWQuaGFzLTYtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stZ3JpZC5oYXMtNi1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9LndjLWJsb2NrLWdyaWQuaGFzLTctY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stZ3JpZC5oYXMtNy1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9LndjLWJsb2NrLWdyaWQuaGFzLTgtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHN7ZGlzcGxheTpibG9ja30ud2MtYmxvY2stZ3JpZC5oYXMtOC1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0e2ZsZXg6MSAwIDEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9fUBtZWRpYShtaW4td2lkdGg6NDgxcHgpYW5kIChtYXgtd2lkdGg6NjAwcHgpey53Yy1ibG9jay1ncmlkLmhhcy0yLWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgNTAlO21hcmdpbjowIDAgMjRweDttYXgtd2lkdGg6NTAlO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZC5oYXMtMi1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0Om50aC1jaGlsZChvZGQpe3BhZGRpbmctcmlnaHQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy0yLWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6bnRoLWNoaWxkKDJuKXtwYWRkaW5nLWxlZnQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy0zLWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgNTAlO21hcmdpbjowIDAgMjRweDttYXgtd2lkdGg6NTAlO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZC5oYXMtMy1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0Om50aC1jaGlsZChvZGQpe3BhZGRpbmctcmlnaHQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy0zLWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6bnRoLWNoaWxkKDJuKXtwYWRkaW5nLWxlZnQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy00LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgNTAlO21hcmdpbjowIDAgMjRweDttYXgtd2lkdGg6NTAlO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZC5oYXMtNC1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0Om50aC1jaGlsZChvZGQpe3BhZGRpbmctcmlnaHQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy00LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6bnRoLWNoaWxkKDJuKXtwYWRkaW5nLWxlZnQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy01LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgNTAlO21hcmdpbjowIDAgMjRweDttYXgtd2lkdGg6NTAlO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZC5oYXMtNS1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0Om50aC1jaGlsZChvZGQpe3BhZGRpbmctcmlnaHQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy01LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6bnRoLWNoaWxkKDJuKXtwYWRkaW5nLWxlZnQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy02LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgNTAlO21hcmdpbjowIDAgMjRweDttYXgtd2lkdGg6NTAlO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZC5oYXMtNi1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0Om50aC1jaGlsZChvZGQpe3BhZGRpbmctcmlnaHQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy02LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6bnRoLWNoaWxkKDJuKXtwYWRkaW5nLWxlZnQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy03LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgNTAlO21hcmdpbjowIDAgMjRweDttYXgtd2lkdGg6NTAlO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZC5oYXMtNy1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0Om50aC1jaGlsZChvZGQpe3BhZGRpbmctcmlnaHQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy03LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6bnRoLWNoaWxkKDJuKXtwYWRkaW5nLWxlZnQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy04LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3R7ZmxleDoxIDAgNTAlO21hcmdpbjowIDAgMjRweDttYXgtd2lkdGg6NTAlO3BhZGRpbmc6MH0ud2MtYmxvY2stZ3JpZC5oYXMtOC1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0Om50aC1jaGlsZChvZGQpe3BhZGRpbmctcmlnaHQ6OHB4fS53Yy1ibG9jay1ncmlkLmhhcy04LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6bnRoLWNoaWxkKDJuKXtwYWRkaW5nLWxlZnQ6OHB4fX0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW5hbWV7Zm9udC1zaXplOjFlbTtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDstbXMtd29yZC1icmVhazpicmVhay1hbGx9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZS0tYWxpZ24tbGVmdHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246bGVmdH0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNlLS1hbGlnbi1jZW50ZXJ7ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcn0ud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNlLS1hbGlnbi1yaWdodHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246cmlnaHR9LndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZV9fdmFsdWUuaXMtZGlzY291bnRlZHttYXJnaW4tbGVmdDouNWVtfS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcHJpY2U6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7Y29udGVudDoiLiI7ZGlzcGxheTpibG9jaztkaXNwbGF5OmlubGluZS1ibG9jaztsaW5lLWhlaWdodDoxO21heC13aWR0aDoxMDAlIWltcG9ydGFudDtvdXRsaW5lOjAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTt3aWR0aDo1ZW07ei1pbmRleDoxfS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcHJpY2U6YmVmb3JlPip7dmlzaWJpbGl0eTpoaWRkZW59LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZTpiZWZvcmU6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNlOmJlZm9yZXstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3Rvcntib3JkZXItcmFkaXVzOjRweDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2Rpc3BsYXk6ZmxleDttYXJnaW46MCAwIC4yNWVtO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwN3B4fS53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yOmFmdGVye2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLXJhZGl1czo0cHg7Ym90dG9tOjA7Y29udGVudDoiIjtsZWZ0OjA7b3BhY2l0eTouNDU7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfS53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yIGlucHV0LndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3JfX2lucHV0ey13ZWJraXQtYXBwZWFyYW5jZTp0ZXh0ZmllbGQ7LW1vei1hcHBlYXJhbmNlOnRleHRmaWVsZDthcHBlYXJhbmNlOnRleHRmaWVsZDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjowO2JveC1zaGFkb3c6bm9uZTtjb2xvcjpjdXJyZW50Q29sb3I7ZmxleDoxIDEgYXV0bztmb250LXNpemU6MWVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxO21hcmdpbjowO21pbi13aWR0aDo0MHB4O29yZGVyOjI7cGFkZGluZzouNGVtIDA7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlfS53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yIGlucHV0LndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3JfX2lucHV0OmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAwIDFweCAxcHggY3VycmVudENvbG9yO291dGxpbmU6bm9uZX0ud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3RvciBpbnB1dC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yX19pbnB1dDpkaXNhYmxlZHtvcGFjaXR5Oi42fS53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yIGlucHV0Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yIGlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lO21hcmdpbjowfS53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yIC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yX19idXR0b257YmFja2dyb3VuZDpub25lIHRyYW5zcGFyZW50O2JvcmRlcjowO2JveC1zaGFkb3c6bm9uZTtjb2xvcjpjdXJyZW50Q29sb3I7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi45ZW07Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowO21pbi13aWR0aDozMHB4O29wYWNpdHk6LjY7cGFkZGluZzowO3RleHQtYWxpZ246Y2VudGVyO3RleHQtZGVjb3JhdGlvbjpub25lfS53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yIC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yX19idXR0b246Zm9jdXN7Ym94LXNoYWRvdzppbnNldCAwIDAgMXB4IDFweCBjdXJyZW50Q29sb3I7b3V0bGluZTpub25lfS53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yIC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yX19idXR0b246Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3IgLndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3JfX2J1dHRvbjpob3ZlcntvcGFjaXR5OjF9LndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3IgLndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3JfX2J1dHRvbjpkaXNhYmxlZHtib3gtc2hhZG93Om5vbmU7Y3Vyc29yOmRlZmF1bHQ7b3BhY2l0eTouNn0ud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3Rvcj4ud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3Rvcl9fYnV0dG9uLS1taW51c3tib3JkZXItcmFkaXVzOjRweCAwIDAgNHB4O29yZGVyOjF9LndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3I+LndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3JfX2J1dHRvbi0tcGx1c3tib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwO29yZGVyOjN9LnRoZW1lLXR3ZW50eXNldmVudGVlbiAud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3RvciAud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3Rvcl9fYnV0dG9uOmZvY3VzLC50aGVtZS10d2VudHlzZXZlbnRlZW4gLndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3IgLndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3JfX2J1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOm5vbmUgdHJhbnNwYXJlbnR9LndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fb3B0aW9ue2NvbG9yOmluaGVyaXQ7ZGlzcGxheTpibG9jaztmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MWVtIDA7cGFkZGluZzowIDAgMCAyLjVlbTtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0fS53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fb3B0aW9uOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbi1sYXlvdXR7ZGlzcGxheTp0YWJsZTt3aWR0aDoxMDAlfS53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbiAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19vcHRpb24tbGF5b3V0OmFmdGVye2Rpc3BsYXk6bm9uZX0ud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19kZXNjcmlwdGlvbi1ncm91cCwud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19sYWJlbC1ncm91cHtkaXNwbGF5OnRhYmxlLXJvd30ud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19kZXNjcmlwdGlvbi1ncm91cD5zcGFuLC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX2xhYmVsLWdyb3VwPnNwYW57ZGlzcGxheTp0YWJsZS1jZWxsfS53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX2Rlc2NyaXB0aW9uLWdyb3VwIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX3NlY29uZGFyeS1kZXNjcmlwdGlvbiwud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19kZXNjcmlwdGlvbi1ncm91cCAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19zZWNvbmRhcnktbGFiZWwsLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fbGFiZWwtZ3JvdXAgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fc2Vjb25kYXJ5LWRlc2NyaXB0aW9uLC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX2xhYmVsLWdyb3VwIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX3NlY29uZGFyeS1sYWJlbHttaW4td2lkdGg6NTAlO3RleHQtYWxpZ246cmlnaHR9LndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fbGFiZWwsLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fc2Vjb25kYXJ5LWxhYmVse2xpbmUtaGVpZ2h0Om1heCgxLjVyZW0sMjRweCl9LndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fZGVzY3JpcHRpb24sLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fc2Vjb25kYXJ5LWRlc2NyaXB0aW9ue2ZvbnQtc2l6ZTouODc1ZW07bGluZS1oZWlnaHQ6MjBweH0ud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX2lucHV0ey13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjJweCBzb2xpZCAjNTA1NzVlO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxLjVlbTtsZWZ0OjA7bWluLWhlaWdodDoyNHB4O21pbi13aWR0aDoyNHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6MS41ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbCAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19pbnB1dDpjaGVja2VkOmJlZm9yZXtiYWNrZ3JvdW5kOiMwMDA7Ym9yZGVyLXJhZGl1czo1MCU7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDouNzVlbTtsZWZ0OjUwJTttYXJnaW46MDttaW4taGVpZ2h0OjEycHg7bWluLXdpZHRoOjEycHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7d2lkdGg6Ljc1ZW19Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9faW5wdXR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xKTtib3JkZXItY29sb3I6aHNsYSgwLDAlLDEwMCUsLjYpfS5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX2lucHV0OmNoZWNrZWQ6YmVmb3Jle2JhY2tncm91bmQ6I2ZmZn0udGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9faW5wdXQ6Y2hlY2tlZHtib3JkZXItd2lkdGg6MnB4fS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbCAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19pbnB1dDpjaGVja2VkOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWZvcm0tLWNvbG9yLXRleHQpfS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbCAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19pbnB1dDphZnRlcntkaXNwbGF5Om5vbmV9LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fdGV4dHtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7d2lkdGg6NjAlO3otaW5kZXg6MX0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX190ZXh0Pip7dmlzaWJpbGl0eTpoaWRkZW59LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fdGV4dDphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3RleHR7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fdGV4dDpiZWZvcmV7Y29udGVudDoiwqAifS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm8gLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faW1hZ2V7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbmZvIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2ltYWdlPip7dmlzaWJpbGl0eTpoaWRkZW59LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faW5mbyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbWFnZTphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm8gLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faW1hZ2V7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faW5mbyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbWFnZTpiZWZvcmV7Y29udGVudDoiwqAifS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm8gLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fbWV0YSAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19hdXRob3J7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxZW07bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7d2lkdGg6ODBweDt6LWluZGV4OjF9LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faW5mbyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19tZXRhIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2F1dGhvcj4qe3Zpc2liaWxpdHk6aGlkZGVufS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm8gLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fbWV0YSAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19hdXRob3I6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbmZvIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX21ldGEgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fYXV0aG9yey13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9fS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm8gLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fbWV0YSAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19hdXRob3I6YmVmb3Jle2NvbnRlbnQ6IsKgIn0uaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbmZvIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX21ldGEgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcHJvZHVjdCwuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbmZvIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX21ldGEgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcmF0aW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3JhdGluZ19fc3RhcnM+c3BhbntkaXNwbGF5Om5vbmV9LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faW5mbyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19wdWJsaXNoZWQtZGF0ZXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFlbTtsaW5lLWhlaWdodDoxO21heC13aWR0aDoxMDAlIWltcG9ydGFudDtvdXRsaW5lOjAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTt3aWR0aDoxMjBweDt6LWluZGV4OjF9LmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faW5mbyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19wdWJsaXNoZWQtZGF0ZT4qe3Zpc2liaWxpdHk6aGlkZGVufS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm8gLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcHVibGlzaGVkLWRhdGU6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbmZvIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3B1Ymxpc2hlZC1kYXRley13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9fS5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm8gLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcHVibGlzaGVkLWRhdGU6YmVmb3Jle2NvbnRlbnQ6IsKgIn0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2l0ZW0sLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faXRlbXtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjAgMCA0OHB4fS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm97LW1zLWdyaWQtY29sdW1uczoxZnI7ZGlzcGxheTotbXMtZ3JpZDtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjttYXJnaW4tYm90dG9tOjI0cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fbWV0YXstbXMtZ3JpZC1jb2x1bW46MTtncmlkLWNvbHVtbjoxOy1tcy1ncmlkLXJvdzoxO2dyaWQtcm93OjF9LndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faXRlbS0taGFzLWltYWdlIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2luZm97LW1zLWdyaWQtY29sdW1uczpjYWxjKDNlbSArIDE2cHgpIDFmcjtncmlkLXRlbXBsYXRlLWNvbHVtbnM6Y2FsYygzZW0gKyAxNnB4KSAxZnJ9LndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9faXRlbS0taGFzLWltYWdlIC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX21ldGF7LW1zLWdyaWQtY29sdW1uOjI7Z3JpZC1jb2x1bW46Mn0ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbWFnZXstbXMtZ3JpZC1yb3ctc3BhbjoyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7LW1zLWdyaWQtY29sdW1uOjE7Z3JpZC1jb2x1bW46MTstbXMtZ3JpZC1yb3c6MTtncmlkLXJvdzoxLzM7aGVpZ2h0OjNlbTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjNlbX0ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19pbWFnZT5pbWd7ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjEwMCU7LW8tb2JqZWN0LWZpdDpjb250YWluO29iamVjdC1maXQ6Y29udGFpbn0ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX192ZXJpZmllZHtib3R0b206LTdweDtoZWlnaHQ6MjFweDtsaW5lLWhlaWdodDoyMXB4O21hcmdpbjowO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotN3B4O3RleHQtaW5kZW50OjIxcHg7d2lkdGg6MjFweH0ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX192ZXJpZmllZDpiZWZvcmV7YmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCUzQ3N2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMSIgaGVpZ2h0PSIyMSIgZmlsbD0ibm9uZSIlM0UlM0NjaXJjbGUgY3g9IjEwLjUiIGN5PSIxMC41IiByPSIxMC41IiBmaWxsPSIlMjNmZmYiLyUzRSUzQ3BhdGggZmlsbD0iJTIzMDA4QTIxIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjE2NjcgMTAuNTAwM2MwLTQuNiAzLjczMzMtOC4zMzMzIDguMzMzMy04LjMzMzNzOC4zMzM0IDMuNzMzMyA4LjMzMzQgOC4zMzMzUzE1LjEgMTguODMzNyAxMC41IDE4LjgzMzdzLTguMzMzMy0zLjczMzQtOC4zMzMzLTguMzMzNHptMi41IDBsNC4xNjY2IDQuMTY2NyA3LjUwMDEtNy41LTEuMTc1LTEuMTgzMy02LjMyNSA2LjMyNS0yLjk5MTctMi45ODM0LTEuMTc1IDEuMTc1eiIgY2xpcC1ydWxlPSJldmVub2RkIi8lM0UlM0NtYXNrIGlkPSJhIiB3aWR0aD0iMTciIGhlaWdodD0iMTciIHg9IjIiIHk9IjIiIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiJTNFJTNDcGF0aCBmaWxsPSIlMjNmZmYiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTIuMTY2NyAxMC41MDAzYzAtNC42IDMuNzMzMy04LjMzMzMgOC4zMzMzLTguMzMzM3M4LjMzMzQgMy43MzMzIDguMzMzNCA4LjMzMzNTMTUuMSAxOC44MzM3IDEwLjUgMTguODMzN3MtOC4zMzMzLTMuNzMzNC04LjMzMzMtOC4zMzM0em0yLjUgMGw0LjE2NjYgNC4xNjY3IDcuNTAwMS03LjUtMS4xNzUtMS4xODMzLTYuMzI1IDYuMzI1LTIuOTkxNy0yLjk4MzQtMS4xNzUgMS4xNzV6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLyUzRSUzQy9tYXNrJTNFJTNDZyBtYXNrPSJ1cmwoJTIzYSkiJTNFJTNDcGF0aCBmaWxsPSIlMjMwMDhBMjEiIGQ9Ik0uNS41aDIwdjIwSC41eiIvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJykgNTAlIG5vLXJlcGVhdDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjIxcHg7d2lkdGg6MjFweH0ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19tZXRhe2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7ZmxleC1mbG93OnJvdyB3cmFwfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX21ldGE6YWZ0ZXJ7Y29udGVudDoiIjtmbGV4LWJhc2lzOjEwMCU7b3JkZXI6M30ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19hdXRob3IsLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcHJvZHVjdHtkaXNwbGF5OmJsb2NrO2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tcmlnaHQ6OHB4O29yZGVyOjF9LndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcHJvZHVjdCsud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19hdXRob3J7Zm9udC13ZWlnaHQ6NDAwO29yZGVyOjR9LndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcHVibGlzaGVkLWRhdGV7b3JkZXI6NX0ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19wcm9kdWN0Ky53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2F1dGhvcisud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19wdWJsaXNoZWQtZGF0ZXtwYWRkaW5nLWxlZnQ6OHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3Byb2R1Y3QrLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fYXV0aG9yKy53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3B1Ymxpc2hlZC1kYXRlOmJlZm9yZXtib3JkZXItcmlnaHQ6MXB4IHNvbGlkO2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjFlbTttYXJnaW4tbGVmdDotOHB4O29wYWNpdHk6LjU7cG9zaXRpb246YWJzb2x1dGU7dG9wOmNhbGMoNTAlICsgLjFlbSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7dmVydGljYWwtYWxpZ246bWlkZGxlfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2F1dGhvcjpmaXJzdC1jaGlsZCsud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19wdWJsaXNoZWQtZGF0ZTpiZWZvcmUsLndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcmF0aW5nKy53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX2F1dGhvcisud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19wdWJsaXNoZWQtZGF0ZTpiZWZvcmV7ZGlzcGxheTpub25lfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3JhdGluZ3tvcmRlcjoyfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3JhdGluZz4ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19yYXRpbmdfX3N0YXJze2Rpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6c3Rhcjtmb250LXNpemU6MWVtO2ZvbnQtd2VpZ2h0OjQwMDtoZWlnaHQ6MWVtO2xpbmUtaGVpZ2h0OjE7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowO3dpZHRoOjUuM2VtfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3JhdGluZz4ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC1pdGVtX19yYXRpbmdfX3N0YXJzOmJlZm9yZXtjb250ZW50OiJTU1NTUyI7ZmxvYXQ6bGVmdDtsZWZ0OjA7b3BhY2l0eTouMjU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcmF0aW5nPi53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3JhdGluZ19fc3RhcnMgc3BhbntmbG9hdDpsZWZ0O2xlZnQ6MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy10b3A6MS41ZW07cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcmV2aWV3LWxpc3QtaXRlbV9fcmF0aW5nPi53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3JhdGluZ19fc3RhcnMgc3BhbjpiZWZvcmV7Y29sb3I6I2U2YTIzNztjb250ZW50OiJTU1NTUyI7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0LWl0ZW1fX3RleHQgcHtmb250LXNpemU6aW5oZXJpdH0ud2MtYmxvY2stY29tcG9uZW50cy1yZXZpZXctbGlzdC53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1saXN0e21hcmdpbjowfS53Yy1ibG9jay1jb21wb25lbnRzLXJldmlldy1zb3J0LXNlbGVjdHt0ZXh0LWFsaWduOnJpZ2h0fS53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXItbGF5b3V0e2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDttYXJnaW46MCBhdXRvIDE2cHg7cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhci1sYXlvdXQgLndjLWJsb2NrLWNvbXBvbmVudHMtbWFpbntib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjA7cGFkZGluZy1yaWdodDozLjc3MzU4NDkwNTclO3dpZHRoOjY1JX0ud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFye2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXJnaW46MDtwYWRkaW5nLWxlZnQ6Mi4yNjQxNTA5NDM0JTt3aWR0aDozNSV9LndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhciAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbD5oMntib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjFlbTttYXJnaW46MDtwYWRkaW5nOjA7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LmlzLW1lZGl1bS53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXItbGF5b3V0LC5pcy1tb2JpbGUud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLWxheW91dCwuaXMtc21hbGwud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLWxheW91dHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luOjAgYXV0byAxNnB4fS5pcy1tZWRpdW0ud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLWxheW91dCAud2MtYmxvY2stY29tcG9uZW50cy1tYWluLC5pcy1tZWRpdW0ud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLWxheW91dCAud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLC5pcy1tb2JpbGUud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLWxheW91dCAud2MtYmxvY2stY29tcG9uZW50cy1tYWluLC5pcy1tb2JpbGUud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLWxheW91dCAud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLC5pcy1zbWFsbC53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXItbGF5b3V0IC53Yy1ibG9jay1jb21wb25lbnRzLW1haW4sLmlzLXNtYWxsLndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhci1sYXlvdXQgLndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhcntwYWRkaW5nOjA7d2lkdGg6MTAwJX0uaXMtbGFyZ2UgLndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhciAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbCwuaXMtbGFyZ2UgLndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhciAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtaXRlbXtwYWRkaW5nLWxlZnQ6MTZweDtwYWRkaW5nLXJpZ2h0OjE2cHh9LmlzLWxhcmdlIC53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWwgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW17cGFkZGluZzowfS53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWw+aDJ7Y29sb3I6aW5oZXJpdDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0fS53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXIgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWw+aDIgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbntmb250LXdlaWdodDo0MDB9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyIC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsPmgye2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDtmb250LXNpemU6MS4yNWVtO21hcmdpbjowO3BhZGRpbmc6MDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ud2MtYmxvY2stY29tcG9uZW50cy1zb3J0LXNlbGVjdHttYXJnaW4tYm90dG9tOjEycHh9LndjLWJsb2NrLWNvbXBvbmVudHMtc29ydC1zZWxlY3RfX2xhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW4tcmlnaHQ6MTJweH0ud2MtYmxvY2stY29tcG9uZW50cy1zb3J0LXNlbGVjdF9fc2VsZWN0e2ZvbnQtc2l6ZTppbmhlcml0O3dpZHRoOi13ZWJraXQtbWF4LWNvbnRlbnQ7d2lkdGg6LW1vei1tYXgtY29udGVudDt3aWR0aDptYXgtY29udGVudH0ud2MtYmxvY2stY29tcG9uZW50cy1zcGlubmVye2JveC1zaXppbmc6Y29udGVudC1ib3g7Y29sb3I6aW5oZXJpdDtmb250LXNpemU6MS4yNWVtO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9LndjLWJsb2NrLWNvbXBvbmVudHMtc3Bpbm5lcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpzcGlubmVyX19hbmltYXRpb24gMXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjpzcGlubmVyX19hbmltYXRpb24gMXMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47Ym9yZGVyOi4yZW0gc29saWQ7Ym9yZGVyLWxlZnQ6LjJlbSBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjUwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiICI7aGVpZ2h0OjFlbTtsZWZ0OjUwJTttYXJnaW46LS41ZW0gMCAwIC0uNWVtO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGUoLjUpO3RyYW5zZm9ybS1vcmlnaW46NTAlIDUwJTt3aWR0aDoxZW19LndjLWJsb2NrLWNvbXBvbmVudHMtc3RhdGUtaW5wdXR7bWFyZ2luLXRvcDoxLjVlbX0ud2MtYmxvY2stY29tcG9uZW50cy10YWJzIC53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2xpc3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LXdyYXA6d3JhcDt3aWR0aDoxMDAlfS53Yy1ibG9jay1jb21wb25lbnRzLXRhYnMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19fbGlzdD4ud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19pdGVte2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czowO2JveC1zaGFkb3c6aW5zZXQgMCAtMXB4IGN1cnJlbnRDb2xvcjtjb2xvcjppbmhlcml0O2ZsZXg6YXV0bztvdXRsaW5lLW9mZnNldDotMXB4O3BhZGRpbmc6MTJweCAxNnB4O3RleHQtYWxpZ246Y2VudGVyO3RyYW5zaXRpb246Ym94LXNoYWRvdyAuMXMgbGluZWFyfS53Yy1ibG9jay1jb21wb25lbnRzLXRhYnMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19fbGlzdD4ud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19pdGVtLmlzLWFjdGl2ZXtib3gtc2hhZG93Omluc2V0IDAgLTNweCBjdXJyZW50Q29sb3I7Zm9udC13ZWlnaHQ6NjAwO3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLXRhYnMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19fbGlzdD4ud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19pdGVtOmZvY3Vze291dGxpbmU6MXB4IGRvdHRlZCBjdXJyZW50Q29sb3I7b3V0bGluZS1vZmZzZXQ6LTFweH0ud2MtYmxvY2stY29tcG9uZW50cy10YWJzIC53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2xpc3Q+LndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19faXRlbTphY3RpdmUsLndjLWJsb2NrLWNvbXBvbmVudHMtdGFicyAud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19saXN0Pi53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2l0ZW06aG92ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ud2MtYmxvY2stY29tcG9uZW50cy10YWJzIC53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2xpc3Q+LndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19faXRlbSAud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19pdGVtLWNvbnRlbnR7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjFlbTtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnR9LndjLWJsb2NrLWNvbXBvbmVudHMtdGFicyAud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19saXN0Pi53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2l0ZW0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19faXRlbS1jb250ZW50PmltZywud2MtYmxvY2stY29tcG9uZW50cy10YWJzIC53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2xpc3Q+LndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19faXRlbSAud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19pdGVtLWNvbnRlbnQ+c3Zne2hlaWdodDoxLjJlbTttYXJnaW46LjJlbSAwIC0uMmVtO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ud2MtYmxvY2stY29tcG9uZW50cy10YWJzIC53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2xpc3Q+LndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19faXRlbSAud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19pdGVtLWNvbnRlbnQgLndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtaWNvbnN7bWFyZ2luOi4yZW0gMCAtLjJlbX0ud2MtYmxvY2stY29tcG9uZW50cy10YWJzIC53Yy1ibG9jay1jb21wb25lbnRzLXRhYnNfX2xpc3Q+LndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19faXRlbSAud2MtYmxvY2stY29tcG9uZW50cy10YWJzX19pdGVtLWNvbnRlbnQgLndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtaWNvbnMgLndjLWJsb2NrLWNvbXBvbmVudHMtcGF5bWVudC1tZXRob2QtaWNvbntoZWlnaHQ6MS4yZW07dmVydGljYWwtYWxpZ246bWlkZGxlfS53Yy1ibG9jay1jb21wb25lbnRzLXRhYnMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGFic19fY29udGVudHtwYWRkaW5nOjE2cHggMDt0ZXh0LXRyYW5zZm9ybTpub25lfS53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0e21hcmdpbi10b3A6MS41ZW07cG9zaXRpb246cmVsYXRpdmU7d2hpdGUtc3BhY2U6bm93cmFwfS53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBsYWJlbCwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGxhYmVse2NvbG9yOmluaGVyaXQ7Y29sb3I6Izc1NzU3NTtjdXJzb3I6dGV4dDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc2l6ZToxZW07Zm9udC1zdHlsZTppbmhlcml0O2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGVmdDowO2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtsaW5lLWhlaWdodDoxLjM3NTttYXJnaW46MCAwIDAgMTdweDttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMzJweCk7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSguNzVlbSk7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgZWFzZX0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGxhYmVsLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGxhYmVse2NvbG9yOmhzbGEoMCwwJSwxMDAlLC42KX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBsYWJlbCwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGxhYmVse3RyYW5zaXRpb246bm9uZX19LndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0Oi13ZWJraXQtYXV0b2ZpbGwrbGFiZWwsLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dDotd2Via2l0LWF1dG9maWxsK2xhYmVse3RyYW5zZm9ybTp0cmFuc2xhdGVZKDRweCkgc2NhbGUoLjc1KX0ud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaXMtYWN0aXZlIGxhYmVsLC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaXMtYWN0aXZlIGxhYmVse3RyYW5zZm9ybTp0cmFuc2xhdGVZKDRweCkgc2NhbGUoLjc1KX0ud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT1lbWFpbF0sLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXSwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT10ZWxdLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXRleHRdLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXVybF0sLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPWVtYWlsXSwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXSwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGVsXSwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGV4dF0sLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXVybF17YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgIzUwNTc1ZTtib3JkZXItcmFkaXVzOjRweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6IzJiMmQyZjtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxZW07aGVpZ2h0OjNlbTtsaW5lLWhlaWdodDoxLjM3NTttYXJnaW46MDttaW4taGVpZ2h0OjA7cGFkZGluZzouNzVlbSAwO3RleHQtaW5kZW50OjE2cHg7d2lkdGg6MTAwJX0ud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT10ZWxdOmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXVybF06Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGVsXTpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXVybF06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JveC1zaGFkb3c6MCAwIDAgMXB4ICM1MDU3NWU7Y29sb3I6IzJiMmQyZjtvdXRsaW5lOjB9Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPWVtYWlsXSwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXSwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGVsXSwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGV4dF0sLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXVybF0sLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT1lbWFpbF0sLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT1udW1iZXJdLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGVsXSwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPXRleHRdLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dXJsXXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjEpO2JvcmRlci1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuNCk7Y29sb3I6I2ZmZn0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9ZW1haWxdOmZvY3VzLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT10ZWxdOmZvY3VzLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT10ZXh0XTpmb2N1cywuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dXJsXTpmb2N1cywuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cywuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPW51bWJlcl06Zm9jdXMsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT10ZWxdOmZvY3VzLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQgaW5wdXRbdHlwZT11cmxdOmZvY3Vze2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMSk7Ym94LXNoYWRvdzowIDAgMCAxcHggaHNsYSgwLDAlLDEwMCUsLjQpO2NvbG9yOiNmZmZ9LndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXSwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXXstbW96LWFwcGVhcmFuY2U6dGV4dGZpZWxkfS53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0IGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7bWFyZ2luOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0LmlzLWFjdGl2ZSBpbnB1dFt0eXBlPWVtYWlsXSwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaXMtYWN0aXZlIGlucHV0W3R5cGU9bnVtYmVyXSwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaXMtYWN0aXZlIGlucHV0W3R5cGU9dGVsXSwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaXMtYWN0aXZlIGlucHV0W3R5cGU9dGV4dF0sLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0LmlzLWFjdGl2ZSBpbnB1dFt0eXBlPXVybF0sLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5pcy1hY3RpdmUgaW5wdXRbdHlwZT1lbWFpbF0sLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5pcy1hY3RpdmUgaW5wdXRbdHlwZT1udW1iZXJdLC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaXMtYWN0aXZlIGlucHV0W3R5cGU9dGVsXSwud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0LmlzLWFjdGl2ZSBpbnB1dFt0eXBlPXRleHRdLC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaXMtYWN0aXZlIGlucHV0W3R5cGU9dXJsXXtwYWRkaW5nOjEuNWVtIDAgLjI1ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Lmhhcy1lcnJvciBpbnB1dCwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGlucHV0OmFjdGl2ZSwud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGlucHV0OmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQ6aG92ZXIsLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQsLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQ6YWN0aXZlLC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGlucHV0OmZvY3VzLC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGlucHV0OmhvdmVye2JvcmRlci1jb2xvcjojY2MxODE4fS53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQ6Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQ6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAxcHggI2NjMTgxOH0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Lmhhcy1lcnJvciBpbnB1dCwuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Lmhhcy1lcnJvciBpbnB1dDphY3RpdmUsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQ6Zm9jdXMsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQ6aG92ZXIsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGlucHV0LC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Lmhhcy1lcnJvciBpbnB1dDphY3RpdmUsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGlucHV0OmZvY3VzLC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Lmhhcy1lcnJvciBpbnB1dDpob3Zlcntib3JkZXItY29sb3I6I2YxOGM4Y30uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Lmhhcy1lcnJvciBpbnB1dDpmb2N1cywuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgaW5wdXQ6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAxcHggI2YxOGM4Y30ud2MtYmxvY2stY29tcG9uZW50cy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGxhYmVsLC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGxhYmVse2NvbG9yOiNjYzE4MTh9Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dC5oYXMtZXJyb3IgbGFiZWwsLmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQuaGFzLWVycm9yIGxhYmVse2NvbG9yOiNmMThjOGN9LndjLWJsb2NrLWNvbXBvbmVudHMtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Om9ubHktY2hpbGQsLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dDpvbmx5LWNoaWxke21hcmdpbi10b3A6MS41ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dGFyZWF7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgIzUwNTc1ZTtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojMmIyZDJmO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjFlbTtsaW5lLWhlaWdodDoxLjM3NTttYXJnaW46MDtwYWRkaW5nOi43NWVtIDE2cHg7d2lkdGg6MTAwJX0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dGFyZWF7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4xKTtib3JkZXItY29sb3I6aHNsYSgwLDAlLDEwMCUsLjQpO2NvbG9yOiNmZmZ9Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVye2NvbG9yOmhzbGEoMCwwJSwxMDAlLC42KX0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dGFyZWE6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOmhzbGEoMCwwJSwxMDAlLC42KX0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOmhzbGEoMCwwJSwxMDAlLC42KX0udGhlbWUtdHdlbnR5dHdlbnR5b25lIC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0YXJlYXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjEpO2NvbG9yOiNmZmZ9LnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stY29tcG9uZW50cy10aXRsZS53Yy1ibG9jay1jb21wb25lbnRzLXRpdGxlLC53Yy1ibG9jay1jb21wb25lbnRzLXRpdGxlLndjLWJsb2NrLWNvbXBvbmVudHMtdGl0bGV7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO2ZvbnQtc2l6ZToxLjI1ZW07bWFyZ2luOjA7cGFkZGluZzowO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud2MtYmxvY2stY29tcG9uZW50cy1ub3RpY2Vze2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToyZW19LndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlcyAud2MtYmxvY2stY29tcG9uZW50cy1ub3RpY2VzX19ub3RpY2V7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDpub3dyYXA7bWFyZ2luOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlcyAud2MtYmxvY2stY29tcG9uZW50cy1ub3RpY2VzX19ub3RpY2UgYXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS53Yy1ibG9jay1jb21wb25lbnRzLW5vdGljZXMgLndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlc19fbm90aWNlIC5jb21wb25lbnRzLW5vdGljZV9fZGlzbWlzc3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IG5vbmU7Ym9yZGVyOjA7Y29sb3I6Y3VycmVudENvbG9yO21hcmdpbjowIDAgMCBhdXRvO291dGxpbmU6MDtwYWRkaW5nOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlcyAud2MtYmxvY2stY29tcG9uZW50cy1ub3RpY2VzX19ub3RpY2UgLmNvbXBvbmVudHMtbm90aWNlX19kaXNtaXNzIHN2Z3tmaWxsOmN1cnJlbnRDb2xvcjt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LXRvcH0ud2MtYmxvY2stY29tcG9uZW50cy1ub3RpY2VzIC53Yy1ibG9jay1jb21wb25lbnRzLW5vdGljZXNfX25vdGljZSAuY29tcG9uZW50cy1ub3RpY2VfX2NvbnRlbnQ+ZGl2Om5vdCguY29tcG9uZW50cy1ub3RpY2VfX2FjdGlvbnMpIDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlcyAud2MtYmxvY2stY29tcG9uZW50cy1ub3RpY2VzX19ub3RpY2UgLmNvbXBvbmVudHMtbm90aWNlX19jb250ZW50PmRpdjpub3QoLmNvbXBvbmVudHMtbm90aWNlX19hY3Rpb25zKSA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlcyAud2MtYmxvY2stY29tcG9uZW50cy1ub3RpY2VzX19ub3RpY2UrLndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlc19fbm90aWNle21hcmdpbi10b3A6MWVtfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlc19fbm90aWNlLC50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlc19fbm90aWNle3BhZGRpbmc6MS41cmVtIDNyZW19LndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlc19fc25hY2tiYXJ7Ym90dG9tOjIwcHg7bGVmdDoxNnB4O3Bvc2l0aW9uOmZpeGVkO3dpZHRoOmF1dG99QG1lZGlhKG1heC13aWR0aDo3ODJweCl7LndjLWJsb2NrLWNvbXBvbmVudHMtbm90aWNlc19fc25hY2tiYXJ7Ym90dG9tOmF1dG87bGVmdDowO3Bvc2l0aW9uOmZpeGVkO3RvcDoxMHB4fS53Yy1ibG9jay1jb21wb25lbnRzLW5vdGljZXNfX3NuYWNrYmFyIC5jb21wb25lbnRzLXNuYWNrYmFyLWxpc3RfX25vdGljZS1jb250YWluZXJ7bWFyZ2luLWxlZnQ6MTBweDttYXJnaW4tcmlnaHQ6MTBweH19LndjLWJsb2NrLWNvbXBvbmVudHMtdmFsaWRhdGlvbi1lcnJvcntjb2xvcjojY2MxODE4O2ZvbnQtc2l6ZTouNzVlbTttYXgtd2lkdGg6MTAwJTt3aGl0ZS1zcGFjZTpub3JtYWx9LndjLWJsb2NrLWNvbXBvbmVudHMtdmFsaWRhdGlvbi1lcnJvcj5we21hcmdpbjowO3BhZGRpbmc6NHB4IDAgMH0uaGFzLWRhcmstbW9kZS1wYWxldHRlIC53Yy1ibG9jay1jb21wb25lbnRzLXZhbGlkYXRpb24tZXJyb3J7Y29sb3I6I2YxOGM4Y30ud2MtYmxvY2stY29tcG9uZW50cy1zZWxlY3QrLndjLWJsb2NrLWNvbXBvbmVudHMtdmFsaWRhdGlvbi1lcnJvcnttYXJnaW4tYm90dG9tOjI0cHh9LndpdGgtc2Nyb2xsLXRvLXRvcF9fc2Nyb2xsLXBvaW50e3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMzZweH0ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnR7bWFyZ2luOmF1dG87cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fZXZlbnQtYnV0dG9uc3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtd3JhcDp3cmFwO2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fZXZlbnQtYnV0dG9ucz5saXttYXJnaW46MH0ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnQgLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50X19ldmVudC1idXR0b25zPmxpPmltZ3toZWlnaHQ6NDhweDt3aWR0aDoxMDAlfS53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC0tY2hlY2tvdXR7bWFyZ2luLXRvcDoxNXB4fS53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC0tY2hlY2tvdXQgLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50X190aXRsZS1jb250YWluZXJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdztsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6LTVweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50LS1jaGVja291dCAud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnRfX3RpdGxlLWNvbnRhaW5lcjpiZWZvcmV7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkO2JvcmRlci1yYWRpdXM6NXB4IDAgMCAwO2JvcmRlci10b3A6MXB4IHNvbGlkO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6NHB4O21hcmdpbi1yaWdodDoxMnB4O29wYWNpdHk6LjM7cG9pbnRlci1ldmVudHM6bm9uZTt3aWR0aDoxMHB4fS53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC0tY2hlY2tvdXQgLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50X190aXRsZS1jb250YWluZXI6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czowIDVweCAwIDA7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZDtib3JkZXItdG9wOjFweCBzb2xpZDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7ZmxleC1ncm93OjE7aGVpZ2h0OjRweDttYXJnaW4tbGVmdDoxMnB4O29wYWNpdHk6LjM7cG9pbnRlci1ldmVudHM6bm9uZX0ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnQtLWNoZWNrb3V0IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fdGl0bGV7ZmxleC1ncm93OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50LS1jaGVja291dCAud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnRfX2NvbnRlbnR7cGFkZGluZzoxLjVlbSAyM3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC0tY2hlY2tvdXQgLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50X19jb250ZW50OmFmdGVye2JvcmRlci1yYWRpdXM6MCAwIDVweCA1cHg7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDowIDFweCAxcHg7Ym90dG9tOjA7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2xlZnQ6MDtvcGFjaXR5Oi4zO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnQtLWNoZWNrb3V0IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fY29udGVudD5we21hcmdpbi1ib3R0b206MWVtfS53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC0tY2hlY2tvdXQgLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50X19ldmVudC1idXR0b25zPmxpe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjUwJX0ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnQtLWNoZWNrb3V0IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fZXZlbnQtYnV0dG9ucz5saTpvbmx5LWNoaWxke2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJX0ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnQtLWNoZWNrb3V0IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fZXZlbnQtYnV0dG9ucz5saTpudGgtY2hpbGQoMm4pe3BhZGRpbmctbGVmdDo4cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50LS1jaGVja291dCAud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnRfX2V2ZW50LWJ1dHRvbnM+bGk6bnRoLWNoaWxkKG9kZCl7cGFkZGluZy1yaWdodDo4cHh9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50LS1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fZXZlbnQtYnV0dG9ucz5saXtwYWRkaW5nLWJvdHRvbToxNnB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50LS1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fZXZlbnQtYnV0dG9ucz5saTpsYXN0LWNoaWxke3BhZGRpbmctYm90dG9tOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50LWNvbnRpbnVlLXJ1bGV7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDttYXJnaW46MjRweCAwO3BhZGRpbmc6MCAyNHB4O3RleHQtYWxpZ246Y2VudGVyfS53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC1jb250aW51ZS1ydWxlOmJlZm9yZXttYXJnaW4tcmlnaHQ6MTBweH0ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnQtY29udGludWUtcnVsZTphZnRlcnttYXJnaW4tbGVmdDoxMHB4fS53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC1jb250aW51ZS1ydWxlOmFmdGVyLC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudC1jb250aW51ZS1ydWxlOmJlZm9yZXtib3JkZXItYm90dG9tOjFweCBzb2xpZDtjb250ZW50OiIgIjtmbGV4OjE7b3BhY2l0eTouM30ud2MtYmxvY2stY29tcG9uZW50cy1leHByZXNzLXBheW1lbnQtY29udGludWUtcnVsZS0tY2FydHttYXJnaW46MTZweCAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0udGhlbWUtdHdlbnR5bmluZXRlZW4gLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50X190aXRsZTpiZWZvcmV7ZGlzcGxheTpub25lfS50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWNvbXBvbmVudHMtZXhwcmVzcy1wYXltZW50IC53Yy1ibG9jay1jb21wb25lbnRzLWV4cHJlc3MtcGF5bWVudF9fdGl0bGV7cGFkZGluZy1sZWZ0OjEycHg7cGFkZGluZy1yaWdodDoxMnB4fS5jb21wb25lbnRzLXBsYWNlaG9sZGVyLndjLWJsb2NrLWNoZWNrb3V0X19uby1wYXltZW50LW1ldGhvZHMtcGxhY2Vob2xkZXJ7bWFyZ2luLWJvdHRvbToxNnB4fS5jb21wb25lbnRzLXBsYWNlaG9sZGVyLndjLWJsb2NrLWNoZWNrb3V0X19uby1wYXltZW50LW1ldGhvZHMtcGxhY2Vob2xkZXIgKntwb2ludGVyLWV2ZW50czphbGx9LmNvbXBvbmVudHMtcGxhY2Vob2xkZXIud2MtYmxvY2stY2hlY2tvdXRfX25vLXBheW1lbnQtbWV0aG9kcy1wbGFjZWhvbGRlciAuY29tcG9uZW50cy1wbGFjZWhvbGRlcl9fZmllbGRzZXR7ZGlzcGxheTpibG9ja30uY29tcG9uZW50cy1wbGFjZWhvbGRlci53Yy1ibG9jay1jaGVja291dF9fbm8tcGF5bWVudC1tZXRob2RzLXBsYWNlaG9sZGVyIC5jb21wb25lbnRzLXBsYWNlaG9sZGVyX19maWVsZHNldCAuY29tcG9uZW50cy1idXR0b257YmFja2dyb3VuZC1jb2xvcjojMWUxZTFlO2NvbG9yOiNmZmZ9LmNvbXBvbmVudHMtcGxhY2Vob2xkZXIud2MtYmxvY2stY2hlY2tvdXRfX25vLXBheW1lbnQtbWV0aG9kcy1wbGFjZWhvbGRlciAuY29tcG9uZW50cy1wbGFjZWhvbGRlcl9fZmllbGRzZXQgLndjLWJsb2NrLWNoZWNrb3V0X19uby1wYXltZW50LW1ldGhvZHMtcGxhY2Vob2xkZXItZGVzY3JpcHRpb257ZGlzcGxheTpibG9jazttYXJnaW46LjI1ZW0gMCAxZW19LmNvbXBvbmVudHMtbm90aWNlLndjLWJsb2NrLWNoZWNrb3V0X19uby1wYXltZW50LW1ldGhvZHMtbm90aWNle21hcmdpbi1ib3R0b206MTZweH0ud2MtYmxvY2stY2FyZC1lbGVtZW50c3tkaXNwbGF5OmZsZXg7d2lkdGg6MTAwJX0ud2MtYmxvY2stY2FyZC1lbGVtZW50cyAud2MtYmxvY2stY29tcG9uZW50cy12YWxpZGF0aW9uLWVycm9ye3Bvc2l0aW9uOnN0YXRpY30ud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXJ7bWFyZ2luLWJvdHRvbToxLjVlbTtwb3NpdGlvbjpyZWxhdGl2ZTt3aGl0ZS1zcGFjZTpub3dyYXB9LndjLWJsb2NrLWdhdGV3YXktY29udGFpbmVyLndjLWNhcmQtbnVtYmVyLWVsZW1lbnR7ZmxleC1iYXNpczoxNWVtO2ZsZXgtZ3JvdzoxO21pbi13aWR0aDptaW4oMTVlbSw2MCUpfS53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lci53Yy1jYXJkLWV4cGlyeS1lbGVtZW50e2ZsZXgtYmFzaXM6N2VtO21hcmdpbi1sZWZ0OjEycHg7bWluLXdpZHRoOm1pbig3ZW0sY2FsYygyNCUgLSAxMnB4KSl9LndjLWJsb2NrLWdhdGV3YXktY29udGFpbmVyLndjLWNhcmQtY3ZjLWVsZW1lbnR7ZmxleC1iYXNpczo3ZW07bWFyZ2luLWxlZnQ6MTJweDttaW4td2lkdGg6bWluKDVlbSxjYWxjKDE2JSAtIDEycHgpKX0ud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIgLndjLWJsb2NrLWdhdGV3YXktaW5wdXR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgIzUwNTc1ZTtib3JkZXItcmFkaXVzOjRweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6IzJiMmQyZjtjdXJzb3I6dGV4dDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxZW07aGVpZ2h0OjNlbTtsaW5lLWhlaWdodDoxLjM3NTttYXJnaW46MDtwYWRkaW5nOi43NWVtIDAgLjc1ZW0gMTZweDt3aWR0aDoxMDAlfS53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lciAud2MtYmxvY2stZ2F0ZXdheS1pbnB1dDpmb2N1cywud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXI6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZmZmfS53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lciBsYWJlbHtjb2xvcjppbmhlcml0O2NvbG9yOiM3NTc1NzU7Y3Vyc29yOnRleHQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXNpemU6MWVtO2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xlZnQ6MDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6MS4zNzU7bWFyZ2luOjAgMCAwIDE3cHg7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDI0cHgpO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLjc1ZW0pO3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2V9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIgbGFiZWx7dHJhbnNpdGlvbjpub25lfX0ud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIud2MtaW5saW5lLWNhcmQtZWxlbWVudCBsYWJlbHttYXJnaW4tbGVmdDpjYWxjKDI0cHggKyAxLjVlbSl9LndjLWJsb2NrLWdhdGV3YXktY29udGFpbmVyLndjLWlubGluZS1jYXJkLWVsZW1lbnQgLndjLWJsb2NrLWdhdGV3YXktaW5wdXQuZm9jdXNlZC5lbXB0eStsYWJlbCwud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIud2MtaW5saW5lLWNhcmQtZWxlbWVudCAud2MtYmxvY2stZ2F0ZXdheS1pbnB1dDpub3QoLmVtcHR5KStsYWJlbHttYXJnaW4tbGVmdDoxNnB4O3RyYW5zZm9ybTp0cmFuc2xhdGVZKDRweCkgc2NhbGUoLjc1KX0ud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIud2MtaW5saW5lLWNhcmQtZWxlbWVudCsud2MtYmxvY2stY29tcG9uZW50cy12YWxpZGF0aW9uLWVycm9ye21hcmdpbi10b3A6LTI0cHg7cG9zaXRpb246c3RhdGljfS53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lciAud2MtYmxvY2stZ2F0ZXdheS1pbnB1dC5mb2N1c2VkLmVtcHR5LC53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lciAud2MtYmxvY2stZ2F0ZXdheS1pbnB1dDpub3QoLmVtcHR5KXtwYWRkaW5nOjEuNWVtIDAgLjI1ZW0gMTZweH0ud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIgLndjLWJsb2NrLWdhdGV3YXktaW5wdXQuZm9jdXNlZC5lbXB0eStsYWJlbCwud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIgLndjLWJsb2NrLWdhdGV3YXktaW5wdXQ6bm90KC5lbXB0eSkrbGFiZWx7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNHB4KSBzY2FsZSguNzUpfS53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lciAud2MtYmxvY2stZ2F0ZXdheS1pbnB1dC5oYXMtZXJyb3J7Ym9yZGVyLWNvbG9yOiNjYzE4MTh9LndjLWJsb2NrLWdhdGV3YXktY29udGFpbmVyIC53Yy1ibG9jay1nYXRld2F5LWlucHV0Lmhhcy1lcnJvcjpmb2N1c3tvdXRsaW5lLWNvbG9yOiNjYzE4MTh9LndjLWJsb2NrLWdhdGV3YXktY29udGFpbmVyIC53Yy1ibG9jay1nYXRld2F5LWlucHV0Lmhhcy1lcnJvcitsYWJlbHtjb2xvcjojY2MxODE4fS5pcy1sYXJnZSAud2MtY2FyZC1jdmMtZWxlbWVudCAud2MtYmxvY2stY29tcG9uZW50cy12YWxpZGF0aW9uLWVycm9yPnAsLmlzLWxhcmdlIC53Yy1jYXJkLWV4cGlyeS1lbGVtZW50IC53Yy1ibG9jay1jb21wb25lbnRzLXZhbGlkYXRpb24tZXJyb3I+cCwuaXMtbWVkaXVtIC53Yy1jYXJkLWN2Yy1lbGVtZW50IC53Yy1ibG9jay1jb21wb25lbnRzLXZhbGlkYXRpb24tZXJyb3I+cCwuaXMtbWVkaXVtIC53Yy1jYXJkLWV4cGlyeS1lbGVtZW50IC53Yy1ibG9jay1jb21wb25lbnRzLXZhbGlkYXRpb24tZXJyb3I+cHtsaW5lLWhlaWdodDoxNnB4O3BhZGRpbmctdG9wOjRweH0uaXMtbW9iaWxlIC53Yy1jYXJkLWN2Yy1lbGVtZW50IC53Yy1ibG9jay1jb21wb25lbnRzLXZhbGlkYXRpb24tZXJyb3I+cCwuaXMtbW9iaWxlIC53Yy1jYXJkLWV4cGlyeS1lbGVtZW50IC53Yy1ibG9jay1jb21wb25lbnRzLXZhbGlkYXRpb24tZXJyb3I+cCwuaXMtc21hbGwgLndjLWNhcmQtY3ZjLWVsZW1lbnQgLndjLWJsb2NrLWNvbXBvbmVudHMtdmFsaWRhdGlvbi1lcnJvcj5wLC5pcy1zbWFsbCAud2MtY2FyZC1leHBpcnktZWxlbWVudCAud2MtYmxvY2stY29tcG9uZW50cy12YWxpZGF0aW9uLWVycm9yPnB7bWluLWhlaWdodDoyOHB4fS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXBheW1lbnQtbWV0aG9kcyAqe3BvaW50ZXItZXZlbnRzOmFsbH0uaXMtbW9iaWxlIC53Yy1ibG9jay1jYXJkLWVsZW1lbnRzLC5pcy1zbWFsbCAud2MtYmxvY2stY2FyZC1lbGVtZW50c3tmbGV4LXdyYXA6d3JhcH0uaXMtbW9iaWxlIC53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lci53Yy1jYXJkLW51bWJlci1lbGVtZW50LC5pcy1zbWFsbCAud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIud2MtY2FyZC1udW1iZXItZWxlbWVudHtmbGV4LWJhc2lzOjEwMCV9LmlzLW1vYmlsZSAud2MtYmxvY2stZ2F0ZXdheS1jb250YWluZXIud2MtY2FyZC1leHBpcnktZWxlbWVudCwuaXMtc21hbGwgLndjLWJsb2NrLWdhdGV3YXktY29udGFpbmVyLndjLWNhcmQtZXhwaXJ5LWVsZW1lbnR7ZmxleC1iYXNpczpjYWxjKDUwJSAtIDhweCk7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6OHB4fS5pcy1tb2JpbGUgLndjLWJsb2NrLWdhdGV3YXktY29udGFpbmVyLndjLWNhcmQtY3ZjLWVsZW1lbnQsLmlzLXNtYWxsIC53Yy1ibG9jay1nYXRld2F5LWNvbnRhaW5lci53Yy1jYXJkLWN2Yy1lbGVtZW50e2ZsZXgtYmFzaXM6Y2FsYyg1MCUgLSA4cHgpO21hcmdpbi1sZWZ0OjhweH0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbntwYWRkaW5nLWxlZnQ6NTZweH0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbjphZnRlcntjb250ZW50Om5vbmV9LndjLWJsb2NrLWNoZWNrb3V0X19wYXltZW50LW1ldGhvZCAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19vcHRpb24gLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9faW5wdXR7bGVmdDoxNnB4fS53Yy1ibG9jay1jaGVja291dF9fcGF5bWVudC1tZXRob2QgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fb3B0aW9uLC53Yy1ibG9jay1jaGVja291dF9fcGF5bWVudC1tZXRob2QgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fb3B0aW9uOmZpcnN0LWNoaWxkLC53Yy1ibG9jay1jaGVja291dF9fcGF5bWVudC1tZXRob2QgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9fb3B0aW9uOmxhc3QtY2hpbGR7bWFyZ2luOjA7cGFkZGluZy1ib3R0b206MWVtO3BhZGRpbmctdG9wOjFlbX0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbi1jaGVja2Vke2ZvbnQtd2VpZ2h0OjcwMH0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wtYWNjb3JkaW9uLW9wdGlvbiwud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbntwb3NpdGlvbjpyZWxhdGl2ZX0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wtYWNjb3JkaW9uLW9wdGlvbjphZnRlciwud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbjphZnRlcntib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjFweCAxcHggMDtib3R0b206MDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7bGVmdDowO29wYWNpdHk6LjM7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfS53Yy1ibG9jay1jaGVja291dF9fcGF5bWVudC1tZXRob2QgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbC1hY2NvcmRpb24tb3B0aW9uOmxhc3QtY2hpbGQ6YWZ0ZXIsLndjLWJsb2NrLWNoZWNrb3V0X19wYXltZW50LW1ldGhvZCAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19vcHRpb246bGFzdC1jaGlsZDphZnRlcntib3JkZXItd2lkdGg6MXB4fS53Yy1ibG9jay1jaGVja291dF9fcGF5bWVudC1tZXRob2QgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbC1hY2NvcmRpb24tb3B0aW9uIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbjphZnRlcntib3JkZXItd2lkdGg6MH0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wtYWNjb3JkaW9uLW9wdGlvbiAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19sYWJlbHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS53Yy1ibG9jay1jaGVja291dF9fcGF5bWVudC1tZXRob2QgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbC1hY2NvcmRpb24tb3B0aW9uIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX2xhYmVsIGltZ3toZWlnaHQ6MjRweDttYXgtaGVpZ2h0OjI0cHg7LW8tb2JqZWN0LWZpdDpjb250YWluO29iamVjdC1maXQ6Y29udGFpbjstby1vYmplY3QtcG9zaXRpb246bGVmdDtvYmplY3QtcG9zaXRpb246bGVmdH0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wuZGlzYWJsZS1yYWRpby1jb250cm9sIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbntwYWRkaW5nLWxlZnQ6MTZweH0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2wuZGlzYWJsZS1yYWRpby1jb250cm9sIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX2lucHV0e2Rpc3BsYXk6bm9uZX0ud2MtYmxvY2stY2hlY2tvdXRfX3BheW1lbnQtbWV0aG9kIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2Rlc2NyaXB0aW9uLXBheW1lbnRzLWFsaWduZWR7aGVpZ2h0OjI4cHg7cGFkZGluZy10b3A6MTRweH0ud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sLWFjY29yZGlvbi1jb250ZW50e3BhZGRpbmc6MCAxNnB4IDFlbX0ud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sLWFjY29yZGlvbi1jb250ZW50OmVtcHR5e2Rpc3BsYXk6bm9uZX0ud2MtYmxvY2stY2hlY2tvdXRfX29yZGVyLW5vdGVzIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXBfX2NvbnRlbnR7cGFkZGluZy1ib3R0b206MH0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWNyb3NzLXNlbGxzLWJsb2Nre2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxO21hcmdpbi10b3A6MmVtO21heC13aWR0aDoxMDAlIWltcG9ydGFudDttaW4taGVpZ2h0OjE1ZW07b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtY3Jvc3Mtc2VsbHMtYmxvY2s+Knt2aXNpYmlsaXR5OmhpZGRlbn0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWNyb3NzLXNlbGxzLWJsb2NrOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1jcm9zcy1zZWxscy1ibG9ja3std2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWNyb3NzLXNlbGxzLWJsb2NrIGgze2Rpc3BsYXk6bm9uZX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydCAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1jcm9zcy1zZWxscy1ibG9jayAuY3Jvc3Mtc2VsbHMtcHJvZHVjdHtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1ib3R0b206MmVtO3BhZGRpbmctcmlnaHQ6NSU7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246dG9wO3dpZHRoOjMwJX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydCAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1jcm9zcy1zZWxscy1ibG9jayAuY3Jvc3Mtc2VsbHMtcHJvZHVjdDpudGgtY2hpbGQoM24rMyl7cGFkZGluZy1yaWdodDowfS53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0IC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWNyb3NzLXNlbGxzLWJsb2NrIC5jcm9zcy1zZWxscy1wcm9kdWN0IGRpdiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW5hbWV7Zm9udC13ZWlnaHQ6NDAwfS53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0IC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWNyb3NzLXNlbGxzLWJsb2NrIC5jcm9zcy1zZWxscy1wcm9kdWN0IGRpdiAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNle2Rpc3BsYXk6YmxvY2t9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtY3Jvc3Mtc2VsbHMtYmxvY2sgLmNyb3NzLXNlbGxzLXByb2R1Y3QgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1idXR0b25fX2J1dHRvbnttYXJnaW4tdG9wOjFlbX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydCAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1jcm9zcy1zZWxscy1ibG9jayAuY3Jvc3Mtc2VsbHMtcHJvZHVjdCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0e2p1c3RpZnktY29udGVudDpjZW50ZXJ9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtY3Jvc3Mtc2VsbHMtYmxvY2sgLmNyb3NzLXNlbGxzLXByb2R1Y3QgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWJ1dHRvbjpub3QoLmlzLWxpbmspe2JhY2tncm91bmQtY29sb3I6I2VlZTtjb2xvcjojMzMzO2ZvbnQtd2VpZ2h0OjYwMDttYXJnaW4tdG9wOjFlbX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydCAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1jcm9zcy1zZWxscy1ibG9jayAuY3Jvc3Mtc2VsbHMtcHJvZHVjdCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtYWRkLXRvLWNhcnQtYnV0dG9uOm5vdCguaXMtbGluayk6Zm9jdXMsLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtY3Jvc3Mtc2VsbHMtYmxvY2sgLmNyb3NzLXNlbGxzLXByb2R1Y3QgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1hZGQtdG8tY2FydCAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LWFkZC10by1jYXJ0LWJ1dHRvbjpub3QoLmlzLWxpbmspOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2Q1ZDVkNTtib3JkZXItY29sb3I6I2Q1ZDVkNTtjb2xvcjojMzMzfUBtZWRpYShtYXgtd2lkdGg6NDgwcHgpey53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0IC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWNyb3NzLXNlbGxzLWJsb2NrIC5jcm9zcy1zZWxscy1wcm9kdWN0e2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJX19LmlzLW1lZGl1bSAud2MtYmxvY2stY2FydF9fc2lkZWJhciwuaXMtbW9iaWxlIC53Yy1ibG9jay1jYXJ0X19zaWRlYmFyLC5pcy1zbWFsbCAud2MtYmxvY2stY2FydF9fc2lkZWJhcnttYXJnaW4tYm90dG9tOjI0cHg7b3JkZXI6MH0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53Yy1ibG9jay1jYXJ0X19lbXB0eS1jYXJ0X190aXRsZSwud2MtYmxvY2stY2FydF9fZW1wdHktY2FydF9fdGl0bGV7Zm9udC1zaXplOmluaGVyaXR9LndjLWJsb2NrLWNhcnRfX3N1Ym1pdHttYXJnaW46MCAwIDE2cHg7cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWNhcnRfX3N1Ym1pdC1idXR0b257Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjowO3dpZHRoOjEwMCV9LndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNhcnRfX3N1Ym1pdC1jb250YWluZXJ7cGFkZGluZzowfUBtZWRpYShtaW4td2lkdGg6NzgzcHgpey53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0X19zdWJtaXQtY29udGFpbmVyLS1zdGlja3l7ZGlzcGxheTpub25lfX1AbWVkaWEobWF4LXdpZHRoOjc4MnB4KXsud2MtYmxvY2stY2FydCAud2MtYmxvY2stY2FydF9fc3VibWl0LWNvbnRhaW5lci0tc3RpY2t5e2JhY2tncm91bmQ6I2ZmZjtib3R0b206MDtsZWZ0OjA7cGFkZGluZzoxNnB4O3Bvc2l0aW9uOmZpeGVkO3dpZHRoOjEwMCU7ei1pbmRleDo5OTk5fS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0X19zdWJtaXQtY29udGFpbmVyLS1zdGlja3k6YmVmb3Jle2JveC1zaGFkb3c6MCAtMTBweCAyMHB4IDEwcHggY3VycmVudENvbG9yO2NvbG9yOmhzbGEoMCwwJSw4MCUsLjUpO2NvbnRlbnQ6IiI7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9fS53Yy1ibG9jay1jaGVja291dC1lcnJvcntwYWRkaW5nOjQwcHg7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MTAwJX0ud2MtYmxvY2stY2hlY2tvdXQtZXJyb3IgLndjLWJsb2NrLWNoZWNrb3V0LWVycm9yX19pbWFnZXtjb2xvcjppbmhlcml0O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgYXV0byAxZW07bWF4LXdpZHRoOjE1MHB4fS53Yy1ibG9jay1jaGVja291dC1lcnJvciAud2MtYmxvY2stY2hlY2tvdXQtZXJyb3JfX3RpdGxle2Rpc3BsYXk6YmxvY2s7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbjowfS53Yy1ibG9jay1jaGVja291dC1lcnJvciAud2MtYmxvY2stY2hlY2tvdXQtZXJyb3JfX2Rlc2NyaXB0aW9ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luOi4yNWVtIDAgMWVtfS53Yy1ibG9jay1jaGVja291dC1lbXB0eXtwYWRkaW5nOjQwcHg7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MTAwJX0ud2MtYmxvY2stY2hlY2tvdXQtZW1wdHkgLndjLWJsb2NrLWNoZWNrb3V0LWVtcHR5X19pbWFnZXtjb2xvcjppbmhlcml0O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgYXV0byAxZW07bWF4LXdpZHRoOjE1MHB4fS53Yy1ibG9jay1jaGVja291dC1lbXB0eSAud2MtYmxvY2stY2hlY2tvdXQtZW1wdHlfX3RpdGxle2Rpc3BsYXk6YmxvY2s7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbjowfS53Yy1ibG9jay1jaGVja291dC1lbXB0eSAud2MtYmxvY2stY2hlY2tvdXQtZW1wdHlfX2Rlc2NyaXB0aW9ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luOi4yNWVtIDAgMWVtfS53Yy1ibG9jay1jaGVja291dF9fYWN0aW9uc3thbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS53Yy1ibG9jay1jaGVja291dF9fYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1wbGFjZS1vcmRlci1idXR0b257aGVpZ2h0OmF1dG87cGFkZGluZzoxZW07d2lkdGg6NTAlfS53Yy1ibG9jay1jaGVja291dF9fYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1wbGFjZS1vcmRlci1idXR0b24gLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uX190ZXh0e2xpbmUtaGVpZ2h0OjI0cHh9LndjLWJsb2NrLWNoZWNrb3V0X19hY3Rpb25zIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXBsYWNlLW9yZGVyLWJ1dHRvbiAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b25fX3RleHQ+c3Zne2ZpbGw6I2ZmZjt2ZXJ0aWNhbC1hbGlnbjp0b3B9LmlzLW1vYmlsZSAud2MtYmxvY2stY2hlY2tvdXRfX2FjdGlvbnMgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tvdXQtcmV0dXJuLXRvLWNhcnQtYnV0dG9ue2Rpc3BsYXk6bm9uZX0uaXMtbW9iaWxlIC53Yy1ibG9jay1jaGVja291dF9fYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja291dC1wbGFjZS1vcmRlci1idXR0b257d2lkdGg6MTAwJX0uaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19hY3Rpb25ze3BhZGRpbmc6MS41ZW0gMDtwb3NpdGlvbjpyZWxhdGl2ZX0uaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19hY3Rpb25zOmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4IDAgMDtib3R0b206MDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7bGVmdDowO29wYWNpdHk6LjM7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfS53Yy1ibG9jay1jaGVja291dF9fZm9ybXttYXJnaW46MDttYXgtd2lkdGg6MTAwJX0uaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fbWFpbiwuaXMtbW9iaWxlIC53Yy1ibG9jay1jaGVja291dF9fbWFpbiwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19tYWlue29yZGVyOjF9LmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtLC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0sLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0sLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybXttYXJnaW4tbGVmdDotNnB4O21hcmdpbi1yaWdodDotNnB4fS5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybTphZnRlciwuaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtOmFmdGVyLC5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm06YWZ0ZXIsLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm06YWZ0ZXIsLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtOmFmdGVyLC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm06YWZ0ZXJ7Y2xlYXI6Ym90aDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2t9LmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQsLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXN0YXRlLWlucHV0LC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0LC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY291bnRyeS1pbnB1dCwuaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXN0YXRlLWlucHV0LC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQsLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1zdGF0ZS1pbnB1dCwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQsLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY291bnRyeS1pbnB1dCwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1zdGF0ZS1pbnB1dCwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0LC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb3VudHJ5LWlucHV0LC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1zdGF0ZS1pbnB1dCwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dCwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQsLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1zdGF0ZS1pbnB1dCwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXR7ZmxvYXQ6bGVmdDttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0OjZweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDpjYWxjKDUwJSAtIDEycHgpfS5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb3VudHJ5LWlucHV0OmZpcnN0LW9mLXR5cGUsLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXN0YXRlLWlucHV0OmZpcnN0LW9mLXR5cGUsLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXN0YXRlLWlucHV0Om50aC1vZi10eXBlKDIpLC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0OmZpcnN0LW9mLXR5cGUsLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb3VudHJ5LWlucHV0OmZpcnN0LW9mLXR5cGUsLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb3VudHJ5LWlucHV0Om50aC1vZi10eXBlKDIpLC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtc3RhdGUtaW5wdXQ6Zmlyc3Qtb2YtdHlwZSwuaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXN0YXRlLWlucHV0Om50aC1vZi10eXBlKDIpLC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dDpmaXJzdC1vZi10eXBlLC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dDpudGgtb2YtdHlwZSgyKSwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQ6Zmlyc3Qtb2YtdHlwZSwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1zdGF0ZS1pbnB1dDpmaXJzdC1vZi10eXBlLC5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtc3RhdGUtaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0OmZpcnN0LW9mLXR5cGUsLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Om50aC1vZi10eXBlKDIpLC5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQ6Zmlyc3Qtb2YtdHlwZSwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jb3VudHJ5LWlucHV0Om50aC1vZi10eXBlKDIpLC5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXN0YXRlLWlucHV0OmZpcnN0LW9mLXR5cGUsLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtc3RhdGUtaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dDpmaXJzdC1vZi10eXBlLC5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQ6Zmlyc3Qtb2YtdHlwZSwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY291bnRyeS1pbnB1dDpudGgtb2YtdHlwZSgyKSwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtc3RhdGUtaW5wdXQ6Zmlyc3Qtb2YtdHlwZSwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtc3RhdGUtaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLXRleHQtaW5wdXQ6Zmlyc3Qtb2YtdHlwZSwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtdGV4dC1pbnB1dDpudGgtb2YtdHlwZSgyKSwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQ6Zmlyc3Qtb2YtdHlwZSwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNvdW50cnktaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1zdGF0ZS1pbnB1dDpmaXJzdC1vZi10eXBlLC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtc3RhdGUtaW5wdXQ6bnRoLW9mLXR5cGUoMiksLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0OmZpcnN0LW9mLXR5cGUsLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0Om50aC1vZi10eXBlKDIpe21hcmdpbi10b3A6MH0uaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtX19hZGRyZXNzXzEsLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybV9fYWRkcmVzc18yLC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2NvbXBhbnksLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2FkZHJlc3NfMSwuaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybV9fYWRkcmVzc18yLC5pcy1sYXJnZSAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtX19jb21wYW55LC5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtX19hZGRyZXNzXzEsLmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2FkZHJlc3NfMiwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybV9fY29tcGFueSwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2FkZHJlc3NfMSwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2FkZHJlc3NfMiwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2NvbXBhbnksLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybV9fYWRkcmVzc18xLC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2FkZHJlc3NfMiwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtX19jb21wYW55LC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtX19hZGRyZXNzXzEsLmlzLXNtYWxsIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm1fX2FkZHJlc3NfMiwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybV9fY29tcGFueXt3aWR0aDpjYWxjKDEwMCUgLSAxMnB4KX0uaXMtbGFyZ2UgLndjLWJsb2NrLWNoZWNrb3V0X19iaWxsaW5nLWZpZWxkcyAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3gsLmlzLWxhcmdlIC53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveCwuaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fYmlsbGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94LC5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94LC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX2JpbGxpbmctZmllbGRzIC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveCwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19zaGlwcGluZy1maWVsZHMgLndjLWJsb2NrLWNvbXBvbmVudHMtYWRkcmVzcy1mb3JtIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94e2NsZWFyOmJvdGh9LmNvbXBvbmVudHMtcGxhY2Vob2xkZXIud2MtYmxvY2stY2hlY2tvdXRfX25vLXNoaXBwaW5nLXBsYWNlaG9sZGVye21hcmdpbi1ib3R0b206MTZweH0uY29tcG9uZW50cy1wbGFjZWhvbGRlci53Yy1ibG9jay1jaGVja291dF9fbm8tc2hpcHBpbmctcGxhY2Vob2xkZXIgKntwb2ludGVyLWV2ZW50czphbGx9LmNvbXBvbmVudHMtcGxhY2Vob2xkZXIud2MtYmxvY2stY2hlY2tvdXRfX25vLXNoaXBwaW5nLXBsYWNlaG9sZGVyIC5jb21wb25lbnRzLXBsYWNlaG9sZGVyX19maWVsZHNldHtkaXNwbGF5OmJsb2NrfS5jb21wb25lbnRzLXBsYWNlaG9sZGVyLndjLWJsb2NrLWNoZWNrb3V0X19uby1zaGlwcGluZy1wbGFjZWhvbGRlciAuY29tcG9uZW50cy1wbGFjZWhvbGRlcl9fZmllbGRzZXQgLmNvbXBvbmVudHMtYnV0dG9ue2JhY2tncm91bmQtY29sb3I6IzFlMWUxZTtjb2xvcjojZmZmfS5jb21wb25lbnRzLXBsYWNlaG9sZGVyLndjLWJsb2NrLWNoZWNrb3V0X19uby1zaGlwcGluZy1wbGFjZWhvbGRlciAuY29tcG9uZW50cy1wbGFjZWhvbGRlcl9fZmllbGRzZXQgLndjLWJsb2NrLWNoZWNrb3V0X19uby1zaGlwcGluZy1wbGFjZWhvbGRlci1kZXNjcmlwdGlvbntkaXNwbGF5OmJsb2NrO21hcmdpbjouMjVlbSAwIDFlbX0ud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLW9wdGlvbiAud2MtYmxvY2stY29tcG9uZW50cy1yYWRpby1jb250cm9sX19vcHRpb257bWFyZ2luOjA7cGFkZGluZzouNzVlbSAwIC43NWVtIDIuNWVtO3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jaGVja291dF9fc2hpcHBpbmctb3B0aW9uIC53Yy1ibG9jay1jb21wb25lbnRzLXJhZGlvLWNvbnRyb2xfX29wdGlvbjphZnRlcntib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjAgMCAxcHg7Ym90dG9tOjA7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2xlZnQ6MDtvcGFjaXR5Oi4zO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ud2MtYmxvY2stY2hlY2tvdXRfX3NoaXBwaW5nLW9wdGlvbiAud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1yYXRlcy1jb250cm9sX19uby1yZXN1bHRzLW5vdGljZXttYXJnaW46Ljc1ZW0gMH0ud2MtYmxvY2stY2hlY2tvdXRfX3Rlcm1ze21hcmdpbjoxLjVlbSAwfS53Yy1ibG9jay1jaGVja291dF9fdGVybXMgdGV4dGFyZWF7cG9zaXRpb246cmVsYXRpdmU7dG9wOi01cHh9LndjLWJsb2NrLWNoZWNrb3V0X190ZXJtcy53Yy1ibG9jay1jaGVja291dF9fdGVybXMtLWRpc2FibGVke29wYWNpdHk6LjZ9LndjLWJsb2NrLWNoZWNrb3V0X19zaWRlYmFyIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbmFtZXtjb2xvcjppbmhlcml0O2Rpc3BsYXk6YmxvY2s7ZmxleC1iYXNpczowO2ZsZXgtZ3JvdzoxfS53Yy1ibG9jay1jaGVja291dF9fc2lkZWJhciAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtZm9vdGVyLWl0ZW17bWFyZ2luOjA7cGFkZGluZzowfS5pcy1tZWRpdW0gLndjLWJsb2NrLWNoZWNrb3V0X19zaWRlYmFyLC5pcy1tb2JpbGUgLndjLWJsb2NrLWNoZWNrb3V0X19zaWRlYmFyLC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX3NpZGViYXJ7bWFyZ2luLWJvdHRvbToyNHB4O29yZGVyOjB9LndjLWJsb2NrLWNoZWNrb3V0X19hZGQtbm90ZXttYXJnaW46MS41ZW0gMH0uaXMtbWVkaXVtIC53Yy1ibG9jay1jaGVja291dF9fYWRkLW5vdGUsLmlzLW1vYmlsZSAud2MtYmxvY2stY2hlY2tvdXRfX2FkZC1ub3RlLC5pcy1zbWFsbCAud2MtYmxvY2stY2hlY2tvdXRfX2FkZC1ub3Rle21hcmdpbi1ib3R0b206MWVtO21hcmdpbi10b3A6MWVtO3BhZGRpbmc6MWVtIDA7cG9zaXRpb246cmVsYXRpdmV9LmlzLW1lZGl1bSAud2MtYmxvY2stY2hlY2tvdXRfX2FkZC1ub3RlOmFmdGVyLC5pcy1tb2JpbGUgLndjLWJsb2NrLWNoZWNrb3V0X19hZGQtbm90ZTphZnRlciwuaXMtc21hbGwgLndjLWJsb2NrLWNoZWNrb3V0X19hZGQtbm90ZTphZnRlcntib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjFweCAwO2JvdHRvbTowO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztsZWZ0OjA7b3BhY2l0eTouMztwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LndjLWJsb2NrLWNoZWNrb3V0X19hZGQtbm90ZSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0YXJlYXttYXJnaW4tdG9wOjE2cHh9LndjLWJsb2NrLWNoZWNrb3V0X19vcmRlci1ub3Rlcy53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrb3V0LXN0ZXB7cGFkZGluZy1sZWZ0OjB9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0e21hcmdpbjowfS53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dCAud2l0aC1zY3JvbGwtdG8tdG9wX19zY3JvbGwtcG9pbnR7dG9wOi05NnB4fS53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5ne2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDttYXJnaW46MCBhdXRvIDE2cHg7cG9zaXRpb246cmVsYXRpdmV9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9ja3twYWRkaW5nLWxlZnQ6Mi4yNjQxNTA5NDM0JTt3aWR0aDozNSV9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LWZpZWxkcy1ibG9ja3twYWRkaW5nLXJpZ2h0OjMuNzczNTg0OTA1NyU7d2lkdGg6NjUlfS53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1maWVsZHMtYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9ja3tib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjB9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LWZpZWxkcy1ibG9jaz5kaXYsLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jaz5kaXZ7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2Rpc3BsYXk6bm9uZTtsaW5lLWhlaWdodDoxO21hcmdpbjowIDAgMS41ZW07bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0ud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtZmllbGRzLWJsb2NrPmRpdj4qLC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC10b3RhbHMtYmxvY2s+ZGl2Pip7dmlzaWJpbGl0eTpoaWRkZW59LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LWZpZWxkcy1ibG9jaz5kaXY6YWZ0ZXIsLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jaz5kaXY6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtZmllbGRzLWJsb2NrPmRpdiwud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtdG90YWxzLWJsb2NrPmRpdnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtZmllbGRzLWJsb2NrIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1jb250YWN0LWluZm9ybWF0aW9uLWJsb2NrLC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1maWVsZHMtYmxvY2sgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQtYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jayAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtY29udGFjdC1pbmZvcm1hdGlvbi1ibG9jaywud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtdG90YWxzLWJsb2NrIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1wYXltZW50LWJsb2Nre2Rpc3BsYXk6YmxvY2s7bWluLWhlaWdodDoxMGVtfS53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1maWVsZHMtYmxvY2sgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXNoaXBwaW5nLWFkZHJlc3MtYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jayAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtc2hpcHBpbmctYWRkcmVzcy1ibG9ja3tkaXNwbGF5OmJsb2NrO21pbi1oZWlnaHQ6MjRlbX0ud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtZmllbGRzLWJsb2NrIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1hY3Rpb25zLWJsb2NrLC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC10b3RhbHMtYmxvY2sgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LWFjdGlvbnMtYmxvY2t7ZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDo1MCU7bWluLWhlaWdodDo0ZW07d2lkdGg6NTAlfS53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1maWVsZHMtYmxvY2sgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LW9yZGVyLXN1bW1hcnktYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jayAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtb3JkZXItc3VtbWFyeS1ibG9ja3tkaXNwbGF5OmJsb2NrO21pbi1oZWlnaHQ6NDdlbX0ud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtZmllbGRzLWJsb2NrIC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsPmgyLC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC10b3RhbHMtYmxvY2sgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWw+aDJ7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO2NvbG9yOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6MWVtO2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xldHRlci1zcGFjaW5nOmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MDtwYWRkaW5nOjA7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtZmllbGRzLWJsb2NrIC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsPmgyIC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19idXR0b24sLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jayAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbD5oMiAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9ue2ZvbnQtd2VpZ2h0OjQwMH0ud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtZmllbGRzLWJsb2NrIC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsLC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC1maWVsZHMtYmxvY2sgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW0sLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jayAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbCwud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtdG90YWxzLWJsb2NrIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1pdGVte3BhZGRpbmctbGVmdDoxNnB4O3BhZGRpbmctcmlnaHQ6MTZweH1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzAwcHgpey53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5ne2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MCBhdXRvIDE2cHh9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LWZpZWxkcy1ibG9jaywud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2hlY2tvdXQtdG90YWxzLWJsb2Nre3BhZGRpbmc6MDt3aWR0aDoxMDAlfS53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jaGVja291dC10b3RhbHMtYmxvY2sgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWwsLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jayAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtaXRlbXtwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjB9fS50aGVtZS10d2VudHl0d2VudHkgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNoZWNrb3V0LXRvdGFscy1ibG9jayAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbD5oMntib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Zm9udC1zaXplOjEuMjVlbTttYXJnaW46MDtwYWRkaW5nOjA7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWZlYXR1cmVkLWNhdGVnb3J5e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojZmZmfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeXthbGlnbi1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjppbmhlcml0O2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW46MDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJX0ud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkuaGFzLWJhY2tncm91bmQtZGltIC5iYWNrZ3JvdW5kLWRpbV9fb3ZlcmxheTpiZWZvcmV7YmFja2dyb3VuZDppbmhlcml0O2JvcmRlci1yYWRpdXM6aW5oZXJpdDtib3R0b206MDtjb250ZW50OiIiO2xlZnQ6MDtvcGFjaXR5Oi41O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7ei1pbmRleDoxfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tMTAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi4xfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tMjAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi4yfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tMzAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi4zfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tNDAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi40fS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tNTAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi41fS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tNjAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi42fS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tNzAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi43fS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tODAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi44fS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tOTAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi45fS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtYmFja2dyb3VuZC1kaW0tMTAwIC5iYWNrZ3JvdW5kLWRpbV9fb3ZlcmxheTpiZWZvcmV7b3BhY2l0eToxfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fc2VsZWN0aW9ue3dpZHRoOjEwMCV9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5Lmhhcy1sZWZ0LWNvbnRlbnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5Lmhhcy1sZWZ0LWNvbnRlbnQgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19kZXNjcmlwdGlvbiwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkuaGFzLWxlZnQtY29udGVudCAud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3ByaWNlLC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeS5oYXMtbGVmdC1jb250ZW50IC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fdGl0bGUsLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5Lmhhcy1sZWZ0LWNvbnRlbnQgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X192YXJpYXRpb257bWFyZ2luLWxlZnQ6MDt0ZXh0LWFsaWduOmxlZnR9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5Lmhhcy1yaWdodC1jb250ZW50e2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkuaGFzLXJpZ2h0LWNvbnRlbnQgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19kZXNjcmlwdGlvbiwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkuaGFzLXJpZ2h0LWNvbnRlbnQgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19wcmljZSwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkuaGFzLXJpZ2h0LWNvbnRlbnQgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X190aXRsZSwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkuaGFzLXJpZ2h0LWNvbnRlbnQgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X192YXJpYXRpb257bWFyZ2luLXJpZ2h0OjA7dGV4dC1hbGlnbjpyaWdodH0ud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkuaXMtcmVwZWF0ZWR7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0O2JhY2tncm91bmQtc2l6ZTphdXRvfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fZGVzY3JpcHRpb24sLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19wcmljZSwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3RpdGxlLC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fdmFyaWF0aW9ue2xpbmUtaGVpZ2h0OjEuMjU7bWFyZ2luLWJvdHRvbTowO3RleHQtYWxpZ246Y2VudGVyfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fZGVzY3JpcHRpb24gYSwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX2Rlc2NyaXB0aW9uIGE6YWN0aXZlLC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fZGVzY3JpcHRpb24gYTpmb2N1cywud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX2Rlc2NyaXB0aW9uIGE6aG92ZXIsLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19wcmljZSBhLC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fcHJpY2UgYTphY3RpdmUsLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19wcmljZSBhOmZvY3VzLC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fcHJpY2UgYTpob3Zlciwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3RpdGxlIGEsLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X190aXRsZSBhOmFjdGl2ZSwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3RpdGxlIGE6Zm9jdXMsLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X190aXRsZSBhOmhvdmVyLC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fdmFyaWF0aW9uIGEsLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X192YXJpYXRpb24gYTphY3RpdmUsLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X192YXJpYXRpb24gYTpmb2N1cywud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3ZhcmlhdGlvbiBhOmhvdmVye2NvbG9yOiNmZmZ9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19kZXNjcmlwdGlvbiwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX2xpbmssLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19wcmljZSwud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3RpdGxlLC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fdmFyaWF0aW9ue2NvbG9yOmluaGVyaXQ7cGFkZGluZzowIDQ4cHggMTZweDt3aWR0aDoxMDAlO3otaW5kZXg6MX0ud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19iYWNrZ3JvdW5kLWltYWdle2JvdHRvbTowO2hlaWdodDoxMDAlO2xlZnQ6MDttYXJnaW46MDstby1vYmplY3QtZml0Om5vbmU7b2JqZWN0LWZpdDpub25lO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3dpZHRoOjEwMCV9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5IC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fYmFja2dyb3VuZC1pbWFnZS5oYXMtcGFyYWxsYXh7YmFja2dyb3VuZC1hdHRhY2htZW50OmZpeGVkfUBzdXBwb3J0cygtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaCl7LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5IC53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeV9fYmFja2dyb3VuZC1pbWFnZS5oYXMtcGFyYWxsYXh7YmFja2dyb3VuZC1hdHRhY2htZW50OnNjcm9sbH19QG1lZGlhKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnkgLndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19iYWNrZ3JvdW5kLWltYWdlLmhhcy1wYXJhbGxheHtiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6c2Nyb2xsfX0ud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX2Rlc2NyaXB0aW9ue2NvbG9yOmluaGVyaXR9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X19kZXNjcmlwdGlvbiBwe21hcmdpbjowfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeSAud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3RpdGxle2NvbG9yOmluaGVyaXQ7bWFyZ2luLXRvcDowfS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeSAud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3RpdGxlIGRpdntjb2xvcjppbmhlcml0fS53Yy1ibG9jay1mZWF0dXJlZC1jYXRlZ29yeSAud2MtYmxvY2stZmVhdHVyZWQtY2F0ZWdvcnlfX3RpdGxlOmJlZm9yZXtkaXNwbGF5Om5vbmV9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5X193cmFwcGVye2FsaWduLWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2hlaWdodDoxMDAlO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCV9LndjLWJsb2NrLWZlYXR1cmVkLWNhdGVnb3J5IC53cC1ibG9jay1idXR0b24uYWxpZ25jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWZlYXR1cmVkLXByb2R1Y3R7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOiNmZmZ9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3R7YWxpZ24tY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWJhY2tncm91bmQtZGltIC5iYWNrZ3JvdW5kLWRpbV9fb3ZlcmxheTpiZWZvcmV7YmFja2dyb3VuZDppbmhlcml0O2JvcmRlci1yYWRpdXM6aW5oZXJpdDtib3R0b206MDtjb250ZW50OiIiO2xlZnQ6MDtvcGFjaXR5Oi41O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7ei1pbmRleDoxfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0Lmhhcy1iYWNrZ3JvdW5kLWRpbS0xMCAuYmFja2dyb3VuZC1kaW1fX292ZXJsYXk6YmVmb3Jle29wYWNpdHk6LjF9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWJhY2tncm91bmQtZGltLTIwIC5iYWNrZ3JvdW5kLWRpbV9fb3ZlcmxheTpiZWZvcmV7b3BhY2l0eTouMn0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdC5oYXMtYmFja2dyb3VuZC1kaW0tMzAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi4zfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0Lmhhcy1iYWNrZ3JvdW5kLWRpbS00MCAuYmFja2dyb3VuZC1kaW1fX292ZXJsYXk6YmVmb3Jle29wYWNpdHk6LjR9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWJhY2tncm91bmQtZGltLTUwIC5iYWNrZ3JvdW5kLWRpbV9fb3ZlcmxheTpiZWZvcmV7b3BhY2l0eTouNX0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdC5oYXMtYmFja2dyb3VuZC1kaW0tNjAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi42fS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0Lmhhcy1iYWNrZ3JvdW5kLWRpbS03MCAuYmFja2dyb3VuZC1kaW1fX292ZXJsYXk6YmVmb3Jle29wYWNpdHk6Ljd9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWJhY2tncm91bmQtZGltLTgwIC5iYWNrZ3JvdW5kLWRpbV9fb3ZlcmxheTpiZWZvcmV7b3BhY2l0eTouOH0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdC5oYXMtYmFja2dyb3VuZC1kaW0tOTAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5Oi45fS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0Lmhhcy1iYWNrZ3JvdW5kLWRpbS0xMDAgLmJhY2tncm91bmQtZGltX19vdmVybGF5OmJlZm9yZXtvcGFjaXR5OjF9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3NlbGVjdGlvbnt3aWR0aDoxMDAlfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0Lmhhcy1sZWZ0LWNvbnRlbnR7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWxlZnQtY29udGVudCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fZGVzY3JpcHRpb24sLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWxlZnQtY29udGVudCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fcHJpY2UsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWxlZnQtY29udGVudCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdGl0bGUsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLWxlZnQtY29udGVudCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdmFyaWF0aW9ue21hcmdpbi1sZWZ0OjA7dGV4dC1hbGlnbjpsZWZ0fS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0Lmhhcy1yaWdodC1jb250ZW50e2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdC5oYXMtcmlnaHQtY29udGVudCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fZGVzY3JpcHRpb24sLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaGFzLXJpZ2h0LWNvbnRlbnQgLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3ByaWNlLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0Lmhhcy1yaWdodC1jb250ZW50IC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X190aXRsZSwud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdC5oYXMtcmlnaHQtY29udGVudCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdmFyaWF0aW9ue21hcmdpbi1yaWdodDowO3RleHQtYWxpZ246cmlnaHR9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QuaXMtcmVwZWF0ZWR7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0O2JhY2tncm91bmQtc2l6ZTphdXRvfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19kZXNjcmlwdGlvbiwud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fcHJpY2UsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3RpdGxlLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X192YXJpYXRpb257bGluZS1oZWlnaHQ6MS4yNTttYXJnaW4tYm90dG9tOjA7dGV4dC1hbGlnbjpjZW50ZXJ9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX2Rlc2NyaXB0aW9uIGEsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX2Rlc2NyaXB0aW9uIGE6YWN0aXZlLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19kZXNjcmlwdGlvbiBhOmZvY3VzLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19kZXNjcmlwdGlvbiBhOmhvdmVyLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19wcmljZSBhLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19wcmljZSBhOmFjdGl2ZSwud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fcHJpY2UgYTpmb2N1cywud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fcHJpY2UgYTpob3Zlciwud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdGl0bGUgYSwud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdGl0bGUgYTphY3RpdmUsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3RpdGxlIGE6Zm9jdXMsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3RpdGxlIGE6aG92ZXIsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3ZhcmlhdGlvbiBhLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X192YXJpYXRpb24gYTphY3RpdmUsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3ZhcmlhdGlvbiBhOmZvY3VzLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X192YXJpYXRpb24gYTpob3Zlcntjb2xvcjojZmZmfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19kZXNjcmlwdGlvbiwud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fbGluaywud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fcHJpY2UsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3RpdGxlLC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X192YXJpYXRpb257Y29sb3I6aW5oZXJpdDtwYWRkaW5nOjAgNDhweCAxNnB4O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0IC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19iYWNrZ3JvdW5kLWltYWdle2JvdHRvbTowO2hlaWdodDoxMDAlO2xlZnQ6MDttYXJnaW46MDstby1vYmplY3QtZml0Om5vbmU7b2JqZWN0LWZpdDpub25lO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3dpZHRoOjEwMCV9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QgLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX2JhY2tncm91bmQtaW1hZ2UuaGFzLXBhcmFsbGF4e2JhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZH1Ac3VwcG9ydHMoLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2gpey53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0IC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19iYWNrZ3JvdW5kLWltYWdlLmhhcy1wYXJhbGxheHtiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6c2Nyb2xsfX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0IC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19iYWNrZ3JvdW5kLWltYWdlLmhhcy1wYXJhbGxheHtiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6c2Nyb2xsfX0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fZGVzY3JpcHRpb257Y29sb3I6aW5oZXJpdH0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fZGVzY3JpcHRpb24gcHttYXJnaW46MH0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdGl0bGV7Y29sb3I6aW5oZXJpdDttYXJnaW4tdG9wOjB9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QgLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3RpdGxlIGRpdntjb2xvcjppbmhlcml0fS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0IC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X190aXRsZTpiZWZvcmV7ZGlzcGxheTpub25lfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X193cmFwcGVye2FsaWduLWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2hlaWdodDoxMDAlO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCV9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QgLndwLWJsb2NrLWJ1dHRvbi5hbGlnbmNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0ud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdGl0bGUsLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QgLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3ZhcmlhdGlvbntib3JkZXI6MDttYXJnaW4tdG9wOjB9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QgLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3RpdGxlOmJlZm9yZSwud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdCAud2MtYmxvY2stZmVhdHVyZWQtcHJvZHVjdF9fdmFyaWF0aW9uOmJlZm9yZXtkaXNwbGF5Om5vbmV9LndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3QgLndjLWJsb2NrLWZlYXR1cmVkLXByb2R1Y3RfX3ZhcmlhdGlvbntmb250LXN0eWxlOml0YWxpYztwYWRkaW5nLXRvcDowfS53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0IC53Yy1ibG9jay1mZWF0dXJlZC1wcm9kdWN0X19kZXNjcmlwdGlvbiBwe2xpbmUtaGVpZ2h0OjEuNTttYXJnaW46MH0ud2MtYmxvY2stbWluaS1jYXJ0X19iYWRnZSwud2MtYmxvY2stbWluaS1jYXJ0X19xdWFudGl0eS1iYWRnZXthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4fS53Yy1ibG9jay1taW5pLWNhcnRfX2JhZGdle2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOi4xNWVtIHNvbGlkO2JvcmRlci1yYWRpdXM6MWVtO2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjppbmhlcml0O2ZvbnQtc2l6ZTouODc1ZW07Zm9udC13ZWlnaHQ6NjAwO2hlaWdodDoxLjQyODU3MTQyODZlbTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1sZWZ0Oi0uNzE0Mjg1NzE0M2VtO21pbi13aWR0aDoxLjQyODU3MTQyODZlbTtwYWRkaW5nOjAgLjI1ZW07dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2hpdGUtc3BhY2U6bm93cmFwO3otaW5kZXg6MX0ud2MtYmxvY2stbWluaS1jYXJ0X19pY29ue2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEuNWVtO3dpZHRoOjEuNWVtfWh0bWxbZGlyPXJ0bF0gLndjLWJsb2NrLW1pbmktY2FydF9faWNvbnt0cmFuc2Zvcm06c2NhbGVYKC0xKX0ud2MtYmxvY2stY2FydCAud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1jYWxjdWxhdG9ye3doaXRlLXNwYWNlOm5vd3JhcH0ud2MtYmxvY2stY2FydCAud2MtYmxvY2stY29tcG9uZW50cy1hZGRyZXNzLWZvcm0gLndjLWJsb2NrLWNvbXBvbmVudHMtY291bnRyeS1pbnB1dDpmaXJzdC1vZi10eXBlLC53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy1zdGF0ZS1pbnB1dDpmaXJzdC1vZi10eXBlLC53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLWFkZHJlc3MtZm9ybSAud2MtYmxvY2stY29tcG9uZW50cy10ZXh0LWlucHV0OmZpcnN0LW9mLXR5cGV7bWFyZ2luLXRvcDowfXRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMsdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyB0ZCx0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIHRoe2JhY2tncm91bmQ6bm9uZSFpbXBvcnRhbnQ7Ym9yZGVyOjA7bWFyZ2luOjAgMCAyZW19LmVkaXRvci1zdHlsZXMtd3JhcHBlciB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zLHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXN7d2lkdGg6MTAwJX0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX2hlYWRlcix0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19oZWFkZXJ7Zm9udC1zaXplOi43NWVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX2hlYWRlciAud2MtYmxvY2stY2FydC1pdGVtc19faGVhZGVyLWltYWdlLHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX2hlYWRlciAud2MtYmxvY2stY2FydC1pdGVtc19faGVhZGVyLWltYWdle3dpZHRoOjEwMHB4fS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19faGVhZGVyIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19oZWFkZXItcHJvZHVjdCx0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19oZWFkZXIgLndjLWJsb2NrLWNhcnQtaXRlbXNfX2hlYWRlci1wcm9kdWN0e3Zpc2liaWxpdHk6aGlkZGVufS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19faGVhZGVyIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19oZWFkZXItdG90YWwsdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19faGVhZGVyIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19oZWFkZXItdG90YWx7dGV4dC1hbGlnbjpyaWdodDt3aWR0aDoxMDBweH0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX19pbWFnZSBpbWcsdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX2ltYWdlIGltZ3ttYXJnaW46MDt3aWR0aDoxMDAlfS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3F1YW50aXR5IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3JlbW92ZS1saW5rLHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX19xdWFudGl0eSAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGlua3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDtib3gtc2hhZG93Om5vbmU7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OmlubGluZTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc2l6ZTouNzVlbTtmb250LXN0eWxlOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjA7cGFkZGluZzowO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTppbmhlcml0O3RleHQtdHJhbnNmb3JtOm5vbmU7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7d2hpdGUtc3BhY2U6bm93cmFwfS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3F1YW50aXR5IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3JlbW92ZS1saW5rOmFjdGl2ZSwuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX19xdWFudGl0eSAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGluazpmb2N1cywuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX19xdWFudGl0eSAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGluazpob3Zlcix0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9fcXVhbnRpdHkgLndjLWJsb2NrLWNhcnQtaXRlbV9fcmVtb3ZlLWxpbms6YWN0aXZlLHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX19xdWFudGl0eSAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGluazpmb2N1cyx0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9fcXVhbnRpdHkgLndjLWJsb2NrLWNhcnQtaXRlbV9fcmVtb3ZlLWxpbms6aG92ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW5hbWUsdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbmFtZXtkaXNwbGF5OmJsb2NrO21heC13aWR0aDotd2Via2l0LW1heC1jb250ZW50O21heC13aWR0aDotbW96LW1heC1jb250ZW50O21heC13aWR0aDptYXgtY29udGVudH0uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX190b3RhbCx0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9fdG90YWx7Zm9udC1zaXplOjFlbTtsaW5lLWhlaWdodDppbmhlcml0O3RleHQtYWxpZ246cmlnaHR9LmVkaXRvci1zdHlsZXMtd3JhcHBlciB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YSx0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YXttYXJnaW4tYm90dG9tOi43NWVtfS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93LmlzLWRpc2FibGVkLHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3Jvdy5pcy1kaXNhYmxlZHtvcGFjaXR5Oi41O3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlfS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1mb290ZXItaXRlbSwud2MtYmxvY2stY2FydCAud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtdGF4ZXN7bWFyZ2luOjB9LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgaDIgc3Bhbiwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyB0aCBzcGFuLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIGgyIHNwYW4sLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgdGggc3BhbntiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7bWluLXdpZHRoOjg0cHg7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIGgyIHNwYW4+Kiwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyB0aCBzcGFuPiosLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgaDIgc3Bhbj4qLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIHRoIHNwYW4+Knt2aXNpYmlsaXR5OmhpZGRlbn0ud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyBoMiBzcGFuOmFmdGVyLC53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIHRoIHNwYW46YWZ0ZXIsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgaDIgc3BhbjphZnRlciwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyB0aCBzcGFuOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgaDIgc3Bhbiwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyB0aCBzcGFuLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIGgyIHNwYW4sLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgdGggc3Bhbnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyBoMiBzcGFuOmJlZm9yZSwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyB0aCBzcGFuOmJlZm9yZSwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyBoMiBzcGFuOmJlZm9yZSwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyB0aCBzcGFuOmJlZm9yZXtjb250ZW50OiLCoCJ9LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgaDIgc3Bhbiwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyBoMiBzcGFue21pbi13aWR0aDozMyV9LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YSwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNlLC53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbWV0YWRhdGEsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZSwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3RvcntiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbWV0YWRhdGE+Kiwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNlPiosLndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3I+Kiwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW1ldGFkYXRhPiosLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZT4qLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yPip7dmlzaWJpbGl0eTpoaWRkZW59LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YTphZnRlciwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNlOmFmdGVyLC53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXF1YW50aXR5LXNlbGVjdG9yOmFmdGVyLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbWV0YWRhdGE6YWZ0ZXIsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZTphZnRlciwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3RvcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbWV0YWRhdGEsLndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZSwud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1xdWFudGl0eS1zZWxlY3Rvciwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW1ldGFkYXRhLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcHJpY2UsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcXVhbnRpdHktc2VsZWN0b3J7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1uYW1lLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbmFtZXtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7bWluLXdpZHRoOjg0cHg7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbmFtZT4qLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbmFtZT4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbmFtZTphZnRlciwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW5hbWU6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW5hbWUsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1uYW1ley13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9fS53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtbmFtZTpiZWZvcmUsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1uYW1lOmJlZm9yZXtjb250ZW50OiLCoCJ9LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1tZXRhZGF0YSwud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LW1ldGFkYXRhe21hcmdpbi10b3A6LjI1ZW07bWluLXdpZHRoOjhlbX0ud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGluaywud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIuaXMtbG9hZGluZyAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGlua3t2aXNpYmlsaXR5OmhpZGRlbn0ud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY2FydC1pdGVtX19pbWFnZT5hLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jYXJ0LWl0ZW1fX2ltYWdlPmF7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0ud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY2FydC1pdGVtX19pbWFnZT5hPiosLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNhcnQtaXRlbV9faW1hZ2U+YT4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jYXJ0LWl0ZW1fX2ltYWdlPmE6YWZ0ZXIsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNhcnQtaXRlbV9faW1hZ2U+YTphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jYXJ0LWl0ZW1fX2ltYWdlPmEsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNhcnQtaXRlbV9faW1hZ2U+YXstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY29tcG9uZW50cy1wcm9kdWN0LXByaWNlLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jb21wb25lbnRzLXByb2R1Y3QtcHJpY2V7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOi4yNWVtO21heC13aWR0aDozZW19LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZTpiZWZvcmUsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNvbXBvbmVudHMtcHJvZHVjdC1wcmljZTpiZWZvcmV7Y29udGVudDoiwqAifS53Yy1ibG9jay1jYXJ0LS1pcy1sb2FkaW5nIC53Yy1ibG9jay1jYXJ0X19zaWRlYmFyIC5jb21wb25lbnRzLWNhcmQsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNhcnRfX3NpZGViYXIgLmNvbXBvbmVudHMtY2FyZHtiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7bWluLWhlaWdodDo0NjBweDtvdXRsaW5lOjAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTt6LWluZGV4OjF9LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNhcnRfX3NpZGViYXIgLmNvbXBvbmVudHMtY2FyZD4qLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jYXJ0X19zaWRlYmFyIC5jb21wb25lbnRzLWNhcmQ+Knt2aXNpYmlsaXR5OmhpZGRlbn0ud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY2FydF9fc2lkZWJhciAuY29tcG9uZW50cy1jYXJkOmFmdGVyLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jYXJ0X19zaWRlYmFyIC5jb21wb25lbnRzLWNhcmQ6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2MtYmxvY2stY2FydC0taXMtbG9hZGluZyAud2MtYmxvY2stY2FydF9fc2lkZWJhciAuY29tcG9uZW50cy1jYXJkLC53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlci5pcy1sb2FkaW5nIC53Yy1ibG9jay1jYXJ0X19zaWRlYmFyIC5jb21wb25lbnRzLWNhcmR7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndjLWJsb2NrLWNhcnQtLWlzLWxvYWRpbmcgLndjLWJsb2NrLWNhcnRfX3NpZGViYXIgLmNvbXBvbmVudHMtY2FyZDpiZWZvcmUsLndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyLmlzLWxvYWRpbmcgLndjLWJsb2NrLWNhcnRfX3NpZGViYXIgLmNvbXBvbmVudHMtY2FyZDpiZWZvcmV7Y29udGVudDoiwqAifS53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXItbGF5b3V0LndjLWJsb2NrLWNhcnQtLXNrZWxldG9ue2Rpc3BsYXk6bm9uZX0uaXMtbG9hZGluZysud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyLWxheW91dC53Yy1ibG9jay1jYXJ0LS1za2VsZXRvbntkaXNwbGF5OmZsZXh9LndjLWJsb2NrLWNhcnQtaXRlbV9fdG90YWwtcHJpY2UtYW5kLXNhbGUtYmFkZ2Utd3JhcHBlcnthbGlnbi1pdGVtczpmbGV4LWVuZDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS53Yy1ibG9jay1jYXJ0LWl0ZW1fX3RvdGFsLXByaWNlLWFuZC1zYWxlLWJhZGdlLXdyYXBwZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtc2FsZS1iYWRnZXttYXJnaW4tdG9wOjRweH0uaXMtbWVkaXVtLndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhciAud2MtYmxvY2stY2FydF9fdG90YWxzLXRpdGxlLC5pcy1tb2JpbGUgLndjLWJsb2NrLWNhcnQtaXRlbV9fdG90YWwgLndjLWJsb2NrLWNvbXBvbmVudHMtc2FsZS1iYWRnZSwuaXMtbW9iaWxlLndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhciAud2MtYmxvY2stY2FydF9fdG90YWxzLXRpdGxlLC5pcy1zbWFsbCAud2MtYmxvY2stY2FydC1pdGVtX190b3RhbCAud2MtYmxvY2stY29tcG9uZW50cy1zYWxlLWJhZGdlLC5pcy1zbWFsbC53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jb21wb25lbnRzLXNpZGViYXIgLndjLWJsb2NrLWNhcnRfX3RvdGFscy10aXRsZXtkaXNwbGF5Om5vbmV9LmlzLW1lZGl1bSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIHRkLC5pcy1tb2JpbGUgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyB0ZCwuaXMtc21hbGwgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyB0ZHtwYWRkaW5nOjB9LmlzLW1lZGl1bSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3JlbW92ZS1saW5rLC5pcy1tZWRpdW0gdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19faGVhZGVyLC5pcy1tb2JpbGUgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGluaywuaXMtbW9iaWxlIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX2hlYWRlciwuaXMtc21hbGwgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtX19yZW1vdmUtbGluaywuaXMtc21hbGwgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19faGVhZGVye2Rpc3BsYXk6bm9uZX0uaXMtbWVkaXVtIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXM6bm90KC53Yy1ibG9jay1taW5pLWNhcnQtaXRlbXMpIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3csLmlzLW1vYmlsZSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zOm5vdCgud2MtYmxvY2stbWluaS1jYXJ0LWl0ZW1zKSAud2MtYmxvY2stY2FydC1pdGVtc19fcm93LC5pcy1zbWFsbCB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zOm5vdCgud2MtYmxvY2stbWluaS1jYXJ0LWl0ZW1zKSAud2MtYmxvY2stY2FydC1pdGVtc19fcm93e3Bvc2l0aW9uOnJlbGF0aXZlfS5pcy1tZWRpdW0gdGFibGUud2MtYmxvY2stY2FydC1pdGVtczpub3QoLndjLWJsb2NrLW1pbmktY2FydC1pdGVtcykgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdzphZnRlciwuaXMtbW9iaWxlIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXM6bm90KC53Yy1ibG9jay1taW5pLWNhcnQtaXRlbXMpIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3c6YWZ0ZXIsLmlzLXNtYWxsIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXM6bm90KC53Yy1ibG9jay1taW5pLWNhcnQtaXRlbXMpIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3c6YWZ0ZXJ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDowIDAgMXB4O2JvdHRvbTowO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztsZWZ0OjA7b3BhY2l0eTouMztwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LmlzLW1lZGl1bSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3csLmlzLW1vYmlsZSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3csLmlzLXNtYWxsIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3Jvd3stbXMtZ3JpZC1jb2x1bW5zOjgwcHggMTMycHg7ZGlzcGxheTotbXMtZ3JpZDtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjgwcHggMTMycHg7cGFkZGluZzoxNnB4IDB9LmlzLW1lZGl1bSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9faW1hZ2UsLmlzLW1vYmlsZSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9faW1hZ2UsLmlzLXNtYWxsIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX19pbWFnZXstbXMtZ3JpZC1jb2x1bW46MTtncmlkLWNvbHVtbi1zdGFydDoxOy1tcy1ncmlkLXJvdzoxO2dyaWQtcm93LXN0YXJ0OjE7cGFkZGluZy1yaWdodDoxNnB4fS5pcy1tZWRpdW0gdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3Byb2R1Y3QsLmlzLW1vYmlsZSB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9fcHJvZHVjdCwuaXMtc21hbGwgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3Byb2R1Y3R7LW1zLWdyaWQtY29sdW1uLXNwYW46MjstbXMtZ3JpZC1jb2x1bW4tYWxpZ246c3RyZXRjaDstbXMtZ3JpZC1jb2x1bW46MjtncmlkLWNvbHVtbi1lbmQ6NDtncmlkLWNvbHVtbi1zdGFydDoyOy1tcy1ncmlkLXJvdzoxO2dyaWQtcm93LXN0YXJ0OjE7anVzdGlmeS1zZWxmOnN0cmV0Y2g7cGFkZGluZzowIDE2cHggMTZweCAwfS5pcy1tZWRpdW0gdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3F1YW50aXR5LC5pcy1tb2JpbGUgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3F1YW50aXR5LC5pcy1zbWFsbCB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9fcXVhbnRpdHl7LW1zLWdyaWQtcm93LWFsaWduOmVuZDthbGlnbi1zZWxmOmVuZDstbXMtZ3JpZC1jb2x1bW46MTtncmlkLWNvbHVtbi1zdGFydDoxOy1tcy1ncmlkLXJvdzoyO2dyaWQtcm93LXN0YXJ0OjI7cGFkZGluZy1yaWdodDoxNnB4O3BhZGRpbmctdG9wOjE2cHg7dmVydGljYWwtYWxpZ246Ym90dG9tfS5pcy1tZWRpdW0gdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3RvdGFsLC5pcy1tb2JpbGUgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3RvdGFsLC5pcy1zbWFsbCB0YWJsZS53Yy1ibG9jay1jYXJ0LWl0ZW1zIC53Yy1ibG9jay1jYXJ0LWl0ZW1zX19yb3cgLndjLWJsb2NrLWNhcnQtaXRlbV9fdG90YWx7LW1zLWdyaWQtcm93OjE7Z3JpZC1yb3ctc3RhcnQ6MX0uaXMtbWVkaXVtIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX190b3RhbCAud2MtYmxvY2stY29tcG9uZW50cy1mb3JtYXR0ZWQtbW9uZXktYW1vdW50LC5pcy1tb2JpbGUgdGFibGUud2MtYmxvY2stY2FydC1pdGVtcyAud2MtYmxvY2stY2FydC1pdGVtc19fcm93IC53Yy1ibG9jay1jYXJ0LWl0ZW1fX3RvdGFsIC53Yy1ibG9jay1jb21wb25lbnRzLWZvcm1hdHRlZC1tb25leS1hbW91bnQsLmlzLXNtYWxsIHRhYmxlLndjLWJsb2NrLWNhcnQtaXRlbXMgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdyAud2MtYmxvY2stY2FydC1pdGVtX190b3RhbCAud2MtYmxvY2stY29tcG9uZW50cy1mb3JtYXR0ZWQtbW9uZXktYW1vdW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5pcy1sYXJnZS53Yy1ibG9jay1jYXJ0e21hcmdpbi1ib3R0b206M2VtfS5pcy1sYXJnZS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0LWl0ZW1ze3Bvc2l0aW9uOnJlbGF0aXZlfS5pcy1sYXJnZS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0LWl0ZW1zOmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MCAwIDFweDtib3R0b206MDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7bGVmdDowO29wYWNpdHk6LjM7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfS5pcy1sYXJnZS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0LWl0ZW1zIHRoe3BhZGRpbmc6LjI1cmVtIDE2cHggLjI1cmVtIDA7d2hpdGUtc3BhY2U6bm93cmFwfS5pcy1sYXJnZS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0LWl0ZW1zIHRke3BhZGRpbmc6MTZweCAwIDE2cHggMTZweDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjp0b3B9LmlzLWxhcmdlLndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNhcnQtaXRlbXMgdGQ6YWZ0ZXJ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHggMCAwO2JvdHRvbTowO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztsZWZ0OjA7b3BhY2l0eTouMztwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LmlzLWxhcmdlLndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNhcnQtaXRlbXMgdGg6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0OjB9LmlzLWxhcmdlLndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNhcnQtaXRlbXMgdGQ6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0OjE2cHh9LmlzLWxhcmdlLndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtcmFkaW8tY29udHJvbF9faW5wdXR7bGVmdDowfS5pcy1sYXJnZS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0X190b3RhbHMtdGl0bGV7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lO2NvbG9yOmluaGVyaXQ7ZGlzcGxheTppbmxpbmU7ZGlzcGxheTpibG9jaztmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc2l6ZTouNzVlbTtmb250LXN0eWxlOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6aW5oZXJpdDtsaW5lLWhlaWdodDppbmhlcml0O21hcmdpbjowO3BhZGRpbmc6LjI1cmVtIDA7dGV4dC1hbGlnbjpyaWdodDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0uaXMtbGFyZ2Uud2MtYmxvY2stY2FydCAud2MtYmxvY2stY29tcG9uZW50cy1zaWRlYmFyIC53Yy1ibG9jay1jb21wb25lbnRzLXNoaXBwaW5nLWNhbGN1bGF0b3IsLmlzLWxhcmdlLndjLWJsb2NrLWNhcnQgLndjLWJsb2NrLWNvbXBvbmVudHMtc2lkZWJhciAud2MtYmxvY2stY29tcG9uZW50cy1zaGlwcGluZy1yYXRlcy1jb250cm9sX19wYWNrYWdlOm5vdCgud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbCl7cGFkZGluZy1sZWZ0OjE2cHg7cGFkZGluZy1yaWdodDoxNnB4fS5pcy1sYXJnZS53Yy1ibG9jay1jYXJ0IC53Yy1ibG9jay1jYXJ0X19wYXltZW50LW9wdGlvbnN7cGFkZGluZzoxNnB4IDAgMH0uaXMtbGFyZ2Uud2MtYmxvY2stY2FydCAud2MtYmxvY2stY2FydF9fcGF5bWVudC1vcHRpb25zOmVtcHR5e3BhZGRpbmc6MH0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1lbXB0eS1jYXJ0LWJsb2Nre2Rpc3BsYXk6bm9uZX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1maWxsZWQtY2FydC1ibG9ja3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7bWFyZ2luOjAgYXV0byAxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtaXRlbXMtYmxvY2t7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjowO21pbi1oZWlnaHQ6MTBlbTtwYWRkaW5nLXJpZ2h0OjMuNzczNTg0OTA1NyU7d2lkdGg6NjUlfS53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtbGluZS1pdGVtcy1ibG9ja3tiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7bWluLWhlaWdodDoxNWVtO291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWxpbmUtaXRlbXMtYmxvY2s+Knt2aXNpYmlsaXR5OmhpZGRlbn0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWxpbmUtaXRlbXMtYmxvY2s6YWZ0ZXJ7LXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNlYmViZWIsI2Y1ZjVmNSwjZWJlYmViKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9QG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWxpbmUtaXRlbXMtYmxvY2t7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC10b3RhbHMtYmxvY2t7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjowO21pbi1oZWlnaHQ6MTJlbTtwYWRkaW5nLWxlZnQ6Mi4yNjQxNTA5NDM0JTt3aWR0aDozNSV9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1hY2NlcHRlZC1wYXltZW50LW1ldGhvZHMtYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1leHByZXNzLXBheW1lbnQtYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1vcmRlci1zdW1tYXJ5LWJsb2NrLC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLXByb2NlZWQtdG8tY2hlY2tvdXQtYmxvY2t7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWFyZ2luOjAgMCAxZW07bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O21pbi1oZWlnaHQ6M2VtO291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0ud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LWFjY2VwdGVkLXBheW1lbnQtbWV0aG9kcy1ibG9jaz4qLC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtZXhwcmVzcy1wYXltZW50LWJsb2NrPiosLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1vcmRlci1zdW1tYXJ5LWJsb2NrPiosLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtcHJvY2VlZC10by1jaGVja291dC1ibG9jaz4qe3Zpc2liaWxpdHk6aGlkZGVufS53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtYWNjZXB0ZWQtcGF5bWVudC1tZXRob2RzLWJsb2NrOmFmdGVyLC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtZXhwcmVzcy1wYXltZW50LWJsb2NrOmFmdGVyLC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQtb3JkZXItc3VtbWFyeS1ibG9jazphZnRlciwud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1wcm9jZWVkLXRvLWNoZWNrb3V0LWJsb2NrOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1hY2NlcHRlZC1wYXltZW50LW1ldGhvZHMtYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1leHByZXNzLXBheW1lbnQtYmxvY2ssLndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1vcmRlci1zdW1tYXJ5LWJsb2NrLC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLXByb2NlZWQtdG8tY2hlY2tvdXQtYmxvY2t7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1vcmRlci1zdW1tYXJ5LWJsb2Nre2hlaWdodDoyMGVtfUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3MDBweCl7LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZ3twYWRkaW5nLXRvcDoxNnB4fS53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LmlzLWxvYWRpbmcgLndwLWJsb2NrLXdvb2NvbW1lcmNlLWZpbGxlZC1jYXJ0LWJsb2Nre2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MCBhdXRvIDE2cHh9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWNhcnQuaXMtbG9hZGluZyAud3AtYmxvY2std29vY29tbWVyY2UtY2FydC1pdGVtcy1ibG9jaywud3AtYmxvY2std29vY29tbWVyY2UtY2FydC5pcy1sb2FkaW5nIC53cC1ibG9jay13b29jb21tZXJjZS1jYXJ0LXRvdGFscy1ibG9ja3twYWRkaW5nOjA7d2lkdGg6MTAwJX19LndjLWJsb2NrLW1pbmktY2FydHtkaXNwbGF5OmlubGluZS1ibG9ja30ud2MtYmxvY2stbWluaS1jYXJ0X19idXR0b257YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OmZsZXg7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXdlaWdodDo0MDA7cGFkZGluZzouNzVlbSAuNWVtfS53Yy1ibG9jay1taW5pLWNhcnRfX2J1dHRvbjpob3Zlcjpub3QoW2Rpc2FibGVkXSl7b3BhY2l0eTouNn0ud2MtYmxvY2stbWluaS1jYXJ0X19hbW91bnR7ZGlzcGxheTpub25lfS53Yy1ibG9jay1taW5pLWNhcnRfX3RheC1sYWJlbHttYXJnaW4tcmlnaHQ6LjVlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjc2OHB4KXsud2MtYmxvY2stbWluaS1jYXJ0X19hbW91bnR7ZGlzcGxheTppbml0aWFsO2ZvbnQtd2VpZ2h0OjYwMDttYXJnaW4tcmlnaHQ6OHB4fX0ubW9kYWwtb3BlbiAud2MtYmxvY2stbWluaS1jYXJ0X19idXR0b257cG9pbnRlci1ldmVudHM6bm9uZX0ud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXJ7Zm9udC1zaXplOjFyZW19LndjLWJsb2NrLW1pbmktY2FydF9fZHJhd2VyIC5jb21wb25lbnRzLW1vZGFsX19jb250ZW50e3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZX0ud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIgLmNvbXBvbmVudHMtbW9kYWxfX2hlYWRlcntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNnB4O3RvcDo0MHB4fS53Yy1ibG9jay1taW5pLWNhcnRfX2RyYXdlciAuY29tcG9uZW50cy1tb2RhbF9faGVhZGVyIGJ1dHRvbntjb2xvcjppbmhlcml0O3otaW5kZXg6OTk5OX0ud2MtYmxvY2stbWluaS1jYXJ0X19kcmF3ZXIgLmNvbXBvbmVudHMtbW9kYWxfX2hlYWRlciBzdmd7ZmlsbDpjdXJyZW50Q29sb3J9LndwLWJsb2NrLXdvb2NvbW1lcmNlLW1pbmktY2FydC1jb250ZW50c3tiYWNrZ3JvdW5kOiNmZmY7Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDoxMDB2aDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MH0ud3AtYmxvY2std29vY29tbWVyY2UtZW1wdHktbWluaS1jYXJ0LWNvbnRlbnRzLWJsb2NrLC53cC1ibG9jay13b29jb21tZXJjZS1maWxsZWQtbWluaS1jYXJ0LWNvbnRlbnRzLWJsb2Nre2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47aGVpZ2h0OjEwMCV9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWVtcHR5LW1pbmktY2FydC1jb250ZW50cy1ibG9ja3tqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS53cC1ibG9jay13b29jb21tZXJjZS1maWxsZWQtbWluaS1jYXJ0LWNvbnRlbnRzLWJsb2Nre2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS53cC1ibG9jay13b29jb21tZXJjZS1lbXB0eS1taW5pLWNhcnQtY29udGVudHMtYmxvY2sgLndjLWJsb2NrLW1pbmktY2FydF9fZW1wdHktY2FydC13cmFwcGVye292ZXJmbG93LXk6YXV0bztwYWRkaW5nOjQwcHggMTZweCAxNnB4fWgyLndjLWJsb2NrLW1pbmktY2FydF9fdGl0bGV7Zm9udC1zaXplOjJlbTttYXJnaW46NDBweCAxNnB4IDB9LndjLWJsb2NrLW1pbmktY2FydF9faXRlbXN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWdyb3c6MTtvdmVyZmxvdy15OmF1dG87cGFkZGluZzoxNnB4IDE2cHggMH0ud2MtYmxvY2stbWluaS1jYXJ0X19pdGVtcyAud2MtYmxvY2stbWluaS1jYXJ0X19wcm9kdWN0cy10YWJsZXttYXJnaW4tYm90dG9tOmF1dG87bWFyZ2luLXJpZ2h0Oi0xNnB4O3BhZGRpbmctcmlnaHQ6MTZweH0ud2MtYmxvY2stbWluaS1jYXJ0X19pdGVtcyAud2MtYmxvY2stbWluaS1jYXJ0X19wcm9kdWN0cy10YWJsZSAud2MtYmxvY2stY2FydC1pdGVtc19fcm93e3BhZGRpbmctYm90dG9tOjhweDtwYWRkaW5nLXRvcDo4cHh9LndjLWJsb2NrLW1pbmktY2FydF9faXRlbXMgLndjLWJsb2NrLW1pbmktY2FydF9fcHJvZHVjdHMtdGFibGUgLndjLWJsb2NrLWNhcnQtaXRlbXNfX3JvdzpsYXN0LWNoaWxkOmFmdGVye2NvbnRlbnQ6bm9uZX0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXJ7Ym9yZGVyLXRvcDoxcHggc29saWQgI2RkZDtwYWRkaW5nOjI0cHggMTZweH0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXItc3VidG90YWx7Zm9udC13ZWlnaHQ6NjAwO21hcmdpbi1ib3R0b206MTZweH0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXIgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXItc3VidG90YWwgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW1fX2Rlc2NyaXB0aW9ue2Rpc3BsYXk6bm9uZTtmb250LXNpemU6Ljc1ZW07Zm9udC13ZWlnaHQ6NDAwfUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo0ODBweCl7LndjLWJsb2NrLW1pbmktY2FydF9fZm9vdGVyIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1pdGVtLndjLWJsb2NrLW1pbmktY2FydF9fZm9vdGVyLXN1YnRvdGFsIC53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1pdGVtX19kZXNjcmlwdGlvbntkaXNwbGF5OnVuc2V0fX0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXIgLndjLWJsb2NrLW1pbmktY2FydF9fZm9vdGVyLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2dhcDoxNnB4fS53Yy1ibG9jay1taW5pLWNhcnRfX2Zvb3RlciAud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXItYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b257ZmxleC1ncm93OjE7Zm9udC13ZWlnaHQ6NjAwfS53Yy1ibG9jay1taW5pLWNhcnRfX2Zvb3RlciAud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXItYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b24ub3V0bGluZWR7Y29sb3I6Y3VycmVudENvbG9yO2Rpc3BsYXk6bm9uZX0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXIgLndjLWJsb2NrLW1pbmktY2FydF9fZm9vdGVyLWFjdGlvbnMgLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uLm91dGxpbmVkOm5vdCg6Zm9jdXMpe2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IGN1cnJlbnRDb2xvcn0ud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXIgLndjLWJsb2NrLW1pbmktY2FydF9fZm9vdGVyLWFjdGlvbnMgLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uLm91dGxpbmVkOmZvY3VzLC53Yy1ibG9jay1taW5pLWNhcnRfX2Zvb3RlciAud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXItYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b24ub3V0bGluZWQ6aG92ZXJ7Y29sb3I6I2ZmZn1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NDgwcHgpey53Yy1ibG9jay1taW5pLWNhcnRfX2Zvb3RlciAud2MtYmxvY2stbWluaS1jYXJ0X19mb290ZXItYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b24ub3V0bGluZWR7ZGlzcGxheTppbmxpbmUtZmxleH19LndjLWJsb2NrLW1pbmktY2FydF9fZm9vdGVyIC53Yy1ibG9jay1jb21wb25lbnRzLXBheW1lbnQtbWV0aG9kLWljb25ze21hcmdpbi10b3A6MTZweH0ud2MtYmxvY2stbWluaS1jYXJ0X19zaG9wcGluZy1idXR0b257ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXJ9LndjLWJsb2NrLW1pbmktY2FydF9fc2hvcHBpbmctYnV0dG9uIGF7Ym9yZGVyOjJweCBzb2xpZDtjb2xvcjpjdXJyZW50Q29sb3I7Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6MTJweCAyNHB4O3RleHQtZGVjb3JhdGlvbjpub25lfS53Yy1ibG9jay1taW5pLWNhcnRfX3Nob3BwaW5nLWJ1dHRvbiBhOmZvY3VzLC53Yy1ibG9jay1taW5pLWNhcnRfX3Nob3BwaW5nLWJ1dHRvbiBhOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFlMWUxZTtib3JkZXItY29sb3I6IzFlMWUxZTtjb2xvcjojZmZmfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94e2NvbG9yOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXN0eWxlOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luLXRvcDoxLjVlbTt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0fS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94IGxhYmVse2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19pbnB1dFt0eXBlPWNoZWNrYm94XXstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoycHggc29saWQgIzUwNTc1ZTtib3JkZXItcmFkaXVzOjJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Zm9udC1zaXplOjFlbTtoZWlnaHQ6MS41ZW07bWFyZ2luOjAgMTZweCAwIDA7bWluLWhlaWdodDoxLjVlbTttaW4td2lkdGg6MS41ZW07b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnN0YXRpYzt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6MS41ZW19LndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWR7YmFja2dyb3VuZDojZmZmO2JvcmRlci1jb2xvcjojNTA1NzVlfS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19pbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1c3tvdXRsaW5lOjJweCBzb2xpZCAjNTA1NzVlO291dGxpbmUtb2Zmc2V0OjJweH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveF9faW5wdXRbdHlwZT1jaGVja2JveF06YWZ0ZXIsLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0W3R5cGU9Y2hlY2tib3hdOmJlZm9yZXtjb250ZW50OiIifS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpKy53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19tYXJre2Rpc3BsYXk6bm9uZX0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0W3R5cGU9Y2hlY2tib3hde2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMSk7Ym9yZGVyLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC42KX0uaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3ggLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWR7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xKTtib3JkZXItY29sb3I6aHNsYSgwLDAlLDEwMCUsLjYpfS5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveF9faW5wdXRbdHlwZT1jaGVja2JveF06Zm9jdXN7b3V0bGluZToycHggc29saWQgaHNsYSgwLDAlLDEwMCUsLjYpO291dGxpbmUtb2Zmc2V0OjJweH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC5oYXMtZXJyb3IsLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3guaGFzLWVycm9yIGF7Y29sb3I6I2NjMTgxOH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC5oYXMtZXJyb3IgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0LC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94Lmhhcy1lcnJvciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveF9faW5wdXQ6YWN0aXZlLC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94Lmhhcy1lcnJvciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveF9faW5wdXQ6Zm9jdXMsLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3guaGFzLWVycm9yIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19pbnB1dDpob3Zlcntib3JkZXItY29sb3I6I2NjMTgxOH0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveC5oYXMtZXJyb3IgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0OmZvY3Vze291dGxpbmU6MnB4IHNvbGlkICNjYzE4MTg7b3V0bGluZS1vZmZzZXQ6MnB4fS53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19tYXJre2ZpbGw6IzAwMDtoZWlnaHQ6MS4xMjVlbTttYXJnaW4tbGVmdDouMTg3NWVtO21hcmdpbi10b3A6LjA2MjVlbTtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEuMTI1ZW19Lmhhcy1kYXJrLWNvbnRyb2xzIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94IC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19tYXJre2ZpbGw6I2ZmZn0ud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveCAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveF9fbGFiZWwsLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3g+c3BhbntsaW5lLWhlaWdodDoxLjVlbTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDpub25lKSxzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpey53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19tYXJre2Rpc3BsYXk6bm9uZX19LnRoZW1lLXR3ZW50eXR3ZW50eW9uZSAuaGFzLWRhcmstY29udHJvbHMgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0W3R5cGU9Y2hlY2tib3hdLC50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtY2hlY2tib3hfX2lucHV0W3R5cGU9Y2hlY2tib3hde2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tZm9ybS0tYm9yZGVyLWNvbG9yKTtwb3NpdGlvbjpyZWxhdGl2ZX0udGhlbWUtdHdlbnR5dHdlbnR5b25lIC5oYXMtZGFyay1jb250cm9scyAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveF9faW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCwudGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19pbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2Vke2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tZm9ybS0tYm9yZGVyLWNvbG9yKX0udGhlbWUtdHdlbnR5dHdlbnR5b25lIC53Yy1ibG9jay1jb21wb25lbnRzLWNoZWNrYm94X19tYXJre2Rpc3BsYXk6bm9uZX0ud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbC5oYXMtYm9yZGVye3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsLmhhcy1ib3JkZXI6YWZ0ZXJ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHggMDtib3R0b206MDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7bGVmdDowO29wYWNpdHk6LjM7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfS53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsLmhhcy1ib3JkZXIrLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWwuaGFzLWJvcmRlcjphZnRlcntib3JkZXItdG9wLXdpZHRoOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWwuaGFzLWJvcmRlci5uby10b3AtYm9yZGVye3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsLmhhcy1ib3JkZXIubm8tdG9wLWJvcmRlcjphZnRlcntib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjAgMCAxcHg7Ym90dG9tOjA7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2xlZnQ6MDtvcGFjaXR5Oi4zO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9ue2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDtoZWlnaHQ6YXV0bztsaW5lLWhlaWdodDoxO21hcmdpbjouMzc1ZW0gMCAwO3BhZGRpbmc6LjM3NWVtIDMycHggMCAwO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246bGVmdDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTt3aWR0aDoxMDAlO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9uW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17bWFyZ2luLWJvdHRvbTouMzc1ZW07cGFkZGluZy1ib3R0b206LjM3NWVtfS53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19idXR0b24sLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbjphY3RpdmUsLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbjpmb2N1cywud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzpub25lO2NvbG9yOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXN0eWxlOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdH0ud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9uPi53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19idXR0b24taWNvbntmaWxsOmN1cnJlbnRDb2xvcjtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6YXV0b30ud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fY29udGVudFtoaWRkZW5de2Rpc3BsYXk6bm9uZX0udGhlbWUtdHdlbnR5dHdlbnR5b25lLnRoZW1lLXR3ZW50eXR3ZW50eW9uZS50aGVtZS10d2VudHl0d2VudHlvbmUgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOmluaGVyaXQ7Y29sb3I6aW5oZXJpdH0udGhlbWUtdHdlbnR5c2V2ZW50ZWVuIC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19idXR0b24sLnRoZW1lLXR3ZW50eXR3ZW50eSAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9ue2JhY2tncm91bmQ6bm9uZSB0cmFuc3BhcmVudDtjb2xvcjppbmhlcml0fS50aGVtZS10d2VudHlzZXZlbnRlZW4gLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbi53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19idXR0b246Zm9jdXMsLnRoZW1lLXR3ZW50eXNldmVudGVlbiAud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9uLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbjpob3ZlciwudGhlbWUtdHdlbnR5dHdlbnR5IC53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19idXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1wYW5lbF9fYnV0dG9uOmZvY3VzLC50aGVtZS10d2VudHl0d2VudHkgLndjLWJsb2NrLWNvbXBvbmVudHMtcGFuZWxfX2J1dHRvbi53Yy1ibG9jay1jb21wb25lbnRzLXBhbmVsX19idXR0b246aG92ZXJ7YmFja2dyb3VuZDpub25lIHRyYW5zcGFyZW50fS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy13cmFwcGVye3BhZGRpbmc6MTZweCAwO3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy13cmFwcGVyOmFmdGVye2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4IDAgMDtib3R0b206MDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7bGVmdDowO29wYWNpdHk6LjM7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy13cmFwcGVyLmhhcy1ib3R0b20tYm9yZGVyOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6MXB4fS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy13cmFwcGVyOmVtcHR5e3BhZGRpbmc6MH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtd3JhcHBlcjplbXB0eTphZnRlcntjb250ZW50Om5vbmV9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXdyYXBwZXIuc2xvdC13cmFwcGVye3BhZGRpbmc6MH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtd3JhcHBlci5zbG90LXdyYXBwZXI+Kj4qe3BhZGRpbmc6MTZweCAwO3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy13cmFwcGVyLnNsb3Qtd3JhcHBlcj4qPjphZnRlcntib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjAgMCAxcHg7Ym90dG9tOjA7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2xlZnQ6MDtvcGFjaXR5Oi4zO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtd3JhcHBlci5zbG90LXdyYXBwZXI+Kj46bGFzdC1jaGlsZDphZnRlcntib3JkZXItYm90dG9tLXdpZHRoOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtZGlzY291bnRzLW1ldGEgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXdyYXBwZXI6Zmlyc3QtY2hpbGR7cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWNvbXBvbmVudHMtZGlzY291bnRzLW1ldGEgLndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLXdyYXBwZXI6Zmlyc3QtY2hpbGQ6YWZ0ZXJ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHggMCAwO2JvdHRvbTowO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztsZWZ0OjA7b3BhY2l0eTouMztwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LndjLWJsb2NrLWNvbXBvbmVudHMtdG90YWxzLWl0ZW17Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDt3aWR0aDoxMDAlfS53Yy1ibG9jay1jb21wb25lbnRzLXRvdGFscy1pdGVtX19sYWJlbHtmbGV4LWdyb3c6MX0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtaXRlbV9fdmFsdWV7Zm9udC13ZWlnaHQ6NzAwO3doaXRlLXNwYWNlOm5vd3JhcH0ud2MtYmxvY2stY29tcG9uZW50cy10b3RhbHMtaXRlbV9fZGVzY3JpcHRpb257Zm9udC1zaXplOi44NzVlbTt3aWR0aDoxMDAlfS53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXN7bWFyZ2luLWJvdHRvbToxZW19LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcy5pcy1kcm9wZG93bntkaXNwbGF5OmZsZXh9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcyBzZWxlY3R7bWFyZ2luLXJpZ2h0Oi41ZW19LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcy1saXN0LS1oYXMtaW1hZ2Vze2xpc3Qtc3R5bGU6bm9uZSBvdXRzaWRlfS53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXMtbGlzdC0taGFzLWltYWdlcyAud2MtYmxvY2stcHJvZHVjdC1jYXRlZ29yaWVzLWxpc3QtaXRlbXtjbGVhcjpib3RoO2xpc3Qtc3R5bGU6bm9uZSBvdXRzaWRlO21hcmdpbjo0cHggMCA0cHggNjBweH0ud2MtYmxvY2stcHJvZHVjdC1jYXRlZ29yaWVzLWxpc3QtLWhhcy1pbWFnZXMgLndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcy1saXN0LWl0ZW0gdWx7bWFyZ2luOjRweCAwIDB9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcy1saXN0LS1oYXMtaW1hZ2VzIC53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXMtbGlzdC1pdGVtX19pbWFnZXtib3JkZXI6MXB4IHNvbGlkICNlZWU7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjAgLjVlbSAwIC02MHB4O21heC13aWR0aDo1MHB4O3BhZGRpbmc6MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcy1saXN0LS1oYXMtaW1hZ2VzIC53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXMtbGlzdC1pdGVtX19pbWFnZSBpbWd7ZGlzcGxheTpibG9jaztoZWlnaHQ6YXV0bzttYXJnaW46MDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjB9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcy1saXN0LWl0ZW0tY291bnQ6YmVmb3Jle2NvbnRlbnQ6IiAoIn0ud2MtYmxvY2stcHJvZHVjdC1jYXRlZ29yaWVzLWxpc3QtaXRlbS1jb3VudDphZnRlcntjb250ZW50OiIpIn0ud3AtYmxvY2std29vY29tbWVyY2UtcHJvZHVjdC1jYXRlZ29yaWVzLmlzLWxvYWRpbmcgLndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllc19fcGxhY2Vob2xkZXJ7YmFja2dyb3VuZDpjdXJyZW50Q29sb3I7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjFlbTttaW4td2lkdGg6MjAwcHg7b3BhY2l0eTouMjt3aWR0aDo1MCV9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllc19fYnV0dG9ue2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MCAuNWVtO3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXNfX2J1dHRvbiBzdmd7ZmlsbDpjdXJyZW50Q29sb3I7b3V0bGluZTpub25lfS5ydGwgLndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllc19fYnV0dG9uIHN2Z3t0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllc19fYnV0dG9uOmFjdGl2ZXtjb2xvcjpjdXJyZW50Q29sb3J9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllc19fYnV0dG9uOmRpc2FibGVkLC53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXNfX2J1dHRvblthcmlhLWRpc2FibGVkPXRydWVde2N1cnNvcjpkZWZhdWx0O29wYWNpdHk6LjN9LndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllc19fYnV0dG9uOmRpc2FibGVkOmZvY3VzLC53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXNfX2J1dHRvblthcmlhLWRpc2FibGVkPXRydWVdOmZvY3Vze2JveC1zaGFkb3c6bm9uZX0ud2MtYmxvY2stcHJvZHVjdC1zZWFyY2ggLndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoX19maWVsZHN7ZGlzcGxheTpmbGV4fS53Yy1ibG9jay1wcm9kdWN0LXNlYXJjaCAud2MtYmxvY2stcHJvZHVjdC1zZWFyY2hfX2ZpZWxke2ZsZXgtZ3JvdzoxO2xpbmUtaGVpZ2h0OjEuODtwYWRkaW5nOjZweCA4cHh9LndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoIC53Yy1ibG9jay1wcm9kdWN0LXNlYXJjaF9fYnV0dG9ue2FsaWduLWl0ZW1zOmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmZsZXg7bWFyZ2luOjAgMCAwIDZweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIC41ZW07cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoIC53Yy1ibG9jay1wcm9kdWN0LXNlYXJjaF9fYnV0dG9uIHN2Z3tmaWxsOmN1cnJlbnRDb2xvcjtvdXRsaW5lOm5vbmV9LnJ0bCAud2MtYmxvY2stcHJvZHVjdC1zZWFyY2ggLndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoX19idXR0b24gc3Zne3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ud2MtYmxvY2stcHJvZHVjdC1zZWFyY2ggLndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoX19idXR0b246YWN0aXZle2NvbG9yOmN1cnJlbnRDb2xvcn0ud2MtYmxvY2stcHJvZHVjdC1zZWFyY2ggLndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoX19idXR0b246ZGlzYWJsZWQsLndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoIC53Yy1ibG9jay1wcm9kdWN0LXNlYXJjaF9fYnV0dG9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV17Y3Vyc29yOmRlZmF1bHQ7b3BhY2l0eTouM30ud2MtYmxvY2stcHJvZHVjdC1zZWFyY2ggLndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoX19idXR0b246ZGlzYWJsZWQ6Zm9jdXMsLndjLWJsb2NrLXByb2R1Y3Qtc2VhcmNoIC53Yy1ibG9jay1wcm9kdWN0LXNlYXJjaF9fYnV0dG9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV06Zm9jdXN7Ym94LXNoYWRvdzpub25lfS53cC1ibG9jay13b29jb21tZXJjZS1wcmljZS1maWx0ZXJ7Ym9yZGVyLWNvbG9yOiM3NTc1NzU7Ym9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyLXN0eWxlOm5vbmUhaW1wb3J0YW50fS53cC1ibG9jay13b29jb21tZXJjZS1wcmljZS1maWx0ZXIgaDEsLndwLWJsb2NrLXdvb2NvbW1lcmNlLXByaWNlLWZpbHRlciBoMiwud3AtYmxvY2std29vY29tbWVyY2UtcHJpY2UtZmlsdGVyIGgzLC53cC1ibG9jay13b29jb21tZXJjZS1wcmljZS1maWx0ZXIgaDQsLndwLWJsb2NrLXdvb2NvbW1lcmNlLXByaWNlLWZpbHRlciBoNSwud3AtYmxvY2std29vY29tbWVyY2UtcHJpY2UtZmlsdGVyIGg2e3RleHQtdHJhbnNmb3JtOmluaGVyaXR9LndwLWJsb2NrLXdvb2NvbW1lcmNlLXByaWNlLWZpbHRlcj4ud2MtYmxvY2stcHJpY2UtZmlsdGVyX190aXRsZXttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXRvcDoxMnB4fS53Yy1ibG9jay1wcmljZS1maWx0ZXIsLndjLWJsb2NrLXByaWNlLWZpbHRlcl9fY29udHJvbHMsLndjLWJsb2NrLXByaWNlLXNsaWRlcntib3JkZXItY29sb3I6aW5oZXJpdDtib3JkZXItcmFkaXVzOmluaGVyaXR9LndjLWJsb2NrLXByaWNlLWZpbHRlcl9fY29udHJvbHMgaW5wdXR7Ym9yZGVyLWNvbG9yOmluaGVyaXQhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6aW5oZXJpdCFpbXBvcnRhbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkfS53Yy1ibG9jay1wcmljZS1maWx0ZXJfX2NvbnRyb2xzIC5pbnB1dC1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JvcmRlci1yYWRpdXM6MDtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjJlbTtsaW5lLWhlaWdodDoxO21heC13aWR0aDoxMDAlIWltcG9ydGFudDtvdXRsaW5lOjAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTt3aWR0aDo1LjYyNWVtO3otaW5kZXg6MX0ud2MtYmxvY2stcHJpY2UtZmlsdGVyX19jb250cm9scyAuaW5wdXQtbG9hZGluZz4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1wcmljZS1maWx0ZXJfX2NvbnRyb2xzIC5pbnB1dC1sb2FkaW5nOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLXByaWNlLWZpbHRlcl9fY29udHJvbHMgLmlucHV0LWxvYWRpbmd7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stcHJpY2UtZmlsdGVyX19idXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX2J1dHRvbiwud2MtYmxvY2stcHJpY2UtZmlsdGVyX19idXR0b24ud2MtYmxvY2stY29tcG9uZW50cy1wcmljZS1zbGlkZXJfX2J1dHRvbntmb250LXNpemU6Ljg3NWVtO3BhZGRpbmc6LjVlbSAxZW19LndwLWJsb2NrLXdvb2NvbW1lcmNlLWF0dHJpYnV0ZS1maWx0ZXJ7Ym9yZGVyLXN0eWxlOm5vbmUhaW1wb3J0YW50fS53cC1ibG9jay13b29jb21tZXJjZS1hdHRyaWJ1dGUtZmlsdGVyIGgxLC53cC1ibG9jay13b29jb21tZXJjZS1hdHRyaWJ1dGUtZmlsdGVyIGgyLC53cC1ibG9jay13b29jb21tZXJjZS1hdHRyaWJ1dGUtZmlsdGVyIGgzLC53cC1ibG9jay13b29jb21tZXJjZS1hdHRyaWJ1dGUtZmlsdGVyIGg0LC53cC1ibG9jay13b29jb21tZXJjZS1hdHRyaWJ1dGUtZmlsdGVyIGg1LC53cC1ibG9jay13b29jb21tZXJjZS1hdHRyaWJ1dGUtZmlsdGVyIGg2e3RleHQtdHJhbnNmb3JtOmluaGVyaXR9LndwLWJsb2NrLXdvb2NvbW1lcmNlLWF0dHJpYnV0ZS1maWx0ZXI+LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX3RpdGxle21hcmdpbi1ib3R0b206MTJweDttYXJnaW4tdG9wOjEycHh9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJ7Ym9yZGVyLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLXJhZGl1czppbmhlcml0O21hcmdpbi1ib3R0b206MTZweH0ud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlciAuaXMtbG9hZGluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2hlaWdodDoxZW07bGluZS1oZWlnaHQ6MTttYXJnaW4tdG9wOjE2cHg7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3otaW5kZXg6MX0ud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlciAuaXMtbG9hZGluZz4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyIC5pcy1sb2FkaW5nOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXIgLmlzLWxvYWRpbmd7LXdlYmtpdC1hbmltYXRpb246bm9uZTthbmltYXRpb246bm9uZX19LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXIuc3R5bGUtZHJvcGRvd257YWxpZ24taXRlbXM6ZmxleC1zdGFydDtkaXNwbGF5OmZsZXg7Z2FwOjE2cHg7cG9zaXRpb246cmVsYXRpdmV9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXIuc3R5bGUtZHJvcGRvd24gLndjLWJsb2NrLWNvbXBvbmVudHMtZmlsdGVyLXN1Ym1pdC1idXR0b257aGVpZ2h0OjM2cHg7bGluZS1oZWlnaHQ6MX0ud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlci5zdHlsZS1kcm9wZG93bj5zdmd7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo4cHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0ud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlciAud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlci1saXN0e21hcmdpbjowO3dpZHRoOjEwMCV9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXIgLndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXItbGlzdCBsaSBsYWJlbHtjdXJzb3I6cG9pbnRlcn0ud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlciAud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlci1saXN0IGxpIGlucHV0e2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXJ7ZmxleC1ncm93OjE7aGVpZ2h0Oi13ZWJraXQtbWF4LWNvbnRlbnQ7aGVpZ2h0Oi1tb3otbWF4LWNvbnRlbnQ7aGVpZ2h0Om1heC1jb250ZW50O21heC13aWR0aDp1bnNldDt3aWR0aDowfS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXI6bm90KC5pcy1sb2FkaW5nKXtib3JkZXI6MXB4IHNvbGlkICM3NTc1NzUhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NHB4fS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIuaXMtbG9hZGluZ3tib3JkZXItcmFkaXVzOi4yNWVtfS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVye2JvcmRlcjowO3BhZGRpbmc6OHB4fS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0OjotbW96LXBsYWNlaG9sZGVye2NvbG9yOiMwMDB9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXIgLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dC1jb250YWluZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiMwMDB9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXIgLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dC1jb250YWluZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOiMwMDB9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXIgLndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dC1jb250YWluZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbnMtbGlzdHtib3JkZXI6MXB4IHNvbGlkICM3NTc1NzU7Ym9yZGVyLXJhZGl1czo0cHg7bWFyZ2luLXRvcDo4cHg7bWF4LWhlaWdodDoyMWVtfS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyIC53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXIgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb25zLWxpc3QgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbntib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyLXJhZGl1czo0cHg7Y29sb3I6IzAwMDttYXJnaW46MTJweDtwYWRkaW5nOjEycHh9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX2NvbmRpdGlvbnMtdG9nZ2xlLC53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyX19kaXNwbGF5LXRvZ2dsZSwud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlcl9fbXVsdGlwbGUtdG9nZ2xle3dpZHRoOjEwMCV9Lndvb2NvbW1lcmNlLXByb2R1Y3QtYXR0cmlidXRlcyAud29vY29tbWVyY2Utc2VhcmNoLWxpc3RfX3NlYXJjaCAuY29tcG9uZW50cy1iYXNlLWNvbnRyb2xfX2xhYmVse2NvbG9yOmluaGVyaXQ7Y29sb3I6Izc1NzU3NTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtc2l6ZToxZW07Zm9udC1zdHlsZTppbmhlcml0O2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGV0dGVyLXNwYWNpbmc6aW5oZXJpdDtsaW5lLWhlaWdodDppbmhlcml0O3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXR9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX2FjdGlvbnN7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtnYXA6MTZweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX2FjdGlvbnMgLndjLWJsb2NrLWNvbXBvbmVudHMtZmlsdGVyLXN1Ym1pdC1idXR0b257bWFyZ2luLWxlZnQ6MH0ud2MtYmxvY2stYXR0cmlidXRlLWZpbHRlcl9fYWN0aW9ucyAud2MtYmxvY2stY29tcG9uZW50cy1maWx0ZXItc3VibWl0LWJ1dHRvbjpkaXNhYmxlZHtjdXJzb3I6YXV0bztvcGFjaXR5Oi42fS53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyX19hY3Rpb25zIC53Yy1ibG9jay1maWx0ZXItc3VibWl0LWJ1dHRvbi53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1zdWJtaXQtYnV0dG9uLndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX2J1dHRvbnttYXJnaW4tdG9wOjB9LmVkaXRvci1zdHlsZXMtd3JhcHBlciAud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveCwud2MtYmxvY2stY29tcG9uZW50cy1jaGVja2JveHttYXJnaW4tdG9wOjFlbX0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyOm5vdCguc2luZ2xlLXNlbGVjdGlvbikgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVye3BhZGRpbmc6NHB4IDMwcHggNHB4IDhweH0ud2MtYmxvY2tzLWNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZC13cmFwcGVyOm5vdCguc2luZ2xlLXNlbGVjdGlvbikgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuLXRleHR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLXJhZGl1czoyNXB4IDAgMCAyNXB4O2JvcmRlci1yaWdodDowO2xpbmUtaGVpZ2h0OjIycHg7cGFkZGluZzouMjVlbSAuNWVtIC4yNWVtIC43NWVtfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXI6bm90KC5zaW5nbGUtc2VsZWN0aW9uKSAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dC1jb250YWluZXI+LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXR7bWFyZ2luOi4yNWVtIDB9LndjLWJsb2Nrcy1jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQtd3JhcHBlcjpub3QoLnNpbmdsZS1zZWxlY3Rpb24pIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lciAuY29tcG9uZW50cy1idXR0b24uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19yZW1vdmUtdG9rZW57YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLWxlZnQ6MDtib3JkZXItcmFkaXVzOjAgMjVweCAyNXB4IDA7cGFkZGluZzoxcHggLjI1ZW0gMCAwfS53Yy1ibG9ja3MtY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkLXdyYXBwZXI6bm90KC5zaW5nbGUtc2VsZWN0aW9uKSAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dC1jb250YWluZXIgLmNvbXBvbmVudHMtYnV0dG9uLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fcmVtb3ZlLXRva2VuLmhhcy1pY29uIHN2Z3tiYWNrZ3JvdW5kLWNvbG9yOiNlMGUwZTA7Ym9yZGVyLXJhZGl1czoyNXB4fS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX2J1dHRvbi53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyX19idXR0b24sLndjLWJsb2NrLWF0dHJpYnV0ZS1maWx0ZXJfX2J1dHRvbi53Yy1ibG9jay1hdHRyaWJ1dGUtZmlsdGVyX19idXR0b257Zm9udC1zaXplOi44NzVlbTtoZWlnaHQ6LXdlYmtpdC1tYXgtY29udGVudDtoZWlnaHQ6LW1vei1tYXgtY29udGVudDtoZWlnaHQ6bWF4LWNvbnRlbnQ7bGluZS1oZWlnaHQ6bm9ybWFsO3BhZGRpbmc6LjVlbSAxZW07d2lkdGg6LXdlYmtpdC1tYXgtY29udGVudDt3aWR0aDotbW96LW1heC1jb250ZW50O3dpZHRoOm1heC1jb250ZW50fS53cC1ibG9jay13b29jb21tZXJjZS1zdG9jay1maWx0ZXIgaDEsLndwLWJsb2NrLXdvb2NvbW1lcmNlLXN0b2NrLWZpbHRlciBoMiwud3AtYmxvY2std29vY29tbWVyY2Utc3RvY2stZmlsdGVyIGgzLC53cC1ibG9jay13b29jb21tZXJjZS1zdG9jay1maWx0ZXIgaDQsLndwLWJsb2NrLXdvb2NvbW1lcmNlLXN0b2NrLWZpbHRlciBoNSwud3AtYmxvY2std29vY29tbWVyY2Utc3RvY2stZmlsdGVyIGg2e3RleHQtdHJhbnNmb3JtOmluaGVyaXR9LndwLWJsb2NrLXdvb2NvbW1lcmNlLXN0b2NrLWZpbHRlcj4ud2MtYmxvY2stc3RvY2stZmlsdGVyX190aXRsZXttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXRvcDoxMnB4fS53Yy1ibG9jay1zdG9jay1maWx0ZXJ7bWFyZ2luLWJvdHRvbToyNHB4fS53Yy1ibG9jay1zdG9jay1maWx0ZXIuaXMtbG9hZGluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7bWFyZ2luLXRvcDoxNnB4O21heC13aWR0aDoxMDAlIWltcG9ydGFudDtvdXRsaW5lOjAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZSFpbXBvcnRhbnQ7d2lkdGg6MTAwJTt6LWluZGV4OjF9LndjLWJsb2NrLXN0b2NrLWZpbHRlci5pcy1sb2FkaW5nPip7dmlzaWJpbGl0eTpoaWRkZW59LndjLWJsb2NrLXN0b2NrLWZpbHRlci5pcy1sb2FkaW5nOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLXN0b2NrLWZpbHRlci5pcy1sb2FkaW5ney13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9fS53Yy1ibG9jay1zdG9jay1maWx0ZXIgLndjLWJsb2NrLXN0b2NrLWZpbHRlci1saXN0e21hcmdpbjowfS53Yy1ibG9jay1zdG9jay1maWx0ZXIgLndjLWJsb2NrLXN0b2NrLWZpbHRlci1saXN0IGxpIGxhYmVse2N1cnNvcjpwb2ludGVyfS53Yy1ibG9jay1zdG9jay1maWx0ZXIgLndjLWJsb2NrLXN0b2NrLWZpbHRlci1saXN0IGxpIGlucHV0e2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS53Yy1ibG9jay1zdG9jay1maWx0ZXJfX2FjdGlvbnN7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtnYXA6MTZweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bWFyZ2luLXRvcDoxNnB4fS53Yy1ibG9jay1zdG9jay1maWx0ZXJfX2FjdGlvbnMgYnV0dG9uW3R5cGU9c3VibWl0XTpub3QoLndwLWJsb2NrLXNlYXJjaF9fYnV0dG9uKS53Yy1ibG9jay1jb21wb25lbnRzLWZpbHRlci1zdWJtaXQtYnV0dG9ue21hcmdpbi1sZWZ0OjA7bWFyZ2luLXRvcDowfS5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndjLWJsb2NrLXN0b2NrLWZpbHRlciAud2MtYmxvY2stc3RvY2stZmlsdGVyX19idXR0b24sLndjLWJsb2NrLXN0b2NrLWZpbHRlcl9fYWN0aW9ucyAud2MtYmxvY2stc3RvY2stZmlsdGVyX19idXR0b257Zm9udC1zaXplOi44NzVlbTttYXJnaW4tdG9wOi41ZW07cGFkZGluZzouNWVtIDFlbX0ud3AtYmxvY2std29vY29tbWVyY2UtYWN0aXZlLWZpbHRlcnMgaDEsLndwLWJsb2NrLXdvb2NvbW1lcmNlLWFjdGl2ZS1maWx0ZXJzIGgyLC53cC1ibG9jay13b29jb21tZXJjZS1hY3RpdmUtZmlsdGVycyBoMywud3AtYmxvY2std29vY29tbWVyY2UtYWN0aXZlLWZpbHRlcnMgaDQsLndwLWJsb2NrLXdvb2NvbW1lcmNlLWFjdGl2ZS1maWx0ZXJzIGg1LC53cC1ibG9jay13b29jb21tZXJjZS1hY3RpdmUtZmlsdGVycyBoNnt0ZXh0LXRyYW5zZm9ybTppbmhlcml0fS53cC1ibG9jay13b29jb21tZXJjZS1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stZmlsdGVyLXRpdGxlLXBsYWNlaG9sZGVyIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fdGl0bGV7aGVpZ2h0OjFlbX0ud3AtYmxvY2std29vY29tbWVyY2UtYWN0aXZlLWZpbHRlcnM+LndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX190aXRsZXttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXRvcDoxMnB4fS53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc3ttYXJnaW4tYm90dG9tOjI0cHg7b3ZlcmZsb3c6aGlkZGVufS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2NsZWFyLWFsbHtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtmbG9hdDpyaWdodDtmb250LXNpemU6Ljg3NWVtO21hcmdpbi10b3A6MTVweDtwYWRkaW5nOjA7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19jbGVhci1hbGwsLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fY2xlYXItYWxsOmFjdGl2ZSwud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19jbGVhci1hbGw6Zm9jdXMsLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fY2xlYXItYWxsOmhvdmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6aW5oZXJpdH0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19jbGVhci1hbGwtcGxhY2Vob2xkZXJ7YmFja2dyb3VuZC1jb2xvcjojZWJlYmViIWltcG9ydGFudDtib3JkZXI6MCFpbXBvcnRhbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW07Ym9yZGVyLXJhZGl1czowO2JveC1zaGFkb3c6bm9uZTtjb2xvcjp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7ZGlzcGxheTpibG9jaztkaXNwbGF5OmlubGluZS1ibG9jaztmbG9hdDpyaWdodDtoZWlnaHQ6MWVtO2xpbmUtaGVpZ2h0OjE7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O291dGxpbmU6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOnJlbGF0aXZlIWltcG9ydGFudDt3aWR0aDoxMDAlO3dpZHRoOjgwcHg7ei1pbmRleDoxfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2NsZWFyLWFsbC1wbGFjZWhvbGRlcj4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2NsZWFyLWFsbC1wbGFjZWhvbGRlcjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2NsZWFyLWFsbC1wbGFjZWhvbGRlcnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0e2NsZWFyOmJvdGg7bGlzdC1zdHlsZTpub25lIG91dHNpZGU7bWFyZ2luOjAgMCA0cHg7cGFkZGluZzowfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3Qud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMtLWxvYWRpbmd7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LXdyYXA6bm93cmFwO21hcmdpbi10b3A6MTJweH0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0LndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzLS1sb2FkaW5nLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0LS1jaGlwc3thbGlnbi1pdGVtczpmbGV4LWVuZDtmbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC13cmFwOndyYXA7Z2FwOjAgMTBweH0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0IGxpe2xpc3Qtc3R5bGU6bm9uZSBvdXRzaWRlO21hcmdpbjo5cHggMCAwO3BhZGRpbmc6MH0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0IGxpIHVse2xpc3Qtc3R5bGU6bm9uZSBvdXRzaWRlO21hcmdpbjowO3BhZGRpbmc6MH0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0PmxpOmZpcnN0LWNoaWxkLC53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QgbGk6Zmlyc3QtY2hpbGQgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0LWl0ZW0tdHlwZXttYXJnaW46MH0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0IGxpLnNob3ctbG9hZGluZy1zdGF0ZS1saXN0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QgbGkuc2hvdy1sb2FkaW5nLXN0YXRlLWxpc3Q+c3BhbntiYWNrZ3JvdW5kLWNvbG9yOiNlYmViZWIhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOi4yNXJlbTtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lO2NvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxZW07bGluZS1oZWlnaHQ6MTttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QgbGkuc2hvdy1sb2FkaW5nLXN0YXRlLWxpc3Q+c3Bhbj4qe3Zpc2liaWxpdHk6aGlkZGVufS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QgbGkuc2hvdy1sb2FkaW5nLXN0YXRlLWxpc3Q+c3BhbjphZnRlcnstd2Via2l0LWFuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTthbmltYXRpb246bG9hZGluZ19fYW5pbWF0aW9uIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsI2ViZWJlYiwjZjVmNWY1LCNlYmViZWIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjb250ZW50OiIgIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX1AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QgbGkuc2hvdy1sb2FkaW5nLXN0YXRlLWxpc3Q+c3Bhbnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0IGxpLnNob3ctbG9hZGluZy1zdGF0ZS1jaGlwc3tkaXNwbGF5OmlubGluZS1ibG9ja30ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0IGxpLnNob3ctbG9hZGluZy1zdGF0ZS1jaGlwcz5zcGFue2JhY2tncm91bmQtY29sb3I6I2ViZWJlYiFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6LjI1cmVtO2JvcmRlci1yYWRpdXM6MTNweDtib3gtc2hhZG93Om5vbmU7Y29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjFlbTtsaW5lLWhlaWdodDoxO21hcmdpbi1yaWdodDoxNXB4IWltcG9ydGFudDttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnQ7bWluLXdpZHRoOjcwcHg7b3V0bGluZTowIWltcG9ydGFudDtvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3dpZHRoOjEwMCU7ei1pbmRleDoxfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QgbGkuc2hvdy1sb2FkaW5nLXN0YXRlLWNoaXBzPnNwYW4+Knt2aXNpYmlsaXR5OmhpZGRlbn0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0IGxpLnNob3ctbG9hZGluZy1zdGF0ZS1jaGlwcz5zcGFuOmFmdGVyey13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmdfX2FuaW1hdGlvbiAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2FuaW1hdGlvbjpsb2FkaW5nX19hbmltYXRpb24gMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZWJlYmViLCNmNWY1ZjUsI2ViZWJlYik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2NvbnRlbnQ6IiAiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfUBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdCBsaS5zaG93LWxvYWRpbmctc3RhdGUtY2hpcHM+c3Bhbnstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0IGxpLnNob3ctbG9hZGluZy1zdGF0ZS1jaGlwczpsYXN0LW9mLXR5cGU+c3BhbnttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9LndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdCBsaS5zaG93LWxvYWRpbmctc3RhdGUtY2hpcHM6bnRoLWNoaWxkKDMpe2ZsZXgtZ3JvdzoxO21heC13aWR0aDoyMDBweH0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0Pi53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdC1pdGVtIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdC1pdGVtLW5hbWV7bWFyZ2luOjlweCAwIDB9LndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdC1pdGVtLXR5cGV7ZGlzcGxheTpibG9jaztmb250LXNpemU6Ljc1ZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4xZW07bWFyZ2luOjE2cHggMCAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0LWl0ZW0tb3BlcmF0b3J7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC13ZWlnaHQ6NDAwfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QtaXRlbS1uYW1le2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QtaXRlbS1yZW1vdmV7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6I2UwZTBlMDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjI1cHg7Y29sb3I6Y3VycmVudENvbG9yO2ZvbnQtc2l6ZTouNzVlbTtoZWlnaHQ6MTZweDtsaW5lLWhlaWdodDoxNnB4O21hcmdpbjowIC41ZW0gMCAwO3BhZGRpbmc6MDt3aWR0aDoxNnB4fS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QtaXRlbS1yZW1vdmU6Zm9jdXMsLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdC1pdGVtLXJlbW92ZTpob3ZlcntiYWNrZ3JvdW5kOiM5NDk0OTR9LndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdC1pdGVtLXJlbW92ZTpmb2N1cyAud2MtYmxvY2stY29tcG9uZW50cy1jaGlwX19yZW1vdmUtaWNvbiwud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0LWl0ZW0tcmVtb3ZlOmhvdmVyIC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXBfX3JlbW92ZS1pY29ue2ZpbGw6I2ZmZn0ud2MtYmxvY2stYWN0aXZlLWZpbHRlcnMgLndjLWJsb2NrLWFjdGl2ZS1maWx0ZXJzX19saXN0LWl0ZW0tcmVtb3ZlOmRpc2FibGVke2NvbG9yOiNlMGUwZTA7Y3Vyc29yOm5vdC1hbGxvd2VkfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QtLWNoaXBzIGxpLC53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QtLWNoaXBzIHVse2Rpc3BsYXk6aW5saW5lfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QtLWNoaXBzIC53Yy1ibG9jay1hY3RpdmUtZmlsdGVyc19fbGlzdC1pdGVtLXR5cGV7ZGlzcGxheTpub25lfS53Yy1ibG9jay1hY3RpdmUtZmlsdGVycyAud2MtYmxvY2stYWN0aXZlLWZpbHRlcnNfX2xpc3QtLWNoaXBzIC53Yy1ibG9jay1jb21wb25lbnRzLWNoaXB7bWFyZ2luLWJvdHRvbTouMTg3NWVtO21hcmdpbi10b3A6LjE4NzVlbX1ALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbm5lcl9fYW5pbWF0aW9uezAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU4NTYsLjA3MDMsLjQxNDMsLjkyOTcpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41ODU2LC4wNzAzLC40MTQzLC45Mjk3KTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX1Aa2V5ZnJhbWVzIHNwaW5uZXJfX2FuaW1hdGlvbnswJXstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41ODU2LC4wNzAzLC40MTQzLC45Mjk3KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTg1NiwuMDcwMywuNDE0MywuOTI5Nyk7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmdfX2FuaW1hdGlvbnt0b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX19QGtleWZyYW1lcyBsb2FkaW5nX19hbmltYXRpb257dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9fTp3aGVyZShkaXZbZGF0YS1ibG9jay1uYW1lPSJ3b29jb21tZXJjZS9sZWdhY3ktdGVtcGxhdGUiXSl7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwMHB4fQ=="}},"time_used":651,"timings":{"blocked":-1,"dns":0,"connect":93,"send":0,"wait":186,"receive":275,"ssl":97},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/chaty/css/chaty-front.min.css?ver=1627838794","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.595Z","timestamp":1785148618595,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/chaty/css/chaty-front.min.css?ver=1627838794 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 20627\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:12 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":20627,"size_decoded":20837,"mime_type":"text/css","magic":"ASCII text, with very long lines (20627), with no line terminators","md5":"8480d872c9d522c1fddd340251b75652","sha1":"df0f8c3b84c236e91518a34336527bb4d59a344c","sha256":"9adf4ac35592b573fb62557c0c918f5c76f9b5d18353e2b0c2b4956c8fcc405c","sha512":"f09906bf19e3fc6a2393ea42af192a550a8c2d235bd278f695154e0cc99b47f4c1fa340c7cda3b6de969b46f4b3f06805347709d28b7ee7903cd45320b10e728","ssdeep":"192:khL3sU3sWeNYcDnNteSKlTAj4Ng9o2BavhQu1D7rZuE91SABwyGvhNYhFqW:klJcWe7mFhS9o2BQFDbUAdt","tlshash":"bf9285a2c2161035512bc2137ac06ae41135e553f9a3087df3a4b5f8c6ca5faf727f86","first_seen":"2023-04-10T08:41:05Z","last_seen":"2026-07-27T10:37:50.410735Z","times_seen":95,"resource_available":false,"data":"LmNoYXR5ICosLmNoYXR5LW91dGVyLWZvcm1zICp7Ym94LXNpemluZzpib3JkZXItYm94fS5jaGF0eS1hZ2VudC1kYXRhLC5jaGF0eS13aGF0c2FwcC1maWVsZCBpbnB1dFt0eXBlPXRleHRdLC5jaGF0eS13aGF0c2FwcC1tZXNzYWdlLC5jaGF0eS13aGF0c2FwcC1tZXNzYWdlIHB7Zm9udC1mYW1pbHk6U2Vnb2UgVUksSGVsdmV0aWNhIE5ldWUsSGVsdmV0aWNhLEx1Y2lkYSBHcmFuZGUsQXJpYWwsVWJ1bnR1LENhbnRhcmVsbCxGaXJhIFNhbnMsc2Fucy1zZXJpZn0uY2hhdHktYWdlbnQtaGVhZGVyLC5jaGF0eS1jaGFubmVsLC5jaGF0eS1jaGFubmVscywuY2hhdHktZm9ybS1ib2R5LC5jaGF0eS10b29sdGlwe3Bvc2l0aW9uOnJlbGF0aXZlfS5jaGF0eS10b29sdGlwIC5vbi1ob3Zlci10ZXh0LC5jaGF0eS10b29sdGlwIC5vbi1ob3Zlci10ZXh0OmJlZm9yZSwuY2hhdHktdG9vbHRpcDphZnRlciwuY2hhdHktdG9vbHRpcDpiZWZvcmV7dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXNpemU6LjllbTtsaW5lLWhlaWdodDoxO3VzZXItc2VsZWN0Om5vbmU7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5Om5vbmU7b3BhY2l0eTowfS5vbi1ob3Zlci10ZXh0e2Rpc3BsYXk6bm9uZTt3aGl0ZS1zcGFjZTpwcmV9LmNoYXR5LXRvb2x0aXAgLm9uLWhvdmVyLXRleHQ6YmVmb3JlLC5jaGF0eS10b29sdGlwOmJlZm9yZXtjb250ZW50OiIiO2JvcmRlcjo1cHggc29saWQgdHJhbnNwYXJlbnQ7ei1pbmRleDoxMDAxfS5jaGF0eS10b29sdGlwOmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWhvdmVyKX0uY2hhdHktdG9vbHRpcCAub24taG92ZXItdGV4dCwuY2hhdHktdG9vbHRpcDphZnRlcnt0ZXh0LWFsaWduOmNlbnRlcjttaW4td2lkdGg6MWVtO21heC13aWR0aDoyMWVtO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztwYWRkaW5nOjVweCAxNXB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzMzMzt6LWluZGV4OjEwMDA7Ym94LXNoYWRvdzowIDEuOTM0NjVweCA3LjczODU5cHggcmdiKDAgMCAwIC8gMTUlKTtmb250LXNpemU6MTdweDtsaW5lLWhlaWdodDoyMXB4fS5jaGF0eS1hbmltYXRpb24tc2hvY2t3YXZlOmFmdGVyLC5jaGF0eS1hbmltYXRpb24tc2hvY2t3YXZlOmJlZm9yZXtjb250ZW50OiIiO2JvcmRlci1yYWRpdXM6NTAlO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjB9LmNoYXR5LXRvb2x0aXAgLm9uLWhvdmVyLXRleHR7b3ZlcmZsb3c6dmlzaWJsZX0uY2hhdHktdG9vbHRpcC5hY3RpdmUgLm9uLWhvdmVyLXRleHQsLmNoYXR5LXRvb2x0aXAuYWN0aXZlIC5vbi1ob3Zlci10ZXh0OmJlZm9yZSwuY2hhdHktdG9vbHRpcC5hY3RpdmU6YWZ0ZXIsLmNoYXR5LXRvb2x0aXAuYWN0aXZlOmJlZm9yZSwuY2hhdHktdG9vbHRpcDpob3ZlciAub24taG92ZXItdGV4dCwuY2hhdHktdG9vbHRpcDpob3ZlciAub24taG92ZXItdGV4dDpiZWZvcmUsLmNoYXR5LXRvb2x0aXA6aG92ZXI6YWZ0ZXIsLmNoYXR5LXRvb2x0aXA6aG92ZXI6YmVmb3Jle2Rpc3BsYXk6YmxvY2s7b3BhY2l0eToxfS5jaGF0eS10b29sdGlwLmFjdGl2ZSAub24taG92ZXItdGV4dCwuY2hhdHktdG9vbHRpcC5hY3RpdmUgLm9uLWhvdmVyLXRleHQ6YmVmb3JlLC5jaGF0eS10b29sdGlwLmFjdGl2ZTphZnRlciwuY2hhdHktdG9vbHRpcC5hY3RpdmU6YmVmb3JlLC5jaGF0eS10b29sdGlwLnBvcy1sZWZ0OmhvdmVyIC5vbi1ob3Zlci10ZXh0LC5jaGF0eS10b29sdGlwLnBvcy1sZWZ0OmhvdmVyIC5vbi1ob3Zlci10ZXh0OmJlZm9yZSwuY2hhdHktdG9vbHRpcC5wb3MtbGVmdDpob3ZlcjphZnRlciwuY2hhdHktdG9vbHRpcC5wb3MtbGVmdDpob3ZlcjpiZWZvcmUsLmNoYXR5LXRvb2x0aXAucG9zLXJpZ2h0OmhvdmVyIC5vbi1ob3Zlci10ZXh0LC5jaGF0eS10b29sdGlwLnBvcy1yaWdodDpob3ZlciAub24taG92ZXItdGV4dDpiZWZvcmUsLmNoYXR5LXRvb2x0aXAucG9zLXJpZ2h0OmhvdmVyOmFmdGVyLC5jaGF0eS10b29sdGlwLnBvcy1yaWdodDpob3ZlcjpiZWZvcmV7YW5pbWF0aW9uOmVhc2Utb3V0IGZvcndhcmRzIHRvb2x0aXBzLWhvcnp9LmNoYXR5LXRvb2x0aXAuaGFzLW9uLWhvdmVyOmFmdGVyLC5jaGF0eS10b29sdGlwLmhhcy1vbi1ob3ZlcjpiZWZvcmUsLmNoYXR5LXdpZGdldCAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtY2xvc2UuY2hhdHktdG9vbHRpcC5jaGF0eS10b29sdGlwOmhvdmVyOmFmdGVyLC5jaGF0eS13aWRnZXQgLmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY3RhLWNsb3NlLmNoYXR5LXRvb2x0aXA6aG92ZXI6YmVmb3JlLC5jaGF0eS13aWRnZXQuY2hhdHktb3BlbiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtbWFpbi5jaGF0eS10b29sdGlwOmFmdGVyLC5jaGF0eS13aWRnZXQuY2hhdHktb3BlbiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtbWFpbi5jaGF0eS10b29sdGlwOmJlZm9yZSwuY2hhdHktd2lkZ2V0LmNzc2FzLW5vLWNsb3NlLWJ1dHRvbi5kZWZhdWx0LW9wZW4gLmNoYXR5LWktdHJpZ2dlciwub24taG92ZXItdGV4dDplbXB0eSxbZGF0YS1ob3Zlcj0iIl06YWZ0ZXIsW2RhdGEtaG92ZXI9IiJdOmJlZm9yZXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5jaGF0eS10b29sdGlwLnBvcy10b3A6YmVmb3Jle2JvcmRlci1ib3R0b20td2lkdGg6MDtib3JkZXItdG9wLWNvbG9yOiNmZmY7Ym90dG9tOmNhbGMoMTAwJSArIDVweCl9LmNoYXR5LXRvb2x0aXAucG9zLXRvcDphZnRlcntib3R0b206Y2FsYygxMDAlICsgMTBweCl9LmNoYXR5LXRvb2x0aXAucG9zLXRvcDphZnRlciwuY2hhdHktdG9vbHRpcC5wb3MtdG9wOmJlZm9yZXtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLS41ZW0pfS5jaGF0eS10b29sdGlwLnBvcy1kb3duOmJlZm9yZXt0b3A6MTAwJTtib3JkZXItdG9wLXdpZHRoOjA7Ym9yZGVyLWJvdHRvbS1jb2xvcjojZmZmfS5jaGF0eS10b29sdGlwLnBvcy1kb3duOmFmdGVye3RvcDpjYWxjKDEwMCUgKyA1cHgpfS5jaGF0eS10b29sdGlwLnBvcy1kb3duOmFmdGVyLC5jaGF0eS10b29sdGlwLnBvcy1kb3duOmJlZm9yZXtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLjVlbSl9LmNoYXR5LXRvb2x0aXAucG9zLWxlZnQgLm9uLWhvdmVyLXRleHQ6YmVmb3JlLC5jaGF0eS10b29sdGlwLnBvcy1sZWZ0OmJlZm9yZXt0b3A6NTAlO2JvcmRlci1yaWdodC13aWR0aDowO2JvcmRlci1sZWZ0LWNvbG9yOiNmZmY7bGVmdDpjYWxjKDBlbSAtIDEwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLS41ZW0sLTUwJSl9LmNoYXR5LXRvb2x0aXAucG9zLWxlZnQgLm9uLWhvdmVyLXRleHQ6YmVmb3Jle2xlZnQ6YXV0bztyaWdodDpjYWxjKDBlbSAtIDVweCl9LmNoYXR5LXRvb2x0aXAucG9zLWxlZnQgLm9uLWhvdmVyLXRleHQsLmNoYXR5LXRvb2x0aXAucG9zLWxlZnQ6YWZ0ZXJ7dG9wOjUwJTtyaWdodDpjYWxjKDEwMCUgKyAxMHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0uNWVtLC01MCUpfS5jaGF0eS10b29sdGlwLnBvcy1yaWdodCAub24taG92ZXItdGV4dDpiZWZvcmUsLmNoYXR5LXRvb2x0aXAucG9zLXJpZ2h0OmJlZm9yZXt0b3A6NTAlO2JvcmRlci1sZWZ0LXdpZHRoOjA7Ym9yZGVyLXJpZ2h0LWNvbG9yOiNmZmY7cmlnaHQ6Y2FsYygwZW0gLSAxMHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlKC41ZW0sLTUwJSl9LmNoYXR5LXRvb2x0aXAucG9zLXJpZ2h0IC5vbi1ob3Zlci10ZXh0OmJlZm9yZXtsZWZ0OmNhbGMoMGVtIC0gNXB4KTtyaWdodDphdXRvfS5jaGF0eS10b29sdGlwLnBvcy1yaWdodCAub24taG92ZXItdGV4dCwuY2hhdHktdG9vbHRpcC5wb3MtcmlnaHQ6YWZ0ZXJ7dG9wOjUwJTtsZWZ0OmNhbGMoMTAwJSArIDEwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLjVlbSwtNTAlKX1Aa2V5ZnJhbWVzIHRvb2x0aXBzLXZlcnR7dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwwKX19QGtleWZyYW1lcyB0b29sdGlwcy1ob3J6e3Rve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDAsLTUwJSl9fS5jaGF0eS10b29sdGlwLnBvcy1kb3duOmhvdmVyOmFmdGVyLC5jaGF0eS10b29sdGlwLnBvcy1kb3duOmhvdmVyOmJlZm9yZSwuY2hhdHktdG9vbHRpcC5wb3MtdG9wOmhvdmVyOmFmdGVyLC5jaGF0eS10b29sdGlwLnBvcy10b3A6aG92ZXI6YmVmb3Jle2FuaW1hdGlvbjplYXNlLW91dCBmb3J3YXJkcyB0b29sdGlwcy12ZXJ0fUAtd2Via2l0LWtleWZyYW1lcyBjaGF0eS1hbmltYXRpb24tc2hvY2t3YXZlezAle3RyYW5zZm9ybTpzY2FsZSgxKTtib3gtc2hhZG93OjAgMCAycHggcmdiYSgwLDAsMCwuMyksaW5zZXQgMCAwIDFweCByZ2JhKDAsMCwwLC4zKX05NSV7Ym94LXNoYWRvdzowIDAgNTBweCB0cmFuc3BhcmVudCxpbnNldCAwIDAgMzBweCB0cmFuc3BhcmVudH0xMDAle3RyYW5zZm9ybTpzY2FsZSgyLjI1KX19QGtleWZyYW1lcyBjaGF0eS1hbmltYXRpb24tc2hvY2t3YXZlezAle3RyYW5zZm9ybTpzY2FsZSgxKTtib3gtc2hhZG93OjAgMCAycHggcmdiYSgwLDAsMCwuMyksaW5zZXQgMCAwIDFweCByZ2JhKDAsMCwwLC4zKX05NSV7Ym94LXNoYWRvdzowIDAgNTBweCB0cmFuc3BhcmVudCxpbnNldCAwIDAgMzBweCB0cmFuc3BhcmVudH0xMDAle3RyYW5zZm9ybTpzY2FsZSgyLjI1KX19QC13ZWJraXQta2V5ZnJhbWVzIGNoYXR5LWFuaW1hdGlvbi1ibGlua3swJSwxMDAle29wYWNpdHk6MX0yMCV7b3BhY2l0eTouNX19QGtleWZyYW1lcyBjaGF0eS1hbmltYXRpb24tYmxpbmt7MCUsMTAwJXtvcGFjaXR5OjF9MjAle29wYWNpdHk6LjV9fUAtd2Via2l0LWtleWZyYW1lcyBjaGF0eS1hbmltYXRpb24tcHVsc2V7MCV7dHJhbnNmb3JtOnNjYWxlKDEpO2JveC1zaGFkb3c6MCAycHggMnB4IHJnYmEoMCwwLDAsLjIpO2JvcmRlci1yYWRpdXM6NTAlfTEwMCV7dHJhbnNmb3JtOnNjYWxlKDEuMSk7Ym94LXNoYWRvdzowIDJweCAycHggcmdiYSgwLDAsMCwuMik7Ym9yZGVyLXJhZGl1czo0NSV9fUBrZXlmcmFtZXMgY2hhdHktYW5pbWF0aW9uLXB1bHNlezAle3RyYW5zZm9ybTpzY2FsZSgxKTtib3JkZXItcmFkaXVzOjUwJX0xMDAle3RyYW5zZm9ybTpzY2FsZSgxLjEpO2JvcmRlci1yYWRpdXM6NDUlfX0uY2hhdHktYW5pbWF0aW9uLXNob2Nrd2F2ZTphZnRlcntsZWZ0OjA7LXdlYmtpdC1hbmltYXRpb246MnMgZWFzZS1vdXQgMS4zcyBpbmZpbml0ZSBjaGF0eS1hbmltYXRpb24tc2hvY2t3YXZlO2FuaW1hdGlvbjoycyBlYXNlLW91dCAxLjNzIGluZmluaXRlIGNoYXR5LWFuaW1hdGlvbi1zaG9ja3dhdmV9LmNoYXR5LWFuaW1hdGlvbi1zaG9ja3dhdmU6YmVmb3Jle2xlZnQ6MDstd2Via2l0LWFuaW1hdGlvbjoycyBlYXNlLW91dCAuOHMgaW5maW5pdGUgY2hhdHktYW5pbWF0aW9uLXNob2Nrd2F2ZTthbmltYXRpb246MnMgZWFzZS1vdXQgLjhzIGluZmluaXRlIGNoYXR5LWFuaW1hdGlvbi1zaG9ja3dhdmV9LmNoYXR5LWFuaW1hdGlvbi1ibGlua3std2Via2l0LWFuaW1hdGlvbjoxLjMzcyBlYXNlLW91dCBpbmZpbml0ZSBjaGF0eS1hbmltYXRpb24tYmxpbms7YW5pbWF0aW9uOjEuMzNzIGVhc2Utb3V0IGluZmluaXRlIGNoYXR5LWFuaW1hdGlvbi1ibGlua30uY2hhdHktYW5pbWF0aW9uLXB1bHNlLC5jaGF0eS1hbmltYXRpb24tcHVsc2UtaWNvbnstd2Via2l0LWFuaW1hdGlvbjouNHMgaW5maW5pdGUgYWx0ZXJuYXRlIGNoYXR5LWFuaW1hdGlvbi1wdWxzZTthbmltYXRpb246LjRzIGluZmluaXRlIGFsdGVybmF0ZSBjaGF0eS1hbmltYXRpb24tcHVsc2V9LmNoYXR5LWFuaW1hdGlvbi1zaGVlbntwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59LmNoYXR5LWFuaW1hdGlvbi1zaGVlbjphZnRlcnthbmltYXRpb246NXMgaW5maW5pdGUgY2hhdHktYW5pbWF0aW9uLXNoZWVuO2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLHRyYW5zcGFyZW50LHJnYmEoMjU1LDI1NSwyNTUsLjUpIDUwJSx0cmFuc3BhcmVudCk7dHJhbnNmb3JtOnJvdGF0ZVooNjBkZWcpIHRyYW5zbGF0ZSgwLDVlbSl9QGtleWZyYW1lcyBjaGF0eS1hbmltYXRpb24tc2hlZW57MTAwJSwyMCV7dHJhbnNmb3JtOnJvdGF0ZVooNjBkZWcpIHRyYW5zbGF0ZSgwLC04MHB4KX19LmNoYXR5LWFuaW1hdGlvbi1mYWRle2FuaW1hdGlvbjo1cyBpbmZpbml0ZSBjaGF0eS1hbmltYXRpb24tZmFkZX0uY2hhdHktYW5pbWF0aW9uLXNwaW57YW5pbWF0aW9uOjVzIGN1YmljLWJlemllciguNTYsLS4zNSwuMjIsMS41KSBpbmZpbml0ZSBjaGF0eS1hbmltYXRpb24tc3Bpbn1Aa2V5ZnJhbWVzIGNoYXR5LWFuaW1hdGlvbi1mYWRlezE1JSw1JXtvcGFjaXR5Oi4yNX0xMCUsMTAwJSwyMCV7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGNoYXR5LWFuaW1hdGlvbi1zcGluezEwJXt0cmFuc2Zvcm06cm90YXRlWigtMjBkZWcpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZX0xMDAlLDIwJXt0cmFuc2Zvcm06cm90YXRlWigzNjBkZWcpfX0uY2hhdHktYW5pbWF0aW9uLWJvdW5jZSwuY2hhdHktYW5pbWF0aW9uLWp1bXB7YW5pbWF0aW9uOjVzIGN1YmljLWJlemllciguODQsLS41NCwuMzEsMS4xOSkgaW5maW5pdGUgY2hhdHktYW5pbWF0aW9uLWJvdW5jZX1Aa2V5ZnJhbWVzIGNoYXR5LWFuaW1hdGlvbi1ib3VuY2V7MCUsMTAwJSwyMCV7dHJhbnNmb3JtOm5vbmV9MTAle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xZW0pfX1Aa2V5ZnJhbWVzIGNoYXR5LWFuaW1hdGlvbi13YWdnbGV7MCV7dHJhbnNmb3JtOm5vbmV9MTAle3RyYW5zZm9ybTpyb3RhdGVaKC0yMGRlZykgc2NhbGUoMS4yKX0xMyV7dHJhbnNmb3JtOnJvdGF0ZVooMjVkZWcpIHNjYWxlKDEuMil9MTUle3RyYW5zZm9ybTpyb3RhdGVaKC0xNWRlZykgc2NhbGUoMS4yKX0xNyV7dHJhbnNmb3JtOnJvdGF0ZVooMTVkZWcpIHNjYWxlKDEuMil9MjAle3RyYW5zZm9ybTpyb3RhdGVaKC0xMmRlZykgc2NhbGUoMS4yKX0yMiV7dHJhbnNmb3JtOnJvdGF0ZVooMCkgc2NhbGUoMS4yKX0xMDAlLDI0JXt0cmFuc2Zvcm06cm90YXRlWigwKSBzY2FsZSgxKX19LmNoYXR5LWFuaW1hdGlvbi13YWdnbGV7YW5pbWF0aW9uOjVzIGluZmluaXRlIGNoYXR5LWFuaW1hdGlvbi13YWdnbGV9LmNoYXR5e2Rpc3BsYXk6bm9uZTt6LWluZGV4Ojk5OTk5fS5jaGF0eS13aWRnZXQuY2hhdHktb3BlbiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtY2xvc2UuY2hhdHktdG9vbHRpcC5jaGF0eS10b29sdGlwOmhvdmVyOmFmdGVyLC5jaGF0eS13aWRnZXQuY2hhdHktb3BlbiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtY2xvc2UuY2hhdHktdG9vbHRpcDpob3ZlcjpiZWZvcmUsLmNoYXR5LmFjdGl2ZSwuY2hhdHkuZm9ybS1vcGVuIC5jaGF0eS13aWRnZXQuY3NzYXMtbm8tY2xvc2UtYnV0dG9uLmRlZmF1bHQtb3BlbiAuY2hhdHktaS10cmlnZ2Vye2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5jaGF0eSAqe21hcmdpbjowO3BhZGRpbmc6MH0uY2hhdHkgLnNyLW9ubHl7cG9zaXRpb246YWJzb2x1dGUhaW1wb3J0YW50O3dpZHRoOjFweCFpbXBvcnRhbnQ7aGVpZ2h0OjFweCFpbXBvcnRhbnQ7cGFkZGluZzowIWltcG9ydGFudDttYXJnaW46LTFweCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtjbGlwOnJlY3QoMCwwLDAsMCkhaW1wb3J0YW50O2JvcmRlcjowIWltcG9ydGFudH0uY2hhdHkgYSwuY2hhdHkgYTpmb2N1cywuY2hhdHkgYTpob3ZlciwuY2hhdHkgYnV0dG9ue2JvcmRlcjpub25lO3RleHQtZGVjb3JhdGlvbjpub25lO291dGxpbmU6MDtib3gtc2hhZG93Om5vbmV9LmNoYXR5LXdpZGdldHtwb3NpdGlvbjpmaXhlZDtib3R0b206MjVweDtyaWdodDoyNXB4O3otaW5kZXg6MTAwMDF9LmNoYXR5LXdpZGdldC5sZWZ0LXBvc2l0aW9ue2xlZnQ6MjVweDtyaWdodDphdXRvfS5jaGF0eS1jaGFubmVsLWxpc3R7ZGlzcGxheTpmbGV4O3dpZHRoOjYycHg7aGVpZ2h0OjEyNHB4O3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTotNHB4O3JpZ2h0OjA7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7cG9pbnRlci1ldmVudHM6bm9uZX0uY2hhdHktd2lkZ2V0LmxlZnQtcG9zaXRpb24gLmNoYXR5LWNoYW5uZWwtbGlzdHtsZWZ0OjA7cmlnaHQ6YXV0b30uY2hhdHktd2lkZ2V0LmNoYXR5LW9wZW4gLmNoYXR5LWNoYW5uZWwtbGlzdCwuY2hhdHktd2lkZ2V0Lmhhcy1zaW5nbGUgLmNoYXR5LWktdHJpZ2dlciAuUGhvbmUtY2hhbm5lbDphZnRlciwuY2hhdHktd2lkZ2V0Lmhhcy1zaW5nbGUgLmNoYXR5LWktdHJpZ2dlciAuUGhvbmUtY2hhbm5lbDpiZWZvcmV7cG9pbnRlci1ldmVudHM6YXV0b30uY2hhdHktb3V0ZXItZm9ybXMsLmNoYXR5LXdpZGdldCAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtY2xvc2V7cG9pbnRlci1ldmVudHM6bm9uZX0uY2hhdHktY2hhbm5lbC1saXN0IC5jaGF0eS1jaGFubmVsLC5jaGF0eS1jaGFubmVsLnNpbmdsZSAuY2hhdHktc3Zne2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHg7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luOjRweDtjdXJzb3I6cG9pbnRlcjtib3gtc2hhZG93OjAgM3B4IDZweCByZ2IoMCAwIDAgLyAyNSUpfS5jaGF0eS1jaGFubmVsLWxpc3QgLmNoYXR5LWNoYW5uZWx7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7b3BhY2l0eTowO3RyYW5zaXRpb246LjVzOy13ZWJraXQtdHJhbnNpdGlvbjouNXN9LmNoYXR5LWNoYW5uZWwuc2luZ2xlIC5jaGF0eS1zdmd7bWFyZ2luOjB9LmNoYXR5LXdpZGdldC5jaGF0eS1vcGVuIC5jaGF0eS1jaGFubmVsLWxpc3QgLmNoYXR5LWNoYW5uZWx7b3BhY2l0eToxfS5jaGF0eS1jaGFubmVsIGEsLmNoYXR5LWNoYW5uZWwgYnV0dG9uLC5jaGF0eS1zdmd7ZGlzcGxheTpibG9jazt3aWR0aDo1NHB4O2hlaWdodDo1NHB4O2JvcmRlci1yYWRpdXM6NTAlO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOnJlbGF0aXZlO291dGxpbmU6MH0uY2hhdHktY2hhbm5lbCBidXR0b257YmFja2dyb3VuZDowIDA7Ym9yZGVyLXJhZGl1czo1MCV9LmNoYXR5LWNoYW5uZWwgYSAuY2hhdHktY3VzdG9tLWljb24sLmNoYXR5LWNoYW5uZWwgYnV0dG9uIC5jaGF0eS1jdXN0b20taWNvbiwuY2hhdHktc3ZnIC5jaGF0eS1jdXN0b20taWNvbnt3aWR0aDo1NHB4O2hlaWdodDo1NHB4O2JvcmRlci1yYWRpdXM6NTAlO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZToyN3B4O2xpbmUtaGVpZ2h0OjU0cHg7Y29sb3I6I2ZmZn0uY2hhdHktY2hhbm5lbCBhOmZvY3VzLC5jaGF0eS1jaGFubmVsIGJ1dHRvbjpmb2N1cywuY2hhdHktY29udGFjdC1mb3JtLWJveCBidXR0b24uY2hhdHktc3VibWl0LWJ1dHRvbntvdXRsaW5lOjB9LmNoYXR5LWFnZW50LWljb24gc3ZnLC5jaGF0eS1jaGFubmVsIHN2Z3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS5jaGF0eS1jaGFubmVsIGltZ3t3aWR0aDo1NHB4O2hlaWdodDo1NHB4O29iamVjdC1maXQ6Y292ZXI7Ym9yZGVyLXJhZGl1czo1MCV9LmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY2hhbm5lbHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDo0cHg7dHJhbnNpdGlvbjouNXM7Ym9yZGVyLXJhZGl1czo1MCU7Y3Vyc29yOnBvaW50ZXJ9LmNoYXR5LWN0YS1idXR0b257dHJhbnNpdGlvbjouNXM7Ym94LXNoYWRvdzowIDNweCA2cHggcmdiKDAgMCAwIC8gMjUlKTtib3JkZXItcmFkaXVzOjUwJX0uY2hhdHktd2lkZ2V0LmxlZnQtcG9zaXRpb24gLmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY2hhbm5lbHtsZWZ0OjRweDtyaWdodDphdXRvfS5jaGF0eS13aWRnZXQgLmNoYXR5LWN0YS1tYWluIC5jaGF0eS1jdGEtYnV0dG9ue3otaW5kZXg6MTA5OTtvcGFjaXR5OjE7cG9zaXRpb246cmVsYXRpdmV9LmNoYXR5LXdpZGdldC5jaGF0eS1vcGVuIC5jaGF0eS1jdGEtbWFpbiAuY2hhdHktY3RhLWJ1dHRvbnt6LWluZGV4Ojk5OTtvcGFjaXR5OjA7dHJhbnNmb3JtOnJvdGF0ZSg1NDBkZWcpO3Zpc2liaWxpdHk6aGlkZGVufS5jaGF0eS13aWRnZXQuY2hhdHktb3BlbiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtY2xvc2V7cG9pbnRlci1ldmVudHM6YXV0bzt6LWluZGV4OjEwMX0uY2hhdHktd2lkZ2V0IC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWN0YS1jbG9zZSAuY2hhdHktY3RhLWJ1dHRvbnt6LWluZGV4Ojk5OTtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW59LmNoYXR5LXdpZGdldC5jaGF0eS1vcGVuIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWN0YS1jbG9zZSAuY2hhdHktY3RhLWJ1dHRvbnt6LWluZGV4OjEwOTk7b3BhY2l0eToxO3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTt2aXNpYmlsaXR5OnZpc2libGV9LmNoYXR5LXdpZGdldC5jaGF0eS1vcGVuIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWN0YS1tYWluLmNoYXR5LXRvb2x0aXB7ei1pbmRleDo5MX0uY2hhdHktY2hhbm5lbCBidXR0b24ub3Blbi1jaGF0eS1jaGFubmVsLC5jaGF0eS13aWRnZXQuY2hhdHktbm8tY2xvc2UtYnV0dG9uOm5vdCguaGFzLXNpbmdsZSkgLmNoYXR5LWktdHJpZ2dlcjpub3QoLnNpbmdsZS1jaGFubmVsKSwuY2hhdHktd2lkZ2V0LmNoYXR5LW9wZW4gLmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY3RhLW1haW4uY2hhdHktdG9vbHRpcCAub24taG92ZXItdGV4dCwuY2hhdHkuZm9ybS1vcGVuIC5jaGF0eS1jaGFubmVsIGJ1dHRvbi5vcGVuLWNoYXR5LC5jaGF0eS5mb3JtLW9wZW4gLmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY3RhLW1haW4uY2hhdHktdG9vbHRpcCAub24taG92ZXItdGV4dCwuY2hhdHkuZm9ybS1vcGVuIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LXRvb2x0aXA6YWZ0ZXIsLmNoYXR5LmZvcm0tb3BlbiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS10b29sdGlwOmJlZm9yZSwuY2hhdHkuZm9ybS1vcGVuIC5jaGF0eS13aWRnZXQuaGFzLXNpbmdsZSAuY2hhdHktaS10cmlnZ2VyIC5vbi1ob3Zlci10ZXh0e2Rpc3BsYXk6bm9uZX0uY2hhdHktd2lkZ2V0IC5jaC1wZW5kaW5nLW1zZ3twb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotNHB4O3RvcDotNHB4O3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZDpyZWQ7Y29sb3I6I2ZmZjtmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6NTAlO3otaW5kZXg6MTEwMX0uY2hhdHktd2lkZ2V0LmxlZnQtcG9zaXRpb24uaG9yLW1vZGUgLmNoYXR5LWNoYW5uZWwtbGlzdHt3aWR0aDoxMzZweDtoZWlnaHQ6NjJweDtsZWZ0OjA7Ym90dG9tOjB9LmNoYXR5LXdpZGdldC5yaWdodC1wb3NpdGlvbi5ob3ItbW9kZSAuY2hhdHktY2hhbm5lbC1saXN0e3dpZHRoOjEzNnB4O2hlaWdodDo2MnB4O3JpZ2h0OjA7bGVmdDphdXRvO2JvdHRvbTowfS5jaGF0eS13aWRnZXQuaG9yLW1vZGUgLmNoYXR5LWNoYW5uZWwtbGlzdCAuY2hhdHktY2hhbm5lbHttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfS5jaGF0eS13aWRnZXQuaG9yLW1vZGUubGVmdC1wb3NpdGlvbiAuY2hhdHktY2hhbm5lbC1saXN0IC5jaGF0eS1jaGFubmVse2xlZnQ6MH0uY2hhdHktd2lkZ2V0Lmhvci1tb2RlLnJpZ2h0LXBvc2l0aW9uIC5jaGF0eS1jaGFubmVsLWxpc3QgLmNoYXR5LWNoYW5uZWx7cmlnaHQ6MDtsZWZ0OmF1dG99LmNoYXR5LW91dGVyLWZvcm1ze3ZlcnRpY2FsLWFsaWduOmJvdHRvbTstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyLXJhZGl1czo2cHg7cG9zaXRpb246Zml4ZWQhaW1wb3J0YW50O2JvdHRvbTotMjVweDtsZWZ0OjI1cHg7cGFkZGluZzowO3dpZHRoOjMyMHB4O21heC13aWR0aDo5MCU7LW1vei10cmFuc2l0aW9uOi41cyBsaW5lYXI7Ym94LXNoYWRvdzpyZ2JhKDAsMCwwLC4xNikgMCA1cHggNDBweDstd2Via2l0LWJveC1zaGFkb3c6cmdiYSgwLDAsMCwuMTYpIDAgNXB4IDQwcHg7LW1vei1ib3gtc2hhZG93OnJnYmEoMCwwLDAsLjE2KSAwIDVweCA0MHB4O29wYWNpdHk6MDt2aXNpYmlsaXR5OmhpZGRlbjt6LWluZGV4Oi0xO3RyYW5zaXRpb246LjVzOy13ZWJraXQtdHJhbnNpdGlvbjouNXM7YW5pbWF0aW9uLWRlbGF5Oi0yczstd2Via2l0LWFuaW1hdGlvbi1kZWxheTotMnN9LmNoYXR5LW91dGVyLWZvcm1zLnBvcy1sZWZ0e2xlZnQ6MjVweH0uY2hhdHktb3V0ZXItZm9ybXMucG9zLXJpZ2h0e3JpZ2h0OjI1cHg7bGVmdDphdXRvfS5jaGF0eS1vdXRlci1mb3Jtcy5hY3RpdmV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtOTNweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTkzcHgpO29wYWNpdHk6MTt6LWluZGV4OjEwMDAxO3Zpc2liaWxpdHk6dmlzaWJsZTtib3R0b206MDtwb2ludGVyLWV2ZW50czphdXRvfS5jaGF0eS13aGF0c2FwcC1ib2R5e2JhY2tncm91bmQ6I2U2ZGRkNDtwYWRkaW5nOjIwcHggMjBweCAyMHB4IDEwcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2hlaWdodDoyNjBweDstd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6NnB4Oy13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OjZweDstbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6NnB4O2JvcmRlci10b3AtbGVmdC1yYWRpdXM6NnB4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjZweH0uY2hhdHktZm9ybS1ib2R5e2JhY2tncm91bmQ6I2ZmZjt6LWluZGV4Ojk5OTk5O21pbi1oZWlnaHQ6NzVweDtib3JkZXItcmFkaXVzOjEwcHh9LmNoYXR5LWZvcm0tYm9keSBmb3Jte21hcmdpbjowO3BhZGRpbmc6MH0ucXItY29kZS1pbWFnZXtwYWRkaW5nOjEwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9LnFyLWNvZGUtaW1hZ2UgaW1ne21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MzYwcHg7bWFyZ2luOjAgYXV0b30uY2hhdHktd2hhdHNhcHAtYm9keTpiZWZvcmV7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTtjb250ZW50OiIiO2xlZnQ6MDt0b3A6MDtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3otaW5kZXg6MDtvcGFjaXR5Oi4wODtiYWNrZ3JvdW5kLWltYWdlOnVybCgiLi4vaW1hZ2VzL3doYXRzYXBwLnBuZyIpfS5jaGF0eS13aGF0c2FwcC1tZXNzYWdle3BhZGRpbmc6N3B4IDE0cHggNnB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjAgOHB4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciB0b3A7ei1pbmRleDoyO2JveC1zaGFkb3c6cmdiYSgwLDAsMCwuMTMpIDAgMXB4IC41cHg7bWFyZ2luLXRvcDo0cHg7bWFyZ2luLWxlZnQ6MTVweDttYXgtd2lkdGg6Y2FsYygxMDAlIC0gNDBweCk7Zm9udC1zaXplOjE0cHh9LmNoYXR5LXdoYXRzYXBwLW1lc3NhZ2U6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQW1DQU1BQUFEcDJhc1hBQUFBQkdkQlRVRUFBTEdQQy94aEJRQUFBQUZ6VWtkQ0FLN09IT2tBQUFDUVVFeFVSVXhwY2NQRHc5cmEybTl2YndBQUFBQUFBREV4TWYvLy93QUFBQm9hR2s5UFQ3cTZ1cXVycXdzTEN5Y25KejQrUHREUTBKeWNuSXlNalBmMzkxNWVYdno4L0U5UFQvMzkvUk1URTRDQWdBQUFBSnFhbXYvLy8vLy8vL3I2K3Uvdjd5VWxKZVhsNWYvLy81eWNuT1hsNVhOemMvSHg4Zi8vL3hVVkZmLy8vK3pzN1AvLy8rYm01Z0FBQU03T3p2Ly8vMmZWZW5zQUFBQXZkRkpPVXdDb3cxY0JDQ25xQWhOQW5ZMFdJRFcyZjIvaFNlbzk5ZzFsQllUODd2RFhHOC82ZDhvTDRzZ001c3pya2dsNjYwT2lad0FBQUhSSlJFRlVLTS90eTdjU2dnQUFCTkZWVVFGendpem1qUHovMzlrNFl1Rld0bTU1Ync3ZUhSNm55NjMrYWxuc3dUMy9ySUR6VVNDN0NyQXppUFlDSkNzQitnYlZrZ0R0VklEaCtEc0U5T1RCcEN0QWJTQkFaU0VRTmdXSXlnSjBSZ0pNRFdZTkFkWWJBZUt0QUhPRGxrSEl2OTk3QWtMcUlWT1hWVTg0QUFBQUFFbEZUa1N1UW1DQyIpO2JhY2tncm91bmQtcG9zaXRpb246NTAlIDUwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmNvbnRhaW47Y29udGVudDoiIjt0b3A6MDtsZWZ0Oi0xMnB4O3dpZHRoOjEycHg7aGVpZ2h0OjE5cHh9LmNoYXR5LXdoYXRzYXBwLW1lc3NhZ2UgcHttYXJnaW46MDtwYWRkaW5nOjA7Y29sb3I6IzExMWIyMTtmb250LXdlaWdodDo0MDB9LmNoYXR5LXdoYXRzYXBwLWZvb3Rlcntwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOjEycHggMTVweDtiYWNrZ3JvdW5kOiNmMGYwZjA7LXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo2cHg7LXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6NnB4Oy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OjZweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo2cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo2cHh9LndoYXRzYXBwLWNoYXR5LWZvcm17ZGlzcGxheTpmbGV4O21hcmdpbjowO3BhZGRpbmc6MH0uY2hhdHktd2hhdHNhcHAtYnV0dG9uIGJ1dHRvbiwuY2hhdHktd2hhdHNhcHAtYnV0dG9uIGJ1dHRvbjpmb2N1cywuY2hhdHktd2hhdHNhcHAtYnV0dG9uIGJ1dHRvbjpob3ZlcntsaW5lLWhlaWdodDo0OHB4O3RleHQtYWxpZ246Y2VudGVyO2Zsb2F0OnJpZ2h0O2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7cGFkZGluZzo4cHggMTBweCA4cHggMTVweDtiYWNrZ3JvdW5kOiMyNWQzNjYhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6MjRweDtvdXRsaW5lOjA7Ym94LXNoYWRvdzpub25lO2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO21hcmdpbjowO3RleHQtZGVjb3JhdGlvbjpub25lfS5jaGF0eS13aGF0c2FwcC1kYXRhe2Rpc3BsYXk6ZmxleDtmbGV4OjF9LmNoYXR5LXdoYXRzYXBwLWZpZWxke3BhZGRpbmctcmlnaHQ6MTJweDtmbGV4OjF9LmNoYXR5LXdoYXRzYXBwLWJ1dHRvbntmbGV4OjAgMCA0OHB4fS5jaGF0eS13aGF0c2FwcC1idXR0b24gc3Zne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7bWFyZ2luOjA7cGFkZGluZzowfS5jaGF0eS13aGF0c2FwcC1maWVsZCBpbnB1dFt0eXBlPXRleHRde2hlaWdodDo0OHB4IWltcG9ydGFudDtsaW5lLWhlaWdodDozMnB4O3BhZGRpbmc6MCAxMHB4IDAgMTVweDtmb250LXNpemU6MTZweDtyZXNpemU6bm9uZTt3aWR0aDoxMDAlO2JvcmRlcjpub25lIWltcG9ydGFudDtib3JkZXItcmFkaXVzOjI0cHg7b3V0bGluZTowO2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7YmFja2dyb3VuZDojZmZmIWltcG9ydGFudDttYXJnaW46MDtjb2xvcjojMTExYjIxfS5jaGF0eS13aGF0c2FwcC1maWVsZCBpbnB1dFt0eXBlPXRleHRdOmZvY3Vze291dGxpbmU6MDtib3JkZXI6bm9uZTttYXJnaW46MDtjb2xvcjojMTExYjIxfS5jaGF0eS13aGF0c2FwcC1idXR0b24gYnV0dG9uOmZvY3VzLC5jaGF0eS13aGF0c2FwcC1idXR0b24gYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6IzIyYmY1YiFpbXBvcnRhbnR9LmNsb3NlLWNoYXR5LWZvcm17cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6NXB4O3RvcDo1cHg7YmFja2dyb3VuZDojMzA1MzRiO3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7Ym9yZGVyLXJhZGl1czoxNXB4O3BhZGRpbmc6M3B4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246LjRzOy13ZWJraXQtdHJhbnNpdGlvbjouNHM7LW1vei10cmFuc2l0aW9uOi40c30uY2xvc2UtY2hhdHktZm9ybTpob3Zlcnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7LW1vei10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LmNoYXR5LWNsb3NlLWJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O3RyYW5zaXRpb246LjRzO2N1cnNvcjpwb2ludGVyfS5jaGF0eS1jbG9zZS1idXR0b246YWZ0ZXIsLmNoYXR5LWNsb3NlLWJ1dHRvbjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMnB4O2hlaWdodDoycHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2Rpc3BsYXk6YmxvY2s7Ym9yZGVyLXJhZGl1czoycHg7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dG9wOjdweDtsZWZ0OjJweH0uY2hhdHktY2xvc2UtYnV0dG9uOmFmdGVye3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKX0uY2hhdHkuZm9ybS1vcGVuIC5jaGF0eS1jaGFubmVsIGJ1dHRvbi5vcGVuLWNoYXR5LWNoYW5uZWwsLmNoYXR5LmZvcm0tb3BlbiAuY2hhdHktbm8tY2xvc2UtYnV0dG9uLmhhcy1zaW5nbGUgLmNoYXR5LWktdHJpZ2dlcntkaXNwbGF5OmJsb2NrfS5jaGF0eS1hZ2VudC1kYXRhe2ZvbnQtc2l6ZToxNnB4fS5jaGF0eS1hZ2VudC1oZWFkZXJ7Zm9udC1zaXplOjE4cHg7cGFkZGluZzoyMHB4IDE1cHg7YmFja2dyb3VuZDojMjJiZjViO2NvbG9yOiNmZmY7LXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOjEwcHg7LXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czoxMHB4Oy1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OjEwcHg7LW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OjEwcHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxMHB4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjEwcHh9LmNoYXR5LWFnZW50LWRhdGEgLmNsb3NlLWNoYXR5LWZvcm17cmlnaHQ6MTBweDt0b3A6MTJweH0uY2hhdHktYWdlbnQtZGF0YSAuY2hhdHktYWdlbnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjE1cHh9LmNoYXR5LWFnZW50LWRhdGEgLmNoYXR5LWFnZW50IGF7Y29sb3I6IzQ5Njg3ZTtmb250LXNpemU6MTZweDt0ZXh0LWRlY29yYXRpb246bm9uZTtkaXNwbGF5OmZsZXg7d2lkdGg6MTAwJTthbGlnbi1pdGVtczpjZW50ZXI7b3V0bGluZTowO2ZvbnQtd2VpZ2h0OjQwMH0uY2hhdHktYWdlbnQtZGF0YSAuY2hhdHktYWdlbnQrLmNoYXR5LWFnZW50e2JvcmRlci10b3A6MnB4IHNvbGlkICNmNmY4Zjl9LmNoYXR5LWFnZW50LWltZ3t3aWR0aDozNnB4O2hlaWdodDozNnB4O29iamVjdC1maXQ6Y292ZXI7Ym9yZGVyLXJhZGl1czo1MCV9LmNoYXR5LWFnZW50LWljb257d2lkdGg6NDhweDtoZWlnaHQ6NDhweDttYXJnaW46MCAxNXB4IDAgMH0uY2hhdHktYWdlbnQtZGF0YSAuY2hhdHktY3VzdG9tLWljb257d2lkdGg6NDhweDtoZWlnaHQ6NDhweDt0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjQ4cHg7YmFja2dyb3VuZDpzaWx2ZXI7Ym9yZGVyLXJhZGl1czo1MCU7Y29sb3I6I2ZmZjtmb250LXNpemU6MjhweH0uY2hhdHktY2xvc2UtYWdlbnQtbGlzdHtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNXB4O3RvcDoxMHB4O3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Y3Vyc29yOnBvaW50ZXI7ei1pbmRleDoxMH0uY2hhdHktYWdlbnQtaWNvbiBpbWd7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtvYmplY3QtZml0OmNvdmVyfS5jaGF0eS1jbG9zZS1hZ2VudC1saXN0IHN2Z3tmaWxsOiNmZmZmZmZ9LmFnZW50LXN1Yi1oZWFkZXJ7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjBweDtmb250LXdlaWdodDo0MDB9LmFnZW50LW1haW4taGVhZGVye2ZvbnQtc2l6ZToyMHB4O2xpbmUtaGVpZ2h0OjMycHg7Zm9udC13ZWlnaHQ6NzAwO3Bvc2l0aW9uOnJlbGF0aXZlfS5jaGF0eS1hZ2VudC1oZWFkZXI6YmVmb3Jle2NvbnRlbnQ6IiI7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL2hlYWRlci10b3AucG5nKSBuby1yZXBlYXQ7d2lkdGg6MjE1cHg7aGVpZ2h0OjQxcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3otaW5kZXg6MX0uY2hhdHktYWdlbnQtaGVhZGVyOmFmdGVye2NvbnRlbnQ6IiI7YmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL2hlYWRlci1ib3R0b20ucG5nKSBuby1yZXBlYXQ7d2lkdGg6NDRweDtoZWlnaHQ6NDFweDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO3otaW5kZXg6MX0uY2hhdHktY3VzdG9tLWNoYW5uZWwtaWNvbntkaXNwbGF5OmJsb2NrO2JvcmRlci1yYWRpdXM6NTAlO2NvbG9yOiNmZmY7dGV4dC1hbGlnbjpjZW50ZXI7bGluZS1oZWlnaHQ6NTRweH0uY2hhdHktY29udGFjdC1mb3JtLXRpdGxle3BhZGRpbmc6MTBweCAxNXB4O3RleHQtYWxpZ246bGVmdDtiYWNrZ3JvdW5kOiNmZmY7Zm9udC1zaXplOjE4cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2FjYWNhY30uY2hhdHktY29udGFjdC1pbnB1dHN7cGFkZGluZzoxNXB4fS5jaGF0eS1jb250YWN0LWlucHV0e2Rpc3BsYXk6ZmxleH0uY2hhdHktY29udGFjdC1pbnB1dCsuY2hhdHktY29udGFjdC1pbnB1dHttYXJnaW46MTJweCAwIDB9LmNoYXR5LWNvbnRhY3QtaW5wdXQgaW5wdXRbdHlwZT1lbWFpbF0uY2hhdHktaW5wdXQtZmllbGQsLmNoYXR5LWNvbnRhY3QtaW5wdXQgaW5wdXRbdHlwZT10ZXh0XS5jaGF0eS1pbnB1dC1maWVsZHt3aWR0aDoxMDAlO2hlaWdodDozNnB4O2xpbmUtaGVpZ2h0OjM2cHg7Zm9udC1zaXplOjE2cHg7cGFkZGluZzowIDEwcHg7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci1yYWRpdXM6NHB4O21hcmdpbjowO291dGxpbmU6MDtjb2xvcjojMjgzMDNkO2JhY2tncm91bmQ6I2ZmZn0uY2hhdHktY29udGFjdC1pbnB1dCBpbnB1dFt0eXBlPWVtYWlsXS5jaGF0eS1pbnB1dC1maWVsZDpmb2N1cywuY2hhdHktY29udGFjdC1pbnB1dCBpbnB1dFt0eXBlPXRleHRdLmNoYXR5LWlucHV0LWZpZWxkOmZvY3VzLC5jaGF0eS1jb250YWN0LWlucHV0IHRleHRhcmVhLmNoYXR5LXRleHRhcmVhLWZpZWxkOmZvY3Vze291dGxpbmU6MDtib3gtc2hhZG93Om5vbmU7Ym9yZGVyLWNvbG9yOiM4OTg5ODl9LmNoYXR5LWNvbnRhY3QtaW5wdXQgdGV4dGFyZWEuY2hhdHktdGV4dGFyZWEtZmllbGR7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwcHg7bGluZS1oZWlnaHQ6MjBweDtmb250LXNpemU6MTZweDtwYWRkaW5nOjEwcHg7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci1yYWRpdXM6NHB4O21hcmdpbjowO291dGxpbmU6MDtjb2xvcjojMjgzMDNkO2JhY2tncm91bmQ6I2ZmZn0uY2hhdHktY29udGFjdC1mb3JtLWJveCAuY2xvc2UtY2hhdHktZm9ybXtyaWdodDo5cHg7dG9wOjlweH0uY2hhdHktY29udGFjdC1mb3JtLWJveCBidXR0b24uY2hhdHktc3VibWl0LWJ1dHRvblt0eXBlPXN1Ym1pdF0sYnV0dG9uI2NoYXR5LXN1Ym1pdC1idXR0b24tMHtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojZmZmO2JhY2tncm91bmQ6I2E4ODZjZDt3aWR0aDoxMDAlO2hlaWdodDozNnB4O2xpbmUtaGVpZ2h0OjM2cHg7Zm9udC1zaXplOjE4cHg7cGFkZGluZzowO21hcmdpbjowO2N1cnNvcjpwb2ludGVyfS5jaGF0eS1jb250YWN0LWlucHV0IGlucHV0LmNoYXR5LWlucHV0LWZpZWxkLmhhcy1jaGF0eS1lcnJvciwuY2hhdHktY29udGFjdC1pbnB1dCB0ZXh0YXJlYS5jaGF0eS10ZXh0YXJlYS1maWVsZC5oYXMtY2hhdHktZXJyb3J7Ym9yZGVyOjFweCBzb2xpZCAjZDIwMDAwfS5jaGF0eS1jb250YWN0LWZvcm0tYnV0dG9ue3BhZGRpbmc6MTVweCAwIDB9LmNoYXR5LWFqYXgtZXJyb3ItbWVzc2FnZSwuY2hhdHktYWpheC1zdWNjZXNzLW1lc3NhZ2V7Y29sb3I6IzAwYTcwMDtwYWRkaW5nOjEwcHggMCAwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZToxNnB4fS5jaGF0eS1hamF4LWVycm9yLW1lc3NhZ2V7Y29sb3I6I2RhMDAwMH0uY2hhdHktZXhpdC1pbnRlbnR7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDotMX0uY2hhdHktZXhpdC1pbnRlbnQ6YmVmb3Jle2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2NvbnRlbnQ6Jyc7d2lkdGg6MTAwdnc7aGVpZ2h0OjEwMHZoO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7dmlzaWJpbGl0eTpoaWRkZW47ei1pbmRleDoxMDA7dHJhbnNpdGlvbjouNXMgZWFzZS1pbi1vdXQ7LXdlYmtpdC10cmFuc2l0aW9uOi41cyBlYXNlLWluLW91dDstbW96LXRyYW5zaXRpb246LjVzIGVhc2UtaW4tb3V0fS5jaGF0eSAuY2hhdHktd2lkZ2V0LmxlZnQtcG9zaXRpb24gLmNoYXR5LWV4aXQtaW50ZW50OmJlZm9yZXtjbGlwLXBhdGg6Y2lyY2xlKDE1cHggYXQgNjBweCBjYWxjKDEwMCUgLSA2MHB4KSl9LmNoYXR5IC5jaGF0eS13aWRnZXQucmlnaHQtcG9zaXRpb24gLmNoYXR5LWV4aXQtaW50ZW50OmJlZm9yZXtjbGlwLXBhdGg6Y2lyY2xlKDE1cHggYXQgY2FsYygxMDAlIC0gNjBweCkgY2FsYygxMDAlIC0gNjBweCkpfS5jaGF0eSAuY2hhdHktd2lkZ2V0IC5jaGF0eS1leGl0LWludGVudC5hbmltYXRlOmJlZm9yZXt2aXNpYmlsaXR5OnZpc2libGU7Y2xpcC1wYXRoOmNpcmNsZSgxMDAlKX0uY2hhdHktd2lkZ2V0Lmhhcy1zaW5nbGUgLmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY2hhbm5lbDpub3QoLmNoYXR5LWFnZW50LWJ1dHRvbikuUGhvbmUtY2hhbm5lbCAuY2hhdHktdG9vbHRpcDphZnRlciwuY2hhdHktd2lkZ2V0Lmhhcy1zaW5nbGUgLmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY2hhbm5lbDpub3QoLmNoYXR5LWFnZW50LWJ1dHRvbikuUGhvbmUtY2hhbm5lbCAuY2hhdHktdG9vbHRpcDpiZWZvcmV7cG9pbnRlci1ldmVudHM6aW5oZXJpdH0="}},"time_used":380,"timings":{"blocked":-1,"dns":0,"connect":93,"send":0,"wait":189,"receive":0,"ssl":97},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/mailchimp-for-woocommerce/public/js/mailchimp-woocommerce-public.min.js?ver=2.7.5.01","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.941Z","timestamp":1785148618941,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/mailchimp-for-woocommerce/public/js/mailchimp-woocommerce-public.min.js?ver=2.7.5.01 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 6854\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:22 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":6854,"size_decoded":7070,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (6854), with no line terminators","md5":"4962698b494fa6c5b9a259b936853426","sha1":"df655b977be8a3c9c563c837ae80693f21670f9d","sha256":"e23064f0de65944686ada90242a58d8c0de5ed90225c573b883640d315104c04","sha512":"df986f828127f322d92aeb0ceb0d79b7a51c0a5c54dfb08e0fabf7ff7c786e9d90ac7d170f96fd07c1c71ba07f70b1f2c67dff25ee68753c049ba17b7ce7a6f7","ssdeep":"96:QT/Vfld0FtALfArwKkJ1dSM0+SbqTF8gxmW6Pv8S0HNN9AAAW3H0IP8:QR0jwfx1dV0+EqT4WV3Rd0IP8","tlshash":"d5e1518973f59de571e621713c97233a70673a522c6ed8989a04b4e81dbce06732273f","first_seen":"2023-03-07T01:34:43Z","last_seen":"2026-08-11T10:50:10.525849Z","times_seen":310,"resource_available":true,"data":"dmFyIG1haWxjaGltcCxtYWlsY2hpbXBfY2FydCxtYWlsY2hpbXBfYmlsbGluZ19lbWFpbCxtYWlsY2hpbXBfdXNlcm5hbWVfZW1haWwsbWFpbGNoaW1wX3JlZ2lzdHJhdGlvbl9lbWFpbCxtYWlsY2hpbXBfc3VibWl0dGVkX2VtYWlsPSExLG1haWxjaGltcFJlYWR5PWZ1bmN0aW9uKGUpey9pbi8udGVzdChkb2N1bWVudC5yZWFkeVN0YXRlKT9zZXRUaW1lb3V0KCJtYWlsY2hpbXBSZWFkeSgiK2UrIikiLDkpOmUoKX07ZnVuY3Rpb24gbWFpbGNoaW1wR2V0Q3VycmVudFVzZXJCeUhhc2goZSl7dHJ5e2lmKCFtYWlsY2hpbXBfcHVibGljX2RhdGEuYWxsb3dlZF90b19zZXRfY29va2llcylyZXR1cm47dmFyIGk9bWFpbGNoaW1wX3B1YmxpY19kYXRhLmFqYXhfdXJsKyI/YWN0aW9uPW1haWxjaGltcF9nZXRfdXNlcl9ieV9oYXNoJmhhc2g9IitlLGE9bmV3IFhNTEh0dHBSZXF1ZXN0O2Eub3BlbigiUE9TVCIsaSwhMCksYS5vbmxvYWQ9ZnVuY3Rpb24oKXtpZihhLnN0YXR1cz49MjAwJiZhLnN0YXR1czw0MDApe3ZhciBlPUpTT04ucGFyc2UoYS5yZXNwb25zZVRleHQpO2lmKCFlKXJldHVybjttYWlsY2hpbXBfY2FydC52YWx1ZUVtYWlsKGUuZW1haWwpJiZtYWlsY2hpbXBfY2FydC5zZXRFbWFpbChlLmVtYWlsKX19LGEub25lcnJvcj1mdW5jdGlvbigpe2NvbnNvbGUubG9nKCJtYWlsY2hpbXAuZ2V0X2VtYWlsX2J5X2hhc2gucmVxdWVzdC5lcnJvciIsYS5yZXNwb25zZVRleHQpfSxhLnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsImFwcGxpY2F0aW9uL2pzb24iKSxhLnNldFJlcXVlc3RIZWFkZXIoIkFjY2VwdCIsImFwcGxpY2F0aW9uL2pzb24iKSxhLnNlbmQoKX1jYXRjaChlKXtjb25zb2xlLmxvZygibWFpbGNoaW1wLmdldF9lbWFpbF9ieV9oYXNoLmVycm9yIixlKX19ZnVuY3Rpb24gbWFpbGNoaW1wSGFuZGxlQmlsbGluZ0VtYWlsKGUpe3RyeXtpZighbWFpbGNoaW1wX3B1YmxpY19kYXRhLmFsbG93ZWRfdG9fc2V0X2Nvb2tpZXMpcmV0dXJuO2lmKG1haWxjaGltcF9wdWJsaWNfZGF0YS5kaXNhYmxlX2NhcnRzKXJldHVybjt2YXIgaT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjbWFpbGNoaW1wX3dvb2NvbW1lcmNlX25ld3NsZXR0ZXIiKTtlfHwoZT0iI2JpbGxpbmdfZW1haWwiKTt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUpLHQ9dm9pZCAwIT09YT9hLnZhbHVlOiIiO2lmKCFtYWlsY2hpbXBfY2FydC52YWx1ZUVtYWlsKHQpfHxtYWlsY2hpbXBfc3VibWl0dGVkX2VtYWlsPT09dClyZXR1cm4hMTttYWlsY2hpbXBfY2FydC5zZXRFbWFpbCh0KTt2YXIgbD1tYWlsY2hpbXBfcHVibGljX2RhdGEuYWpheF91cmwrIj9hY3Rpb249bWFpbGNoaW1wX3NldF91c2VyX2J5X2VtYWlsJmVtYWlsPSIrdCsiJm1jX2xhbmd1YWdlPSIrbWFpbGNoaW1wX3B1YmxpY19kYXRhLmxhbmd1YWdlKyImc3Vic2NyaWJlZD0iKyhpJiZpLmNoZWNrZWQ/IjEiOiIwIiksbT1uZXcgWE1MSHR0cFJlcXVlc3Q7cmV0dXJuIG0ub3BlbigiUE9TVCIsbCwhMCksbS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZT1tLnN0YXR1cz49MjAwJiZtLnN0YXR1czw0MDAsaT1lPyJtYWlsY2hpbXAuaGFuZGxlX2JpbGxpbmdfZW1haWwucmVxdWVzdC5zdWNjZXNzIjoibWFpbGNoaW1wLmhhbmRsZV9iaWxsaW5nX2VtYWlsLnJlcXVlc3QuZXJyb3IiO2UmJihtYWlsY2hpbXBfc3VibWl0dGVkX2VtYWlsPXQpLGNvbnNvbGUubG9nKGksbS5yZXNwb25zZVRleHQpfSxtLm9uZXJyb3I9ZnVuY3Rpb24oKXtjb25zb2xlLmxvZygibWFpbGNoaW1wLmhhbmRsZV9iaWxsaW5nX2VtYWlsLnJlcXVlc3QuZXJyb3IiLG0ucmVzcG9uc2VUZXh0KX0sbS5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLCJhcHBsaWNhdGlvbi9qc29uIiksbS5zZXRSZXF1ZXN0SGVhZGVyKCJBY2NlcHQiLCJhcHBsaWNhdGlvbi9qc29uIiksbS5zZW5kKCksITB9Y2F0Y2goYSl7Y29uc29sZS5sb2coIm1haWxjaGltcC5oYW5kbGVfYmlsbGluZ19lbWFpbC5lcnJvciIsYSksbWFpbGNoaW1wX3N1Ym1pdHRlZF9lbWFpbD0hMX19IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBlLGksYSx0PXtleHRlbmQ6ZnVuY3Rpb24oZSxpKXtmb3IodmFyIGEgaW4gaXx8e30paS5oYXNPd25Qcm9wZXJ0eShhKSYmKGVbYV09aVthXSk7cmV0dXJuIGV9LGdldFF1ZXJ5U3RyaW5nVmFyczpmdW5jdGlvbigpe3ZhciBlPXdpbmRvdy5sb2NhdGlvbi5zZWFyY2h8fCIiLGk9W10sYT17fTtpZigoZT1lLnN1YnN0cigxKSkubGVuZ3RoKWZvcih2YXIgdCBpbiBpPWUuc3BsaXQoIiYiKSl7dmFyIGw9aVt0XTtpZigic3RyaW5nIj09dHlwZW9mIGwpe3ZhciBtPWwuc3BsaXQoIj0iKSxuPW1bMF0scj1tWzFdO24ubGVuZ3RoJiYodm9pZCAwPT09YVtuXSYmKGFbbl09W10pLGFbbl0ucHVzaChyKSl9fXJldHVybiBhfSx1bkVzY2FwZTpmdW5jdGlvbihlKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGUpfSxlc2NhcGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChlKX0sY3JlYXRlRGF0ZTpmdW5jdGlvbihlLGkpe2V8fChlPTApO3ZhciBhPW5ldyBEYXRlLHQ9aT9hLmdldERhdGUoKS1lOmEuZ2V0RGF0ZSgpK2U7cmV0dXJuIGEuc2V0RGF0ZSh0KSxhfSxhcnJheVVuaXF1ZTpmdW5jdGlvbihlKXtmb3IodmFyIGk9ZS5jb25jYXQoKSxhPTA7YTxpLmxlbmd0aDsrK2EpZm9yKHZhciB0PWErMTt0PGkubGVuZ3RoOysrdClpW2FdPT09aVt0XSYmaS5zcGxpY2UodCwxKTtyZXR1cm4gaX0sb2JqZWN0Q29tYmluZVVuaXF1ZTpmdW5jdGlvbihlKXtmb3IodmFyIGk9ZVswXSxhPTE7YTxlLmxlbmd0aDthKyspe3ZhciB0PWVbYV07Zm9yKHZhciBsIGluIHQpaVtsXT10W2xdfXJldHVybiBpfX0sbD0oZT1kb2N1bWVudCxhPWZ1bmN0aW9uKGUsaSx0KXtyZXR1cm4gMT09PWFyZ3VtZW50cy5sZW5ndGg/YS5nZXQoZSk6YS5zZXQoZSxpLHQpfSxhLmdldD1mdW5jdGlvbihpLHQpe3JldHVybiBlLmNvb2tpZSE9PWEuX2NhY2hlU3RyaW5nJiZhLl9wb3B1bGF0ZUNhY2hlKCksbnVsbD09YS5fY2FjaGVbaV0/dDphLl9jYWNoZVtpXX0sYS5kZWZhdWx0cz17cGF0aDoiLyIsc2VjdXJlOiEwLHNhbWVzaXRlOiJzdHJpY3QifSxhLnNldD1mdW5jdGlvbih0LGwsbSl7c3dpdGNoKG09e3BhdGg6bSYmbS5wYXRofHxhLmRlZmF1bHRzLnBhdGgsZG9tYWluOm0mJm0uZG9tYWlufHxhLmRlZmF1bHRzLmRvbWFpbixleHBpcmVzOm0mJm0uZXhwaXJlc3x8YS5kZWZhdWx0cy5leHBpcmVzLHNlY3VyZTptJiZtLnNlY3VyZSE9PWk/bS5zZWN1cmU6YS5kZWZhdWx0cy5zZWN1cmUsc2FtZXNpdGU6bSYmbS5zYW1lc2l0ZXx8YS5kZWZhdWx0cy5zYW1lc2l0ZX0sbD09PWkmJihtLmV4cGlyZXM9LTEpLHR5cGVvZiBtLmV4cGlyZXMpe2Nhc2UibnVtYmVyIjptLmV4cGlyZXM9bmV3IERhdGUoKG5ldyBEYXRlKS5nZXRUaW1lKCkrMWUzKm0uZXhwaXJlcyk7YnJlYWs7Y2FzZSJzdHJpbmciOm0uZXhwaXJlcz1uZXcgRGF0ZShtLmV4cGlyZXMpfXJldHVybiB0PWVuY29kZVVSSUNvbXBvbmVudCh0KSsiPSIrKGwrIiIpLnJlcGxhY2UoL1teISMtK1wtLTo8LVxbXF0tfl0vZyxlbmNvZGVVUklDb21wb25lbnQpLHQrPW0ucGF0aD8iO3BhdGg9IittLnBhdGg6IiIsdCs9bS5kb21haW4/Ijtkb21haW49IittLmRvbWFpbjoiIix0Kz1tLmV4cGlyZXM/IjtleHBpcmVzPSIrbS5leHBpcmVzLnRvR01UU3RyaW5nKCk6IiIsdCs9bS5zZWN1cmU/IjtzZWN1cmUiOiIiLHQrPW0uc2FtZXNpdGU/IjtzYW1lc2l0ZT0iK20uc2FtZXNpdGU6IiIsZS5jb29raWU9dCxhfSxhLmV4cGlyZT1mdW5jdGlvbihlLHQpe3JldHVybiBhLnNldChlLGksdCl9LGEuX3BvcHVsYXRlQ2FjaGU9ZnVuY3Rpb24oKXthLl9jYWNoZT17fTt0cnl7YS5fY2FjaGVTdHJpbmc9ZS5jb29raWU7Zm9yKHZhciB0PWEuX2NhY2hlU3RyaW5nLnNwbGl0KCI7ICIpLGw9MDtsPHQubGVuZ3RoO2wrKyl7dmFyIG09dFtsXS5pbmRleE9mKCI9Iiksbj1kZWNvZGVVUklDb21wb25lbnQodFtsXS5zdWJzdHIoMCxtKSk7bT1kZWNvZGVVUklDb21wb25lbnQodFtsXS5zdWJzdHIobSsxKSksYS5fY2FjaGVbbl09PT1pJiYoYS5fY2FjaGVbbl09bSl9fWNhdGNoKGUpe2NvbnNvbGUubG9nKGUpfX0sYS5lbmFibGVkPWZ1bmN0aW9uKCl7dmFyIGU9IjEiPT09YS5zZXQoImNvb2tpZXMuanMiLCIxIikuZ2V0KCJjb29raWVzLmpzIik7cmV0dXJuIGEuZXhwaXJlKCJjb29raWVzLmpzIiksZX0oKSxhKTttYWlsY2hpbXA9e3N0b3JhZ2U6bCx1dGlsczp0fSxtYWlsY2hpbXBfY2FydD1uZXcgZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbWFpbF90eXBlcz0iaW5wdXRbdHlwZT1lbWFpbF0iLHRoaXMucmVnZXhfZW1haWw9L14oW0EtWmEtejAtOV8rXC1cLl0pK1xAKFtBLVphLXowLTlfXC1cLl0pK1wuKFtBLVphLXpdezIsNH0pJC8sdGhpcy5jdXJyZW50X2VtYWlsPW51bGwsdGhpcy5wcmV2aW91c19lbWFpbD1udWxsLHRoaXMuZXhwaXJlVXNlcj1mdW5jdGlvbigpe3RoaXMuY3VycmVudF9lbWFpbD1udWxsLG1haWxjaGltcF9wdWJsaWNfZGF0YS5hbGxvd2VkX3RvX3NldF9jb29raWVzJiZtYWlsY2hpbXAuc3RvcmFnZS5leHBpcmUoIm1haWxjaGltcC5jYXJ0LmN1cnJlbnRfZW1haWwiKX0sdGhpcy5leHBpcmVTYXZlZD1mdW5jdGlvbigpe21haWxjaGltcF9wdWJsaWNfZGF0YS5hbGxvd2VkX3RvX3NldF9jb29raWVzJiZtYWlsY2hpbXAuc3RvcmFnZS5leHBpcmUoIm1haWxjaGltcC5jYXJ0Lml0ZW1zIil9LHRoaXMuc2V0RW1haWw9ZnVuY3Rpb24oZSl7aWYobWFpbGNoaW1wX3B1YmxpY19kYXRhLmFsbG93ZWRfdG9fc2V0X2Nvb2tpZXMpe2lmKCF0aGlzLnZhbHVlRW1haWwoZSkpcmV0dXJuITE7dGhpcy5zZXRQcmV2aW91c0VtYWlsKHRoaXMuZ2V0RW1haWwoKSksbWFpbGNoaW1wLnN0b3JhZ2Uuc2V0KCJtYWlsY2hpbXAuY2FydC5jdXJyZW50X2VtYWlsIix0aGlzLmN1cnJlbnRfZW1haWw9ZSl9fSx0aGlzLmdldEVtYWlsPWZ1bmN0aW9uKCl7aWYobWFpbGNoaW1wX3B1YmxpY19kYXRhLmFsbG93ZWRfdG9fc2V0X2Nvb2tpZXMpe2lmKHRoaXMuY3VycmVudF9lbWFpbClyZXR1cm4gdGhpcy5jdXJyZW50X2VtYWlsO3ZhciBlPW1haWxjaGltcC5zdG9yYWdlLmdldCgibWFpbGNoaW1wLmNhcnQuY3VycmVudF9lbWFpbCIsITEpO3JldHVybiEoIWV8fCF0aGlzLnZhbHVlRW1haWwoZSkpJiYodGhpcy5jdXJyZW50X2VtYWlsPWUpfX0sdGhpcy5zZXRQcmV2aW91c0VtYWlsPWZ1bmN0aW9uKGUpe2lmKG1haWxjaGltcF9wdWJsaWNfZGF0YS5hbGxvd2VkX3RvX3NldF9jb29raWVzKXJldHVybiEhdGhpcy52YWx1ZUVtYWlsKGUpJiZ2b2lkIG1haWxjaGltcC5zdG9yYWdlLnNldCgibWFpbGNoaW1wLmNhcnQucHJldmlvdXNfZW1haWwiLHRoaXMucHJldmlvdXNfZW1haWw9ZSl9LHRoaXMudmFsdWVFbWFpbD1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5yZWdleF9lbWFpbC50ZXN0KGUpfSx0aGlzfX0oKSxtYWlsY2hpbXBSZWFkeSgoZnVuY3Rpb24oKXtpZihtYWlsY2hpbXBfcHVibGljX2RhdGEuYWxsb3dlZF90b19zZXRfY29va2llcyYmIW1haWxjaGltcF9wdWJsaWNfZGF0YS5kaXNhYmxlX2NhcnRzKXtpZih2b2lkIDA9PT1lKXZhciBlPXtzaXRlX3VybDpkb2N1bWVudC5sb2NhdGlvbi5vcmlnaW4sZGVmYXVsdGVkOiEwLGFqYXhfdXJsOmRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbisiL3dwLWFkbWluP2FkbWluLWFqYXgucGhwIn07dHJ5e3ZhciBpPW1haWxjaGltcC51dGlscy5nZXRRdWVyeVN0cmluZ1ZhcnMoKTt2b2lkIDAhPT1pLm1jX2NhcnRfaWQmJm1haWxjaGltcEdldEN1cnJlbnRVc2VyQnlIYXNoKGkubWNfY2FydF9pZCk7dmFyIGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI21haWxjaGltcF93b29jb21tZXJjZV9uZXdzbGV0dGVyIik7YSYmKGEub25jaGFuZ2U9ZnVuY3Rpb24oKXttYWlsY2hpbXBfc3VibWl0dGVkX2VtYWlsPW51bGwsbWFpbGNoaW1wSGFuZGxlQmlsbGluZ0VtYWlsKCIjYmlsbGluZ19lbWFpbCIpfSksbWFpbGNoaW1wX3VzZXJuYW1lX2VtYWlsPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiN1c2VybmFtZSIpLG1haWxjaGltcF9iaWxsaW5nX2VtYWlsPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNiaWxsaW5nX2VtYWlsIiksbWFpbGNoaW1wX3JlZ2lzdHJhdGlvbl9lbWFpbD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcmVnX2VtYWlsIiksbWFpbGNoaW1wX2JpbGxpbmdfZW1haWwmJihtYWlsY2hpbXBfYmlsbGluZ19lbWFpbC5vbmJsdXI9ZnVuY3Rpb24oKXttYWlsY2hpbXBIYW5kbGVCaWxsaW5nRW1haWwoIiNiaWxsaW5nX2VtYWlsIil9LG1haWxjaGltcF9iaWxsaW5nX2VtYWlsLm9uZm9jdXM9ZnVuY3Rpb24oKXttYWlsY2hpbXBIYW5kbGVCaWxsaW5nRW1haWwoIiNiaWxsaW5nX2VtYWlsIil9KSxtYWlsY2hpbXBfdXNlcm5hbWVfZW1haWwmJihtYWlsY2hpbXBfdXNlcm5hbWVfZW1haWwub25ibHVyPWZ1bmN0aW9uKCl7bWFpbGNoaW1wSGFuZGxlQmlsbGluZ0VtYWlsKCIjdXNlcm5hbWUiKX0sbWFpbGNoaW1wX3VzZXJuYW1lX2VtYWlsLm9uZm9jdXM9ZnVuY3Rpb24oKXttYWlsY2hpbXBIYW5kbGVCaWxsaW5nRW1haWwoIiN1c2VybmFtZSIpfSksbWFpbGNoaW1wX3JlZ2lzdHJhdGlvbl9lbWFpbCYmKG1haWxjaGltcF9yZWdpc3RyYXRpb25fZW1haWwub25ibHVyPWZ1bmN0aW9uKCl7bWFpbGNoaW1wSGFuZGxlQmlsbGluZ0VtYWlsKCIjcmVnX2VtYWlsIil9LG1haWxjaGltcF9yZWdpc3RyYXRpb25fZW1haWwub25mb2N1cz1mdW5jdGlvbigpe21haWxjaGltcEhhbmRsZUJpbGxpbmdFbWFpbCgiI3JlZ19lbWFpbCIpfSl9Y2F0Y2goZSl7Y29uc29sZS5sb2coIm1haWxjaGltcCByZWFkeSBlcnJvciIsZSl9fX0pKTs="}},"time_used":345,"timings":{"blocked":251,"dns":0,"connect":0,"send":0,"wait":94,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/woocommerce-multilingual/res/js/front-scripts.min.js?ver=5.0.2","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.946Z","timestamp":1785148618946,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/woocommerce-multilingual/res/js/front-scripts.min.js?ver=5.0.2 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 344\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:26 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":344,"size_decoded":559,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (344), with no line terminators","md5":"ad0af34ee472b7311217f496c54f44eb","sha1":"b3e6ecf79b7c84e35862d502cf71141a434a0bdc","sha256":"5550f904be1dd8825d113db685b9c92507fa0087d414c6a1f64852d62758c0c4","sha512":"b3e719af32851570873c9292107e03ee4ae686be2c4fe55468f73146f0d0f0139d6f516f79d6a076d40a48df3ebc57da4d5f18556345d76665cb09d1545ac956","ssdeep":"","tlshash":"6de0201e2000eddf1ef3a53cd837fb56302329c2f2642501440356002ebc7ee127256d","first_seen":"2023-03-07T12:02:32Z","last_seen":"2026-08-09T09:41:30.344417Z","times_seen":925,"resource_available":true,"data":"alF1ZXJ5KGZ1bmN0aW9uKCQpe2pRdWVyeShkb2N1bWVudCkub24oImNsaWNrIiwiLndjbWxfcmVtb3ZlZF9jYXJ0X2l0ZW1zX2NsZWFyIixmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCk7alF1ZXJ5LmFqYXgoe3R5cGU6InBvc3QiLHVybDp3b29jb21tZXJjZV9wYXJhbXMuYWpheF91cmwsZGF0YTp7YWN0aW9uOiJ3Y21sX2NhcnRfY2xlYXJfcmVtb3ZlZF9pdGVtcyIsd2NtbF9ub25jZTpqUXVlcnkoIiN3Y21sX2NsZWFyX3JlbW92ZWRfaXRlbXNfbm9uY2UiKS52YWwoKX0sc3VjY2VzczpmdW5jdGlvbihyZXNwb25zZSl7d2luZG93LmxvY2F0aW9uPXdpbmRvdy5sb2NhdGlvbi5ocmVmfX0pfSl9KTs="}},"time_used":365,"timings":{"blocked":269,"dns":0,"connect":0,"send":0,"wait":96,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/uploads/2020/07/sponsorship.png","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.990Z","timestamp":1785148618990,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /wp-content/uploads/2020/07/sponsorship.png HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T10:36:56.414Z","timestamp":1785148616414,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: document\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: none\r\nPriority: u=0, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/html; charset=UTF-8\r\nTransfer-Encoding: chunked\r\nConnection: keep-alive\r\nExpires: Thu, 19 Nov 1981 08:52:00 GMT\r\nCache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0\r\nPragma: no-cache\r\nSet-Cookie: CameFrom=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; Max-Age=0\nPHPSESSID=ejghagf5v1jkn7ncct6uejkkf1; path=/; domain=equinuxglobalassets.com; HttpOnly\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"jQuery","description":"jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.","website":"https://jquery.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery:*:*:*:*:*:*:*:*","icon":"jQuery.svg","categories":["JavaScript libraries"]},{"name":"WooCommerce Multilingual:5.0.2","description":"WooCommerce Multilingual plugin makes it possible to run fully multilingual ecommerce sites using WooCommerce and WPML.","website":"https://wordpress.org/plugins/woocommerce-multilingual","common_platform_enumeration":"","icon":"WooCommerce Multilingual.png","categories":["WordPress plugins","Translation"]},{"name":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"Google Analytics","description":"Google Analytics is a free web analytics service that tracks and reports website traffic.","website":"https://google.com/analytics","common_platform_enumeration":"","icon":"Google Analytics.svg","categories":["Analytics"]},{"name":"Premio Chaty","description":"Chat with your website visitors via their favorite channels with Chaty by Premio.","website":"https://premio.io/downloads/chaty","common_platform_enumeration":"","icon":"Premio.png","categories":["WordPress plugins"]},{"name":"MailChimp","description":"Mailchimp is a marketing automation platform and email marketing service.","website":"https://mailchimp.com","common_platform_enumeration":"cpe:2.3:a:thinkshout:mailchimp:*:*:*:*:*:*:*:*","icon":"mailchimp.svg","categories":["Marketing automation","Email"]},{"name":"Yoast SEO:19.7.1","description":"Yoast SEO is a search engine optimisation plugin for WordPress and other platforms.","website":"https://yoast.com/wordpress/plugins/seo/","common_platform_enumeration":"","icon":"Yoast SEO.png","categories":["SEO","WordPress plugins"]},{"name":"Yoast SEO Premium:19.3","description":"Yoast SEO Premium is a search engine optimisation plugin for WordPress and other platforms.","website":"https://yoast.com/wordpress/plugins/seo/","common_platform_enumeration":"","icon":"Yoast SEO.png","categories":["SEO"]},{"name":"WordPress:6.0.2","description":"WordPress is a free and open-source content management system written in PHP and paired with a MySQL or MariaDB database. Features include a plugin architecture and a template system.","website":"https://wordpress.org","common_platform_enumeration":"cpe:2.3:a:wordpress:wordpress:*:*:*:*:*:*:*:*","icon":"WordPress.svg","categories":["CMS","Blogs"]},{"name":"Divi","description":"Divi is a WordPress Theme and standalone WordPress plugin from Elegant themes that allows users to build websites using the visual drag-and-drop Divi page builder.","website":"https://www.elegantthemes.com/gallery/divi","common_platform_enumeration":"","icon":"Divi.svg","categories":["Page builders","WordPress themes","WordPress plugins"]},{"name":"PHP","description":"PHP is a general-purpose scripting language used for web development.","website":"https://php.net","common_platform_enumeration":"cpe:2.3:a:php:php:*:*:*:*:*:*:*:*","icon":"PHP.svg","categories":["Programming languages"]},{"name":"MailChimp for WooCommerce:2.7.5.01","description":"MailChimp for WooCommerce gives you the ability to automatically sync customer purchase data to your MailChimp account.","website":"https://mailchimp.com/integrations/woocommerce","common_platform_enumeration":"","icon":"mailchimp.svg","categories":["WordPress plugins"]},{"name":"FitVids.JS:4.18.0","description":"jQuery plugin for fluid width video embeds","website":"https://fitvidsjs.com/","common_platform_enumeration":"","icon":"FitVids.JS.png","categories":["Widgets","Video players"]},{"name":"MySQL","description":"MySQL is an open-source relational database management system.","website":"https://mysql.com","common_platform_enumeration":"cpe:2.3:a:mysql:mysql:*:*:*:*:*:*:*:*","icon":"MySQL.svg","categories":["Databases"]},{"name":"WooCommerce:6.9.4","description":"WooCommerce is an open-source ecommerce plugin for WordPress.","website":"https://woocommerce.com","common_platform_enumeration":"","icon":"WooCommerce.svg","categories":["Ecommerce","WordPress plugins"]},{"name":"WooCommerce PayPal Checkout Payment Gateway:2.1.3","description":"WooCommerce PayPal Checkout Payment Gateway is a WordPress plugin which allows you to securely sell your products and subscriptions online using in-context checkout.","website":"https://github.com/woocommerce/woocommerce-gateway-paypal-express-checkout","common_platform_enumeration":"","icon":"WooCommerce PayPal.png","categories":["WordPress plugins"]},{"name":"WPML:4.5.11","description":"WPML plugin makes it possible to build and run fully multilingual WordPress sites.","website":"https://wpml.org/","common_platform_enumeration":"","icon":"WPML.svg","categories":["WordPress plugins","Translation"]},{"name":"Tidio","description":"Tidio is a customer communication product. It provides multi-channel support so users can communicate with customers on the go. Live chat, messenger, or email are all supported.","website":"https://www.tidio.com","common_platform_enumeration":"","icon":"Tidio.svg","categories":["Live chat"]},{"name":"jQuery Migrate:3.3.2","description":"Query Migrate is a javascript library that allows you to preserve the compatibility of your jQuery code developed for versions of jQuery older than 1.9.","website":"https://github.com/jquery/jquery-migrate","common_platform_enumeration":"","icon":"jQuery.svg","categories":["JavaScript libraries"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":303243,"size_decoded":303710,"mime_type":"text/html; charset=UTF-8","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (24590)","md5":"178beffa8e4478042ba54ccf941e089f","sha1":"4d80734eef7966f75eab62213ee3b54e96f67dac","sha256":"045531784ea05d20dbbf2aa70c72281618bf1cd9d00a6661e603af132499ed49","sha512":"1e06574f44704611c01b6511b18d42bcff2e5fc08cd9290e9c6153ec7891c3674c436acd4f53fb5353f738d7ca739359f53f042f7b000b60cb4a0e26d0fb0a3f","ssdeep":"3072:0WMI+qq4+YnjlTwyYrdczE95r7zS8dBs2BEidAmsA2G2AQIL7mxfk0oWD55ZVan:hMIJq4+ts2B6G2AP","tlshash":"c254e69b977d3635334705d9b88633a8799d8033e69118b0bcbd859c8bc2983136b79f","first_seen":"2026-07-27T08:11:28.898224Z","last_seen":"2026-07-27T10:37:50.406435Z","times_seen":3,"resource_available":false,"data":"CiAKPCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuLVVTIj4KPGhlYWQ+Cgk8bWV0YSBjaGFyc2V0PSJVVEYtOCIgLz4KPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4KCTxsaW5rIHJlbD0icGluZ2JhY2siIGhyZWY9Ii94bWxycGMucGhwIiAvPgoKCSA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTmFtZSA9ICdqcyc7Cgk8L3NjcmlwdD4KCQoJPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tIiBjcm9zc29yaWdpbiAvPjxzdHlsZSBpZD0iZXQtYnVpbGRlci1nb29nbGVmb250cy1jYWNoZWQtaW5saW5lIj4vKiBPcmlnaW5hbDogaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJvYm90bzoxMDAsMTAwaXRhbGljLDMwMCwzMDBpdGFsaWMscmVndWxhcixpdGFsaWMsNTAwLDUwMGl0YWxpYyw3MDAsNzAwaXRhbGljLDkwMCw5MDBpdGFsaWN8TW9udHNlcnJhdDoxMDAsMTAwaXRhbGljLDIwMCwyMDBpdGFsaWMsMzAwLDMwMGl0YWxpYyxyZWd1bGFyLGl0YWxpYyw1MDAsNTAwaXRhbGljLDYwMCw2MDBpdGFsaWMsNzAwLDcwMGl0YWxpYyw4MDAsODAwaXRhbGljLDkwMCw5MDBpdGFsaWN8TGF0bzoxMDAsMTAwaXRhbGljLDMwMCwzMDBpdGFsaWMscmVndWxhcixpdGFsaWMsNzAwLDcwMGl0YWxpYyw5MDAsOTAwaXRhbGljJiMwMzg7c3Vic2V0PWxhdGluLGxhdGluLWV4dCYjMDM4O2Rpc3BsYXk9c3dhcCAqLy8qIFVzZXIgQWdlbnQ6IE1vemlsbGEvNS4wIChVbmtub3duOyBMaW51eCB4ODZfNjQpIEFwcGxlV2ViS2l0LzUzOC4xIChLSFRNTCwgbGlrZSBHZWNrbykgU2FmYXJpLzUzOC4xIERhdW0vNC4xICovQGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDEwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dS13NEJNVVRQSGp4c0lQeC1tUENjLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1X3c0Qk1VVFBIanhzSTl3Ml9GUWZvLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNDAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1OHc0Qk1VVFBIanhzQVVpLXYudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA3MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnVfdzRCTVVUUEhqeHNJNXdxX0ZRZm8udHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA5MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnVfdzRCTVVUUEhqeHNJM3dpX0ZRZm8udHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiAxMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnU4dzRCTVVUUEhoMzBBVWktdi50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDMwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dTl3NEJNVVRQSGg3VVNTd2FQSEEudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA0MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnV5dzRCTVVUUEhqeEF3V3cudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA3MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnU5dzRCTVVUUEhoNlVWU3dhUEhBLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1OXc0Qk1VVFBIaDUwWFN3YVBIQS50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDEwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUZqSWcxX2k2dDhrQ0hLbTQ1OVd4N3hRWVhLMHZPb3o2anE2UjhXWFowb3cudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiAyMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVGaklnMV9pNnQ4a0NIS200NTlXeDd4UVlYSzB2T296NmpxeVI5V1haMG93LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcV9wOVdYWjBvdy50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUZqSWcxX2k2dDhrQ0hLbTQ1OVd4N3hRWVhLMHZPb3o2anE2UjlXWFowb3cudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA1MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVGaklnMV9pNnQ4a0NIS200NTlXeDd4UVlYSzB2T296NmpxNVo5V1haMG93LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNjAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTNwNldYWjBvdy50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDcwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUZqSWcxX2k2dDhrQ0hLbTQ1OVd4N3hRWVhLMHZPb3o2anEwTjZXWFowb3cudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA4MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVGaklnMV9pNnQ4a0NIS200NTlXeDd4UVlYSzB2T296NmpxeVI2V1haMG93LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcXcxNldYWjBvdy50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDEwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUhqSWcxX2k2dDhrQ0hLbTQ1MzJWSk90NS1RTkZncEN0cjZYdzNhWDgudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiAyMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVIaklnMV9pNnQ4a0NIS200NTMyVkpPdDUtUU5GZ3BDdnI2SHczYVg4LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3MxNkh3M2FYOC50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUhqSWcxX2k2dDhrQ0hLbTQ1MzJWSk90NS1RTkZncEN0cjZIdzNhWDgudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA1MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVIaklnMV9pNnQ4a0NIS200NTMyVkpPdDUtUU5GZ3BDdFo2SHczYVg4LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNjAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3UxNzN3M2FYOC50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDcwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUhqSWcxX2k2dDhrQ0hLbTQ1MzJWSk90NS1RTkZncEN1TTczdzNhWDgudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA4MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVIaklnMV9pNnQ4a0NIS200NTMyVkpPdDUtUU5GZ3BDdnI3M3czYVg4LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3ZDNzN3M2FYOC50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9pQ25xRXU5MkZyMU11NTFRckV6NGRLZy50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9qQ25xRXU5MkZyMU11NTFUakFTYzBDc0UudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPa0NucUV1OTJGcjFNdTUxeEdJemMudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDUwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPakNucUV1OTJGcjFNdTUxUzdBQ2MwQ3NFLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA3MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2pDbnFFdTkyRnIxTXU1MVR6QmljMENzRS50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9qQ25xRXU5MkZyMU11NTFUTEJDYzBDc0UudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDEwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPa0NucUV1OTJGcjFNbWdWeEdJemMudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDMwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPbENucUV1OTJGcjFNbVNVNWZDaGM5LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA0MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT21DbnFFdTkyRnIxTXU3R3hQLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA1MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2xDbnFFdTkyRnIxTW1FVTlmQ2hjOS50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9sQ25xRXU5MkZyMU1tV1VsZkNoYzkudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDkwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPbENucUV1OTJGcjFNbVlVdGZDaGM5LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO30vKiBVc2VyIEFnZW50OiBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCA2LjE7IFdPVzY0OyBydjoyNy4wKSBHZWNrby8yMDEwMDEwMSBGaXJlZm94LzI3LjAgKi9AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1LXc0Qk1VVFBIanhzSVB4LW1QQ1Eud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiAzMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnVfdzRCTVVUUEhqeHNJOXcyX0ZRZnIud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA0MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnU4dzRCTVVUUEhqeHNBVWktcy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDcwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dV93NEJNVVRQSGp4c0k1d3FfRlFmci53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDkwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dV93NEJNVVRQSGp4c0kzd2lfRlFmci53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDEwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dTh3NEJNVVRQSGgzMEFVaS1zLndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1OXc0Qk1VVFBIaDdVU1N3YVBIdy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dXl3NEJNVVRQSGp4QXdXQS53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDcwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dTl3NEJNVVRQSGg2VVZTd2FQSHcud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA5MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnU5dzRCTVVUUEhoNTBYU3dhUEh3LndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTZSOFdYWjBvQS53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDIwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUZqSWcxX2k2dDhrQ0hLbTQ1OVd4N3hRWVhLMHZPb3o2anF5UjlXWFowb0Eud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiAzMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVGaklnMV9pNnQ4a0NIS200NTlXeDd4UVlYSzB2T296NmpxX3A5V1haMG9BLndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNDAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTZSOVdYWjBvQS53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDUwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUZqSWcxX2k2dDhrQ0hLbTQ1OVd4N3hRWVhLMHZPb3o2anE1WjlXWFowb0Eud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA2MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVGaklnMV9pNnQ4a0NIS200NTlXeDd4UVlYSzB2T296NmpxM3A2V1haMG9BLndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTBONldYWjBvQS53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDgwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUZqSWcxX2k2dDhrQ0hLbTQ1OVd4N3hRWVhLMHZPb3o2anF5UjZXWFowb0Eud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA5MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVGaklnMV9pNnQ4a0NIS200NTlXeDd4UVlYSzB2T296NmpxdzE2V1haMG9BLndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3RyNlh3M2FYdy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDIwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUhqSWcxX2k2dDhrQ0hLbTQ1MzJWSk90NS1RTkZncEN2cjZIdzNhWHcud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiAzMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVIaklnMV9pNnQ4a0NIS200NTMyVkpPdDUtUU5GZ3BDczE2SHczYVh3LndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNDAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3RyNkh3M2FYdy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDUwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUhqSWcxX2k2dDhrQ0hLbTQ1MzJWSk90NS1RTkZncEN0WjZIdzNhWHcud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA2MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVIaklnMV9pNnQ4a0NIS200NTMyVkpPdDUtUU5GZ3BDdTE3M3czYVh3LndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3VNNzN3M2FYdy53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDgwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjI1L0pUVUhqSWcxX2k2dDhrQ0hLbTQ1MzJWSk90NS1RTkZncEN2cjczdzNhWHcud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA5MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YyNS9KVFVIaklnMV9pNnQ4a0NIS200NTMyVkpPdDUtUU5GZ3BDdkM3M3czYVh3LndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiAxMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2lDbnFFdTkyRnIxTXU1MVFyRXo0ZEtRLndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiAzMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2pDbnFFdTkyRnIxTXU1MVRqQVNjMENzSS53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNDAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9rQ25xRXU5MkZyMU11NTF4R0l6US53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9qQ25xRXU5MkZyMU11NTFTN0FDYzBDc0kud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDcwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPakNucUV1OTJGcjFNdTUxVHpCaWMwQ3NJLndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA5MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2pDbnFFdTkyRnIxTXU1MVRMQkNjMENzSS53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9rQ25xRXU5MkZyMU1tZ1Z4R0l6US53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9sQ25xRXU5MkZyMU1tU1U1ZkNoYy0ud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPbUNucUV1OTJGcjFNdTdHeE0ud29mZikgZm9ybWF0KCd3b2ZmJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDUwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPbENucUV1OTJGcjFNbUVVOWZDaGMtLndvZmYpIGZvcm1hdCgnd29mZicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA3MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2xDbnFFdTkyRnIxTW1XVWxmQ2hjLS53b2ZmKSBmb3JtYXQoJ3dvZmYnKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9sQ25xRXU5MkZyMU1tWVV0ZkNoYy0ud29mZikgZm9ybWF0KCd3b2ZmJyk7fS8qIFVzZXIgQWdlbnQ6IE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDYuMzsgcnY6MzkuMCkgR2Vja28vMjAxMDAxMDEgRmlyZWZveC8zOS4wICovQGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDEwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dS13NEJNVVRQSGp4c0lQeC1tUENJLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiAzMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnVfdzRCTVVUUEhqeHNJOXcyX0ZRZnQud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dTh3NEJNVVRQSGp4c0FVaS1xLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnTGF0byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiA3MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9sYXRvL3YyMy9TNnVfdzRCTVVUUEhqeHNJNXdxX0ZRZnQud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDkwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dV93NEJNVVRQSGp4c0kzd2lfRlFmdC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1OHc0Qk1VVFBIaDMwQVVpLXEud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDMwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dTl3NEJNVVRQSGg3VVNTd2FQR1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdMYXRvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2xhdG8vdjIzL1M2dXl3NEJNVVRQSGp4QXdYZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1OXc0Qk1VVFBIaDZVVlN3YVBHUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ0xhdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbGF0by92MjMvUzZ1OXc0Qk1VVFBIaDUwWFN3YVBHUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTZSOFdYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMjAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcXlSOVdYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcV9wOVdYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNDAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTZSOVdYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTVaOVdYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNjAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTNwNldYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcTBONldYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogODAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcXlSNldYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVRmpJZzFfaTZ0OGtDSEttNDU5V3g3eFFZWEswdk9vejZqcXcxNldYWjBwZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3RyNlh3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMjAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3ZyNkh3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3MxNkh3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNDAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3RyNkh3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3RaNkh3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNjAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3UxNzN3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogNzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3VNNzN3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogODAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3ZyNzN3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ01vbnRzZXJyYXQnO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MjUvSlRVSGpJZzFfaTZ0OGtDSEttNDUzMlZKT3Q1LVFORmdwQ3ZDNzN3M2FYby53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogaXRhbGljO2ZvbnQtd2VpZ2h0OiAxMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2lDbnFFdTkyRnIxTXU1MVFyRXo0ZEx3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDMwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPakNucUV1OTJGcjFNdTUxVGpBU2MwQ3NRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBpdGFsaWM7Zm9udC13ZWlnaHQ6IDQwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPa0NucUV1OTJGcjFNdTUxeEdJekkud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9qQ25xRXU5MkZyMU11NTFTN0FDYzBDc1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogNzAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9qQ25xRXU5MkZyMU11NTFUekJpYzBDc1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IGl0YWxpYztmb250LXdlaWdodDogOTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9qQ25xRXU5MkZyMU11NTFUTEJDYzBDc1Eud29mZjIpIGZvcm1hdCgnd29mZjInKTt9QGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6ICdSb2JvdG8nO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXdlaWdodDogMTAwO2ZvbnQtZGlzcGxheTogc3dhcDtzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YzMC9LRk9rQ25xRXU5MkZyMU1tZ1Z4R0l6SS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiAzMDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT2xDbnFFdTkyRnIxTW1TVTVmQ2hjNC53b2ZmMikgZm9ybWF0KCd3b2ZmMicpO31AZm9udC1mYWNlIHtmb250LWZhbWlseTogJ1JvYm90byc7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtd2VpZ2h0OiA0MDA7Zm9udC1kaXNwbGF5OiBzd2FwO3NyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjMwL0tGT21DbnFFdTkyRnIxTXU3R3hLLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDUwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPbENucUV1OTJGcjFNbUVVOWZDaGM0LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDcwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPbENucUV1OTJGcjFNbVdVbGZDaGM0LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fUBmb250LWZhY2Uge2ZvbnQtZmFtaWx5OiAnUm9ib3RvJztmb250LXN0eWxlOiBub3JtYWw7Zm9udC13ZWlnaHQ6IDkwMDtmb250LWRpc3BsYXk6IHN3YXA7c3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MzAvS0ZPbENucUV1OTJGcjFNbVlVdGZDaGM0LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7fTwvc3R5bGU+PG1ldGEgbmFtZT0ncm9ib3RzJyBjb250ZW50PSdpbmRleCwgZm9sbG93LCBtYXgtaW1hZ2UtcHJldmlldzpsYXJnZSwgbWF4LXNuaXBwZXQ6LTEsIG1heC12aWRlby1wcmV2aWV3Oi0xJyAvPgo8bGluayByZWw9ImFsdGVybmF0ZSIgaHJlZmxhbmc9ImVuIiBocmVmPSIvIiAvPgo8bGluayByZWw9ImFsdGVybmF0ZSIgaHJlZmxhbmc9ImNzIiBocmVmPSIvP2xhbmc9Y3MiIC8+CjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmbGFuZz0iZnIiIGhyZWY9Ii8/bGFuZz1mciIgLz4KPGxpbmsgcmVsPSJhbHRlcm5hdGUiIGhyZWZsYW5nPSJkZSIgaHJlZj0iLz9sYW5nPWRlIiAvPgo8bGluayByZWw9ImFsdGVybmF0ZSIgaHJlZmxhbmc9ImVzIiBocmVmPSIvP2xhbmc9ZXMiIC8+CjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmbGFuZz0ieC1kZWZhdWx0IiBocmVmPSIvIiAvPgo8c2NyaXB0PndpbmRvdy5fd2NhID0gd2luZG93Ll93Y2EgfHwgW107PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQkJbGV0IGpxdWVyeVBhcmFtcz1bXSxqUXVlcnk9ZnVuY3Rpb24ocil7cmV0dXJuIGpxdWVyeVBhcmFtcz1bLi4uanF1ZXJ5UGFyYW1zLHJdLGpRdWVyeX0sJD1mdW5jdGlvbihyKXtyZXR1cm4ganF1ZXJ5UGFyYW1zPVsuLi5qcXVlcnlQYXJhbXMscl0sJH07d2luZG93LmpRdWVyeT1qUXVlcnksd2luZG93LiQ9alF1ZXJ5O2xldCBjdXN0b21IZWFkU2NyaXB0cz0hMTtqUXVlcnkuZm49alF1ZXJ5LnByb3RvdHlwZT17fSwkLmZuPWpRdWVyeS5wcm90b3R5cGU9e30salF1ZXJ5Lm5vQ29uZmxpY3Q9ZnVuY3Rpb24ocil7aWYod2luZG93LmpRdWVyeSlyZXR1cm4galF1ZXJ5PXdpbmRvdy5qUXVlcnksJD13aW5kb3cualF1ZXJ5LGN1c3RvbUhlYWRTY3JpcHRzPSEwLGpRdWVyeS5ub0NvbmZsaWN0fSxqUXVlcnkucmVhZHk9ZnVuY3Rpb24ocil7anF1ZXJ5UGFyYW1zPVsuLi5qcXVlcnlQYXJhbXMscl19LCQucmVhZHk9ZnVuY3Rpb24ocil7anF1ZXJ5UGFyYW1zPVsuLi5qcXVlcnlQYXJhbXMscl19LGpRdWVyeS5sb2FkPWZ1bmN0aW9uKHIpe2pxdWVyeVBhcmFtcz1bLi4uanF1ZXJ5UGFyYW1zLHJdfSwkLmxvYWQ9ZnVuY3Rpb24ocil7anF1ZXJ5UGFyYW1zPVsuLi5qcXVlcnlQYXJhbXMscl19LGpRdWVyeS5mbi5yZWFkeT1mdW5jdGlvbihyKXtqcXVlcnlQYXJhbXM9Wy4uLmpxdWVyeVBhcmFtcyxyXX0sJC5mbi5yZWFkeT1mdW5jdGlvbihyKXtqcXVlcnlQYXJhbXM9Wy4uLmpxdWVyeVBhcmFtcyxyXX07PC9zY3JpcHQ+Cgk8IS0tIFRoaXMgc2l0ZSBpcyBvcHRpbWl6ZWQgd2l0aCB0aGUgWW9hc3QgU0VPIFByZW1pdW0gcGx1Z2luIHYxOS4zIChZb2FzdCBTRU8gdjE5LjcuMSkgLSBodHRwczovL3lvYXN0LmNvbS93b3JkcHJlc3MvcGx1Z2lucy9zZW8vIC0tPgoJPHRpdGxlPkVxdWludXhnbG9iYWxhc3NldCAtIEJlc3QgQ3J5cHRvIFNpZ25hbHMgfCBQYWlkIGFuZCBGcmVlPC90aXRsZT4KCTxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJFcXVpbnV4Z2xvYmFsYXNzZXQgLSBUaGUgYmVzdCBjcnlwdG8gc2lnbmFscyBwcm92aWRlciB0aGF0IHdvcmtzIGhpZ2hseSBwcm9mZXNzaW9uYWxseS4gNCB2ZXRlcmFuIGNyeXB0byB0cmFkZXJzIHNoYXJpbmcgdGhlaXIgY3J5cHRvIG1hcmtldCBhbmFseXNpcyBhbmQgY3J5cHRvY3VycmVuY3kgdHJhZGluZyBzaWduYWxzIHdpdGggeW91ISBCaW5hbmNlIGNyeXB0byBzaWduYWxzLCBCaXRNRVggc2lnbmFscywgQnlCaXQgY3J5cHRvIHRyYWRpbmcgc2lnbmFscyIgLz4KCTxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSIvIiAvPgoJPG1ldGEgcHJvcGVydHk9Im9nOmxvY2FsZSIgY29udGVudD0iZW5fVVMiIC8+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0id2Vic2l0ZSIgLz4KCTxtZXRhIHByb3BlcnR5PSJvZzp0aXRsZSIgY29udGVudD0iSG9tZSIgLz4KCTxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Ii8iIC8+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJFcXVpbnV4Z2xvYmFsYXNzZXQiIC8+Cgk8bWV0YSBwcm9wZXJ0eT0iYXJ0aWNsZTpwdWJsaXNoZXIiIGNvbnRlbnQ9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9FcXVpbnV4Z2xvYmFsYXNzZXQvIiAvPgoJPG1ldGEgcHJvcGVydHk9ImFydGljbGU6bW9kaWZpZWRfdGltZSIgY29udGVudD0iMjAyMi0wOC0yMlQwODo1NToyNSswMDowMCIgLz4KCTxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE5LzA3L0xvZ28taGxhdm5pzIEtc8yMZWRhzIEtYmV6LXBvemFkacyBLTEucG5nIiAvPgoJPG1ldGEgcHJvcGVydHk9Im9nOmltYWdlOndpZHRoIiBjb250ZW50PSI0NzAiIC8+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2U6aGVpZ2h0IiBjb250ZW50PSIyNDYiIC8+Cgk8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2U6dHlwZSIgY29udGVudD0iaW1hZ2UvcG5nIiAvPgoJPG1ldGEgbmFtZT0idHdpdHRlcjpjYXJkIiBjb250ZW50PSJzdW1tYXJ5X2xhcmdlX2ltYWdlIiAvPgoJPG1ldGEgbmFtZT0idHdpdHRlcjpzaXRlIiBjb250ZW50PSJAX01DUF9zaWduYWxzIiAvPgoJPG1ldGEgbmFtZT0idHdpdHRlcjpsYWJlbDEiIGNvbnRlbnQ9IkVzdC4gcmVhZGluZyB0aW1lIiAvPgoJPG1ldGEgbmFtZT0idHdpdHRlcjpkYXRhMSIgY29udGVudD0iMTggbWludXRlcyIgLz4KCTxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiIgY2xhc3M9InlvYXN0LXNjaGVtYS1ncmFwaCI+eyJAY29udGV4dCI6Imh0dHBzOi8vc2NoZW1hLm9yZyIsIkBncmFwaCI6W3siQHR5cGUiOiJXZWJQYWdlIiwiQGlkIjoiLyIsInVybCI6Ii8iLCJuYW1lIjoiRXF1aW51eGdsb2JhbGFzc2V0IC0gQmVzdCBDcnlwdG8gU2lnbmFscyB8IFBhaWQgYW5kIEZyZWUiLCJpc1BhcnRPZiI6eyJAaWQiOiIvI3dlYnNpdGUifSwiYWJvdXQiOnsiQGlkIjoiLyNvcmdhbml6YXRpb24ifSwiZGF0ZVB1Ymxpc2hlZCI6IjIwMTgtMDktMTBUMDc6MDM6MDIrMDA6MDAiLCJkYXRlTW9kaWZpZWQiOiIyMDIyLTA4LTIyVDA4OjU1OjI1KzAwOjAwIiwiZGVzY3JpcHRpb24iOiJFcXVpbnV4Z2xvYmFsYXNzZXQgLSBUaGUgYmVzdCBjcnlwdG8gc2lnbmFscyBwcm92aWRlciB0aGF0IHdvcmtzIGhpZ2hseSBwcm9mZXNzaW9uYWxseS4gNCB2ZXRlcmFuIGNyeXB0byB0cmFkZXJzIHNoYXJpbmcgdGhlaXIgY3J5cHRvIG1hcmtldCBhbmFseXNpcyBhbmQgY3J5cHRvY3VycmVuY3kgdHJhZGluZyBzaWduYWxzIHdpdGggeW91ISBCaW5hbmNlIGNyeXB0byBzaWduYWxzLCBCaXRNRVggc2lnbmFscywgQnlCaXQgY3J5cHRvIHRyYWRpbmcgc2lnbmFscyIsImJyZWFkY3J1bWIiOnsiQGlkIjoiLyNicmVhZGNydW1iIn0sImluTGFuZ3VhZ2UiOiJlbi1VUyIsInBvdGVudGlhbEFjdGlvbiI6W3siQHR5cGUiOiJSZWFkQWN0aW9uIiwidGFyZ2V0IjpbIi8iXX1dfSx7IkB0eXBlIjoiQnJlYWRjcnVtYkxpc3QiLCJAaWQiOiIvI2JyZWFkY3J1bWIiLCJpdGVtTGlzdEVsZW1lbnQiOlt7IkB0eXBlIjoiTGlzdEl0ZW0iLCJwb3NpdGlvbiI6MSwibmFtZSI6IkRvbcWvIn1dfSx7IkB0eXBlIjoiV2ViU2l0ZSIsIkBpZCI6Ii8jd2Vic2l0ZSIsInVybCI6Ii8iLCJuYW1lIjoiRXF1aW51eGdsb2JhbGFzc2V0IiwiZGVzY3JpcHRpb24iOiJCaW5hbmNlLCBCaXRtZXggJmFtcDsgQnliaXQgQ3J5cHRvIFRyYWRpbmcgU2lnbmFscyB8IEJlc3QgQ3J5cHRvIFNpZ25hbHMgUHJvdmlkZXIiLCJwdWJsaXNoZXIiOnsiQGlkIjoiLyNvcmdhbml6YXRpb24ifSwicG90ZW50aWFsQWN0aW9uIjpbeyJAdHlwZSI6IlNlYXJjaEFjdGlvbiIsInRhcmdldCI6eyJAdHlwZSI6IkVudHJ5UG9pbnQiLCJ1cmxUZW1wbGF0ZSI6Ii8/cz17c2VhcmNoX3Rlcm1fc3RyaW5nfSJ9LCJxdWVyeS1pbnB1dCI6InJlcXVpcmVkIG5hbWU9c2VhcmNoX3Rlcm1fc3RyaW5nIn1dLCJpbkxhbmd1YWdlIjoiZW4tVVMifSx7IkB0eXBlIjoiT3JnYW5pemF0aW9uIiwiQGlkIjoiLyNvcmdhbml6YXRpb24iLCJuYW1lIjoiRXF1aW51eGdsb2JhbGFzc2V0IiwidXJsIjoiLyIsInNhbWVBcyI6WyJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL0VxdWludXhnbG9iYWxhc3NldC8iLCJodHRwczovL215LmxpbmtlZGluLmNvbS9jb21wYW55L0VxdWludXhnbG9iYWxhc3NldCIsImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2NoYW5uZWwvVUNESlpBc3g2QjRYT2tWMTJ5aW1VVmdRIiwiaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL015Y3J5cHRvcGFyYWRpc2UvIiwiaHR0cHM6Ly90d2l0dGVyLmNvbS9fTUNQX3NpZ25hbHMiXSwibG9nbyI6eyJAdHlwZSI6IkltYWdlT2JqZWN0IiwiaW5MYW5ndWFnZSI6ImVuLVVTIiwiQGlkIjoiLyMvc2NoZW1hL2xvZ28vaW1hZ2UvIiwidXJsIjoiL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE4LzA5L0xvZ28taGxhdm5pzIEtc8yMZWRhzIEtYmV6LXBvemFkacyBLnBuZyIsImNvbnRlbnRVcmwiOiIvd3AtY29udGVudC91cGxvYWRzLzIwMTgvMDkvTG9nby1obGF2bmnMgS1zzIxlZGHMgS1iZXotcG96YWRpzIEucG5nIiwid2lkdGgiOjIzNjMsImhlaWdodCI6NzQ1LCJjYXB0aW9uIjoiRXF1aW51eGdsb2JhbGFzc2V0In0sImltYWdlIjp7IkBpZCI6Ii8jL3NjaGVtYS9sb2dvL2ltYWdlLyJ9fV19PC9zY3JpcHQ+Cgk8bWV0YSBuYW1lPSJtc3ZhbGlkYXRlLjAxIiBjb250ZW50PSJFNkI2Qzg5QkVFMDExMUE2QjhDMzEwNzMzODQxRTJBRCIgLz4KCTxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0iNVZFUFhyMW85QWtkWncyVjRTN0MtVV9ZZk9YdzBOZ1FHME8tVGNwNW9kcyIgLz4KCTwhLS0gLyBZb2FzdCBTRU8gUHJlbWl1bSBwbHVnaW4uIC0tPgoKCjxsaW5rIHJlbD0ibWFuaWZlc3QiIGhyZWY9Ii9wd2EtbWFuaWZlc3QuanNvbiI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtc2NyZWVuc2hvdHMtcHJlY29tcG9zZWQiIHNpemVzPSI1MTJ4NTEyIiBocmVmPSIvd3AtY29udGVudC9wbHVnaW5zL3B3YS1mb3Itd3AvaW1hZ2VzL2xvZ28tNTEyeDUxMi5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24tcHJlY29tcG9zZWQiIHNpemVzPSIxOTJ4MTkyIiBocmVmPSIvd3AtY29udGVudC9wbHVnaW5zL3B3YS1mb3Itd3AvaW1hZ2VzL2xvZ28ucG5nIj4KPGxpbmsgcmVsPSdkbnMtcHJlZmV0Y2gnIGhyZWY9Jy8vc3RhdHMud3AuY29tJyAvPgo8bGluayByZWw9ImFsdGVybmF0ZSIgdHlwZT0iYXBwbGljYXRpb24vcnNzK3htbCIgdGl0bGU9IkVxdWludXhnbG9iYWxhc3NldCAmcmFxdW87IEZlZWQiIGhyZWY9Ii9mZWVkLyIgLz4KPGxpbmsgcmVsPSJhbHRlcm5hdGUiIHR5cGU9ImFwcGxpY2F0aW9uL3Jzcyt4bWwiIHRpdGxlPSJFcXVpbnV4Z2xvYmFsYXNzZXQgJnJhcXVvOyBDb21tZW50cyBGZWVkIiBocmVmPSIvY29tbWVudHMvZmVlZC8iIC8+CjxtZXRhIGNvbnRlbnQ9IkRpdmkgQ2hpbGQgdi40LjQuOC4xNTkyNzU4MTM3IiBuYW1lPSJnZW5lcmF0b3IiLz48c3R5bGUgaWQ9J3dwLWJsb2NrLWxpYnJhcnktdGhlbWUtaW5saW5lLWNzcycgdHlwZT0ndGV4dC9jc3MnPgoud3AtYmxvY2stYXVkaW8gZmlnY2FwdGlvbntjb2xvcjojNTU1O2ZvbnQtc2l6ZToxM3B4O3RleHQtYWxpZ246Y2VudGVyfS5pcy1kYXJrLXRoZW1lIC53cC1ibG9jay1hdWRpbyBmaWdjYXB0aW9ue2NvbG9yOmhzbGEoMCwwJSwxMDAlLC42NSl9LndwLWJsb2NrLWNvZGV7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtZmFtaWx5Ok1lbmxvLENvbnNvbGFzLG1vbmFjbyxtb25vc3BhY2U7cGFkZGluZzouOGVtIDFlbX0ud3AtYmxvY2stZW1iZWQgZmlnY2FwdGlvbntjb2xvcjojNTU1O2ZvbnQtc2l6ZToxM3B4O3RleHQtYWxpZ246Y2VudGVyfS5pcy1kYXJrLXRoZW1lIC53cC1ibG9jay1lbWJlZCBmaWdjYXB0aW9ue2NvbG9yOmhzbGEoMCwwJSwxMDAlLC42NSl9LmJsb2Nrcy1nYWxsZXJ5LWNhcHRpb257Y29sb3I6IzU1NTtmb250LXNpemU6MTNweDt0ZXh0LWFsaWduOmNlbnRlcn0uaXMtZGFyay10aGVtZSAuYmxvY2tzLWdhbGxlcnktY2FwdGlvbntjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNjUpfS53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9ue2NvbG9yOiM1NTU7Zm9udC1zaXplOjEzcHg7dGV4dC1hbGlnbjpjZW50ZXJ9LmlzLWRhcmstdGhlbWUgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb257Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjY1KX0ud3AtYmxvY2stcHVsbHF1b3Rle2JvcmRlci10b3A6NHB4IHNvbGlkO2JvcmRlci1ib3R0b206NHB4IHNvbGlkO21hcmdpbi1ib3R0b206MS43NWVtO2NvbG9yOmN1cnJlbnRDb2xvcn0ud3AtYmxvY2stcHVsbHF1b3RlX19jaXRhdGlvbiwud3AtYmxvY2stcHVsbHF1b3RlIGNpdGUsLndwLWJsb2NrLXB1bGxxdW90ZSBmb290ZXJ7Y29sb3I6Y3VycmVudENvbG9yO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LXNpemU6LjgxMjVlbTtmb250LXN0eWxlOm5vcm1hbH0ud3AtYmxvY2stcXVvdGV7Ym9yZGVyLWxlZnQ6LjI1ZW0gc29saWQ7bWFyZ2luOjAgMCAxLjc1ZW07cGFkZGluZy1sZWZ0OjFlbX0ud3AtYmxvY2stcXVvdGUgY2l0ZSwud3AtYmxvY2stcXVvdGUgZm9vdGVye2NvbG9yOmN1cnJlbnRDb2xvcjtmb250LXNpemU6LjgxMjVlbTtwb3NpdGlvbjpyZWxhdGl2ZTtmb250LXN0eWxlOm5vcm1hbH0ud3AtYmxvY2stcXVvdGUuaGFzLXRleHQtYWxpZ24tcmlnaHR7Ym9yZGVyLWxlZnQ6bm9uZTtib3JkZXItcmlnaHQ6LjI1ZW0gc29saWQ7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDoxZW19LndwLWJsb2NrLXF1b3RlLmhhcy10ZXh0LWFsaWduLWNlbnRlcntib3JkZXI6bm9uZTtwYWRkaW5nLWxlZnQ6MH0ud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2UsLndwLWJsb2NrLXF1b3RlLmlzLXN0eWxlLWxhcmdlLC53cC1ibG9jay1xdW90ZS5pcy1zdHlsZS1wbGFpbntib3JkZXI6bm9uZX0ud3AtYmxvY2stc2VhcmNoIC53cC1ibG9jay1zZWFyY2hfX2xhYmVse2ZvbnQtd2VpZ2h0OjcwMH06d2hlcmUoLndwLWJsb2NrLWdyb3VwLmhhcy1iYWNrZ3JvdW5kKXtwYWRkaW5nOjEuMjVlbSAyLjM3NWVtfS53cC1ibG9jay1zZXBhcmF0b3IuaGFzLWNzcy1vcGFjaXR5e29wYWNpdHk6LjR9LndwLWJsb2NrLXNlcGFyYXRvcntib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjJweCBzb2xpZDttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfS53cC1ibG9jay1zZXBhcmF0b3IuaGFzLWFscGhhLWNoYW5uZWwtb3BhY2l0eXtvcGFjaXR5OjF9LndwLWJsb2NrLXNlcGFyYXRvcjpub3QoLmlzLXN0eWxlLXdpZGUpOm5vdCguaXMtc3R5bGUtZG90cyl7d2lkdGg6MTAwcHh9LndwLWJsb2NrLXNlcGFyYXRvci5oYXMtYmFja2dyb3VuZDpub3QoLmlzLXN0eWxlLWRvdHMpe2JvcmRlci1ib3R0b206bm9uZTtoZWlnaHQ6MXB4fS53cC1ibG9jay1zZXBhcmF0b3IuaGFzLWJhY2tncm91bmQ6bm90KC5pcy1zdHlsZS13aWRlKTpub3QoLmlzLXN0eWxlLWRvdHMpe2hlaWdodDoycHh9LndwLWJsb2NrLXRhYmxlIHRoZWFke2JvcmRlci1ib3R0b206M3B4IHNvbGlkfS53cC1ibG9jay10YWJsZSB0Zm9vdHtib3JkZXItdG9wOjNweCBzb2xpZH0ud3AtYmxvY2stdGFibGUgdGQsLndwLWJsb2NrLXRhYmxlIHRoe3BhZGRpbmc6LjVlbTtib3JkZXI6MXB4IHNvbGlkO3dvcmQtYnJlYWs6bm9ybWFsfS53cC1ibG9jay10YWJsZSBmaWdjYXB0aW9ue2NvbG9yOiM1NTU7Zm9udC1zaXplOjEzcHg7dGV4dC1hbGlnbjpjZW50ZXJ9LmlzLWRhcmstdGhlbWUgLndwLWJsb2NrLXRhYmxlIGZpZ2NhcHRpb257Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjY1KX0ud3AtYmxvY2stdmlkZW8gZmlnY2FwdGlvbntjb2xvcjojNTU1O2ZvbnQtc2l6ZToxM3B4O3RleHQtYWxpZ246Y2VudGVyfS5pcy1kYXJrLXRoZW1lIC53cC1ibG9jay12aWRlbyBmaWdjYXB0aW9ue2NvbG9yOmhzbGEoMCwwJSwxMDAlLC42NSl9LndwLWJsb2NrLXRlbXBsYXRlLXBhcnQuaGFzLWJhY2tncm91bmR7cGFkZGluZzoxLjI1ZW0gMi4zNzVlbTttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowfQo8L3N0eWxlPgogPHN0eWxlPgoKIAoudGFibGUgCnsKCXdpZHRoOjEwMCU7CglmbG9hdDpsZWZ0OwoJcGFkZGluZy1ib3R0b206MjBweDsKfQoKLnRhYmxlIC50dXJlCnsKIAoJCgl3aWR0aDogMTAwJTsKaGVpZ2h0OiAxMDAlOwptaW4taGVpZ2h0OiAyMzBweDsKb3ZlcmZsb3c6IGhpZGRlbjsKICAgIG92ZXJmbG93LXg6IGhpZGRlbjsKICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKZmxvYXQ6IGxlZnQ7CmRpc3BsYXk6IGJsb2NrOwpiYWNrZ3JvdW5kOiAjMjEwZjU2Owpib3JkZXItcmFkaXVzOiA1cHg7CiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHB4OwogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDIwcHg7CiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMjBweDsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDIwcHg7CnBhZGRpbmctYm90dG9tOiAyMHB4OwpwYWRkaW5nLXRvcDogMTVweDsKfQoKLnRhYmxlIC50dXJlIC50dXJlaGVhZAp7CgkgCgljb2xvcjojZmZmZmZmOwoJcGFkZGluZzogMTBweCAwcHg7Cglmb250LXNpemU6MjJweDsKCWZvbnQtd2VpZ2h0OiBib2xkOwoJdGV4dC1hbGlnbjpjZW50ZXI7CgkKCWZvbnQtZmFtaWx5OiAnUGxheScsIHNhbnMtc2VyaWY7Cn0KCgogLnRhYmxlIC50dXJlIHRhYmxlIHRyOm50aC1jaGlsZChvZGQpCnsKCWZvbnQtZmFtaWx5OidPcGVuIFNhbnMnLCBzYW5zLXNlcmlmOwoJCWZvbnQtc2l6ZToxOHB4OwoJICAKCWJhY2tncm91bmQ6IzNmN2NiYzsKCQp9CgoudGFibGUgLnR1cmUgdGFibGUgdHIgdGQKewoJY29sb3I6ICNmZmZmZmY7CiAgICBwYWRkaW5nLXRvcDogMThweDsKICAgIGZvbnQtc2l6ZTogMTZweDsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjgyMTgyOwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjgyMTgyOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgcGFkZGluZy1ib3R0b206IDE4cHg7CiAgIAogICAgICBmb250LWZhbWlseTogJ1JhbGV3YXknLCBzYW5zLXNlcmlmOwp9CiAKPC9zdHlsZT4KCgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdtZWRpYWVsZW1lbnQtY3NzJyAgaHJlZj0nL3dwLWluY2x1ZGVzL2pzL21lZGlhZWxlbWVudC9tZWRpYWVsZW1lbnRwbGF5ZXItbGVnYWN5Lm1pbi5jc3M/dmVyPTQuMi4xNicgdHlwZT0ndGV4dC9jc3MnIG1lZGlhPSdhbGwnIC8+CjxsaW5rIHJlbD0nc3R5bGVzaGVldCcgaWQ9J3dwLW1lZGlhZWxlbWVudC1jc3MnICBocmVmPScvd3AtaW5jbHVkZXMvanMvbWVkaWFlbGVtZW50L3dwLW1lZGlhZWxlbWVudC5taW4uY3NzP3Zlcj02LjAuMicgdHlwZT0ndGV4dC9jc3MnIG1lZGlhPSdhbGwnIC8+CjxsaW5rIHJlbD0nc3R5bGVzaGVldCcgaWQ9J3djLWJsb2Nrcy12ZW5kb3JzLXN0eWxlLWNzcycgIGhyZWY9Jy93cC1jb250ZW50L3BsdWdpbnMvd29vLWd1dGVuYmVyZy1wcm9kdWN0cy1ibG9jay9idWlsZC93Yy1ibG9ja3MtdmVuZG9ycy1zdHlsZS5jc3M/dmVyPTguNi4wJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nd2MtYmxvY2tzLXN0eWxlLWNzcycgIGhyZWY9Jy93cC1jb250ZW50L3BsdWdpbnMvd29vLWd1dGVuYmVyZy1wcm9kdWN0cy1ibG9jay9idWlsZC93Yy1ibG9ja3Mtc3R5bGUuY3NzP3Zlcj04LjYuMCcgdHlwZT0ndGV4dC9jc3MnIG1lZGlhPSdhbGwnIC8+CjxzdHlsZSBpZD0nZ2xvYmFsLXN0eWxlcy1pbmxpbmUtY3NzJyB0eXBlPSd0ZXh0L2Nzcyc+CmJvZHl7LS13cC0tcHJlc2V0LS1jb2xvci0tYmxhY2s6ICMwMDAwMDA7LS13cC0tcHJlc2V0LS1jb2xvci0tY3lhbi1ibHVpc2gtZ3JheTogI2FiYjhjMzstLXdwLS1wcmVzZXQtLWNvbG9yLS13aGl0ZTogI2ZmZmZmZjstLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLXBpbms6ICNmNzhkYTc7LS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcmVkOiAjY2YyZTJlOy0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLW9yYW5nZTogI2ZmNjkwMDstLXdwLS1wcmVzZXQtLWNvbG9yLS1sdW1pbm91cy12aXZpZC1hbWJlcjogI2ZjYjkwMDstLXdwLS1wcmVzZXQtLWNvbG9yLS1saWdodC1ncmVlbi1jeWFuOiAjN2JkY2I1Oy0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLWdyZWVuLWN5YW46ICMwMGQwODQ7LS13cC0tcHJlc2V0LS1jb2xvci0tcGFsZS1jeWFuLWJsdWU6ICM4ZWQxZmM7LS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtY3lhbi1ibHVlOiAjMDY5M2UzOy0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLXB1cnBsZTogIzliNTFlMDstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS12aXZpZC1jeWFuLWJsdWUtdG8tdml2aWQtcHVycGxlOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYmEoNiwxNDcsMjI3LDEpIDAlLHJnYigxNTUsODEsMjI0KSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1saWdodC1ncmVlbi1jeWFuLXRvLXZpdmlkLWdyZWVuLWN5YW46IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDEyMiwyMjAsMTgwKSAwJSxyZ2IoMCwyMDgsMTMwKSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy12aXZpZC1hbWJlci10by1sdW1pbm91cy12aXZpZC1vcmFuZ2U6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiYSgyNTIsMTg1LDAsMSkgMCUscmdiYSgyNTUsMTA1LDAsMSkgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbHVtaW5vdXMtdml2aWQtb3JhbmdlLXRvLXZpdmlkLXJlZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2JhKDI1NSwxMDUsMCwxKSAwJSxyZ2IoMjA3LDQ2LDQ2KSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS12ZXJ5LWxpZ2h0LWdyYXktdG8tY3lhbi1ibHVpc2gtZ3JheTogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjM4LDIzOCwyMzgpIDAlLHJnYigxNjksMTg0LDE5NSkgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tY29vbC10by13YXJtLXNwZWN0cnVtOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYig3NCwyMzQsMjIwKSAwJSxyZ2IoMTUxLDEyMCwyMDkpIDIwJSxyZ2IoMjA3LDQyLDE4NikgNDAlLHJnYigyMzgsNDQsMTMwKSA2MCUscmdiKDI1MSwxMDUsOTgpIDgwJSxyZ2IoMjU0LDI0OCw3NikgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tYmx1c2gtbGlnaHQtcHVycGxlOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTUsMjA2LDIzNikgMCUscmdiKDE1MiwxNTAsMjQwKSAxMDAlKTstLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1ibHVzaC1ib3JkZWF1eDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMjU0LDIwNSwxNjUpIDAlLHJnYigyNTQsNDUsNDUpIDUwJSxyZ2IoMTA3LDAsNjIpIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLWx1bWlub3VzLWR1c2s6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1NSwyMDMsMTEyKSAwJSxyZ2IoMTk5LDgxLDE5MikgNTAlLHJnYig2NSw4OCwyMDgpIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLXBhbGUtb2NlYW46IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1NSwyNDUsMjAzKSAwJSxyZ2IoMTgyLDIyNywyMTIpIDUwJSxyZ2IoNTEsMTY3LDE4MSkgMTAwJSk7LS13cC0tcHJlc2V0LS1ncmFkaWVudC0tZWxlY3RyaWMtZ3Jhc3M6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDIwMiwyNDgsMTI4KSAwJSxyZ2IoMTEzLDIwNiwxMjYpIDEwMCUpOy0td3AtLXByZXNldC0tZ3JhZGllbnQtLW1pZG5pZ2h0OiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyLDMsMTI5KSAwJSxyZ2IoNDAsMTE2LDI1MikgMTAwJSk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1kYXJrLWdyYXlzY2FsZTogdXJsKCcjd3AtZHVvdG9uZS1kYXJrLWdyYXlzY2FsZScpOy0td3AtLXByZXNldC0tZHVvdG9uZS0tZ3JheXNjYWxlOiB1cmwoJyN3cC1kdW90b25lLWdyYXlzY2FsZScpOy0td3AtLXByZXNldC0tZHVvdG9uZS0tcHVycGxlLXllbGxvdzogdXJsKCcjd3AtZHVvdG9uZS1wdXJwbGUteWVsbG93Jyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1ibHVlLXJlZDogdXJsKCcjd3AtZHVvdG9uZS1ibHVlLXJlZCcpOy0td3AtLXByZXNldC0tZHVvdG9uZS0tbWlkbmlnaHQ6IHVybCgnI3dwLWR1b3RvbmUtbWlkbmlnaHQnKTstLXdwLS1wcmVzZXQtLWR1b3RvbmUtLW1hZ2VudGEteWVsbG93OiB1cmwoJyN3cC1kdW90b25lLW1hZ2VudGEteWVsbG93Jyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1wdXJwbGUtZ3JlZW46IHVybCgnI3dwLWR1b3RvbmUtcHVycGxlLWdyZWVuJyk7LS13cC0tcHJlc2V0LS1kdW90b25lLS1ibHVlLW9yYW5nZTogdXJsKCcjd3AtZHVvdG9uZS1ibHVlLW9yYW5nZScpOy0td3AtLXByZXNldC0tZm9udC1zaXplLS1zbWFsbDogMTNweDstLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0tbWVkaXVtOiAyMHB4Oy0td3AtLXByZXNldC0tZm9udC1zaXplLS1sYXJnZTogMzZweDstLXdwLS1wcmVzZXQtLWZvbnQtc2l6ZS0teC1sYXJnZTogNDJweDt9Ym9keSB7IG1hcmdpbjogMDsgfS53cC1zaXRlLWJsb2NrcyA+IC5hbGlnbmxlZnQgeyBmbG9hdDogbGVmdDsgbWFyZ2luLXJpZ2h0OiAyZW07IH0ud3Atc2l0ZS1ibG9ja3MgPiAuYWxpZ25yaWdodCB7IGZsb2F0OiByaWdodDsgbWFyZ2luLWxlZnQ6IDJlbTsgfS53cC1zaXRlLWJsb2NrcyA+IC5hbGlnbmNlbnRlciB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9Lmhhcy1ibGFjay1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWJsYWNrKSAhaW1wb3J0YW50O30uaGFzLWN5YW4tYmx1aXNoLWdyYXktY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1jeWFuLWJsdWlzaC1ncmF5KSAhaW1wb3J0YW50O30uaGFzLXdoaXRlLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0td2hpdGUpICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1waW5rLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tcGFsZS1waW5rKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLXJlZC1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLXJlZCkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy12aXZpZC1vcmFuZ2UtY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1sdW1pbm91cy12aXZpZC1vcmFuZ2UpICFpbXBvcnRhbnQ7fS5oYXMtbHVtaW5vdXMtdml2aWQtYW1iZXItY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1sdW1pbm91cy12aXZpZC1hbWJlcikgIWltcG9ydGFudDt9Lmhhcy1saWdodC1ncmVlbi1jeWFuLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbGlnaHQtZ3JlZW4tY3lhbikgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1ncmVlbi1jeWFuLWNvbG9ye2NvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtZ3JlZW4tY3lhbikgIWltcG9ydGFudDt9Lmhhcy1wYWxlLWN5YW4tYmx1ZS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtY3lhbi1ibHVlKSAhaW1wb3J0YW50O30uaGFzLXZpdmlkLWN5YW4tYmx1ZS1jb2xvcntjb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLWN5YW4tYmx1ZSkgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1wdXJwbGUtY29sb3J7Y29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1wdXJwbGUpICFpbXBvcnRhbnQ7fS5oYXMtYmxhY2stYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tYmxhY2spICFpbXBvcnRhbnQ7fS5oYXMtY3lhbi1ibHVpc2gtZ3JheS1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1jeWFuLWJsdWlzaC1ncmF5KSAhaW1wb3J0YW50O30uaGFzLXdoaXRlLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXdoaXRlKSAhaW1wb3J0YW50O30uaGFzLXBhbGUtcGluay1iYWNrZ3JvdW5kLWNvbG9ye2JhY2tncm91bmQtY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLXBpbmspICFpbXBvcnRhbnQ7fS5oYXMtdml2aWQtcmVkLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLXJlZCkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy12aXZpZC1vcmFuZ2UtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtb3JhbmdlKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLWFtYmVyLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLWFtYmVyKSAhaW1wb3J0YW50O30uaGFzLWxpZ2h0LWdyZWVuLWN5YW4tYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbGlnaHQtZ3JlZW4tY3lhbikgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1ncmVlbi1jeWFuLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLWdyZWVuLWN5YW4pICFpbXBvcnRhbnQ7fS5oYXMtcGFsZS1jeWFuLWJsdWUtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tcGFsZS1jeWFuLWJsdWUpICFpbXBvcnRhbnQ7fS5oYXMtdml2aWQtY3lhbi1ibHVlLWJhY2tncm91bmQtY29sb3J7YmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLWN5YW4tYmx1ZSkgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1wdXJwbGUtYmFja2dyb3VuZC1jb2xvcntiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tdml2aWQtcHVycGxlKSAhaW1wb3J0YW50O30uaGFzLWJsYWNrLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1ibGFjaykgIWltcG9ydGFudDt9Lmhhcy1jeWFuLWJsdWlzaC1ncmF5LWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1jeWFuLWJsdWlzaC1ncmF5KSAhaW1wb3J0YW50O30uaGFzLXdoaXRlLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS13aGl0ZSkgIWltcG9ydGFudDt9Lmhhcy1wYWxlLXBpbmstYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXBhbGUtcGluaykgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1yZWQtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLXJlZCkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy12aXZpZC1vcmFuZ2UtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWx1bWlub3VzLXZpdmlkLW9yYW5nZSkgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy12aXZpZC1hbWJlci1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbHVtaW5vdXMtdml2aWQtYW1iZXIpICFpbXBvcnRhbnQ7fS5oYXMtbGlnaHQtZ3JlZW4tY3lhbi1ib3JkZXItY29sb3J7Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbGlnaHQtZ3JlZW4tY3lhbikgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1ncmVlbi1jeWFuLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS12aXZpZC1ncmVlbi1jeWFuKSAhaW1wb3J0YW50O30uaGFzLXBhbGUtY3lhbi1ibHVlLWJvcmRlci1jb2xvcntib3JkZXItY29sb3I6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1wYWxlLWN5YW4tYmx1ZSkgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1jeWFuLWJsdWUtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLWN5YW4tYmx1ZSkgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1wdXJwbGUtYm9yZGVyLWNvbG9ye2JvcmRlci1jb2xvcjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXZpdmlkLXB1cnBsZSkgIWltcG9ydGFudDt9Lmhhcy12aXZpZC1jeWFuLWJsdWUtdG8tdml2aWQtcHVycGxlLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLXZpdmlkLWN5YW4tYmx1ZS10by12aXZpZC1wdXJwbGUpICFpbXBvcnRhbnQ7fS5oYXMtbGlnaHQtZ3JlZW4tY3lhbi10by12aXZpZC1ncmVlbi1jeWFuLWdyYWRpZW50LWJhY2tncm91bmR7YmFja2dyb3VuZDogdmFyKC0td3AtLXByZXNldC0tZ3JhZGllbnQtLWxpZ2h0LWdyZWVuLWN5YW4tdG8tdml2aWQtZ3JlZW4tY3lhbikgIWltcG9ydGFudDt9Lmhhcy1sdW1pbm91cy12aXZpZC1hbWJlci10by1sdW1pbm91cy12aXZpZC1vcmFuZ2UtZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbHVtaW5vdXMtdml2aWQtYW1iZXItdG8tbHVtaW5vdXMtdml2aWQtb3JhbmdlKSAhaW1wb3J0YW50O30uaGFzLWx1bWlub3VzLXZpdmlkLW9yYW5nZS10by12aXZpZC1yZWQtZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tbHVtaW5vdXMtdml2aWQtb3JhbmdlLXRvLXZpdmlkLXJlZCkgIWltcG9ydGFudDt9Lmhhcy12ZXJ5LWxpZ2h0LWdyYXktdG8tY3lhbi1ibHVpc2gtZ3JheS1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS12ZXJ5LWxpZ2h0LWdyYXktdG8tY3lhbi1ibHVpc2gtZ3JheSkgIWltcG9ydGFudDt9Lmhhcy1jb29sLXRvLXdhcm0tc3BlY3RydW0tZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tY29vbC10by13YXJtLXNwZWN0cnVtKSAhaW1wb3J0YW50O30uaGFzLWJsdXNoLWxpZ2h0LXB1cnBsZS1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1ibHVzaC1saWdodC1wdXJwbGUpICFpbXBvcnRhbnQ7fS5oYXMtYmx1c2gtYm9yZGVhdXgtZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tYmx1c2gtYm9yZGVhdXgpICFpbXBvcnRhbnQ7fS5oYXMtbHVtaW5vdXMtZHVzay1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1sdW1pbm91cy1kdXNrKSAhaW1wb3J0YW50O30uaGFzLXBhbGUtb2NlYW4tZ3JhZGllbnQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOiB2YXIoLS13cC0tcHJlc2V0LS1ncmFkaWVudC0tcGFsZS1vY2VhbikgIWltcG9ydGFudDt9Lmhhcy1lbGVjdHJpYy1ncmFzcy1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1lbGVjdHJpYy1ncmFzcykgIWltcG9ydGFudDt9Lmhhcy1taWRuaWdodC1ncmFkaWVudC1iYWNrZ3JvdW5ke2JhY2tncm91bmQ6IHZhcigtLXdwLS1wcmVzZXQtLWdyYWRpZW50LS1taWRuaWdodCkgIWltcG9ydGFudDt9Lmhhcy1zbWFsbC1mb250LXNpemV7Zm9udC1zaXplOiB2YXIoLS13cC0tcHJlc2V0LS1mb250LXNpemUtLXNtYWxsKSAhaW1wb3J0YW50O30uaGFzLW1lZGl1bS1mb250LXNpemV7Zm9udC1zaXplOiB2YXIoLS13cC0tcHJlc2V0LS1mb250LXNpemUtLW1lZGl1bSkgIWltcG9ydGFudDt9Lmhhcy1sYXJnZS1mb250LXNpemV7Zm9udC1zaXplOiB2YXIoLS13cC0tcHJlc2V0LS1mb250LXNpemUtLWxhcmdlKSAhaW1wb3J0YW50O30uaGFzLXgtbGFyZ2UtZm9udC1zaXple2ZvbnQtc2l6ZTogdmFyKC0td3AtLXByZXNldC0tZm9udC1zaXplLS14LWxhcmdlKSAhaW1wb3J0YW50O30KPC9zdHlsZT4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nY2hhdHktZnJvbnQtY3NzLWNzcycgIGhyZWY9Jy93cC1jb250ZW50L3BsdWdpbnMvY2hhdHkvY3NzL2NoYXR5LWZyb250Lm1pbi5jc3M/dmVyPTE2Mjc4Mzg3OTQnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdhZmZ3cC1mb3Jtcy1jc3MnICBocmVmPScvd3AtY29udGVudC9wbHVnaW5zL2FmZmlsaWF0ZS13cC9hc3NldHMvY3NzL2Zvcm1zLm1pbi5jc3M/dmVyPTIuOS42LjEnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSd3cG1sLW1lbnUtaXRlbS0wLWNzcycgIGhyZWY9Jy93cC1jb250ZW50L3BsdWdpbnMvc2l0ZXByZXNzLW11bHRpbGluZ3VhbC1jbXMvdGVtcGxhdGVzL2xhbmd1YWdlLXN3aXRjaGVycy9tZW51LWl0ZW0vc3R5bGUubWluLmNzcz92ZXI9MScgdHlwZT0ndGV4dC9jc3MnIG1lZGlhPSdhbGwnIC8+CjxsaW5rIHJlbD0nc3R5bGVzaGVldCcgaWQ9J2N1c3RvbS1oYW1idXJnZXItbWVudXMtY3NzJyAgaHJlZj0nL3dwLWNvbnRlbnQvcGx1Z2lucy9kaXZpLTEwMC1oYW1idXJnZXItbWVudS9hc3NldHMvY3NzL3N0eWxlLmNzcz92ZXI9MjAxNjA2MDInIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8c3R5bGUgaWQ9J2N1c3RvbS1oYW1idXJnZXItbWVudXMtaW5saW5lLWNzcycgdHlwZT0ndGV4dC9jc3MnPgpib2R5LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uIGRpdiB7CgkJCQkJYmFja2dyb3VuZDogI2ZmZmZmZjsKCQkJCX0KYm9keS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2IHsKCQkJCQliYWNrZ3JvdW5kOiAjZmZmZmZmOwoJCQkJfQo8L3N0eWxlPgo8c3R5bGUgaWQ9J2Rpdmktc3R5bGUtcGFyZW50LWlubGluZS1pbmxpbmUtY3NzJyB0eXBlPSd0ZXh0L2Nzcyc+Ci8qIQpUaGVtZSBOYW1lOiBEaXZpClRoZW1lIFVSSTogaHR0cDovL3d3dy5lbGVnYW50dGhlbWVzLmNvbS9nYWxsZXJ5L2RpdmkvClZlcnNpb246IDQuMTguMApEZXNjcmlwdGlvbjogU21hcnQuIEZsZXhpYmxlLiBCZWF1dGlmdWwuIERpdmkgaXMgdGhlIG1vc3QgcG93ZXJmdWwgdGhlbWUgaW4gb3VyIGNvbGxlY3Rpb24uCkF1dGhvcjogRWxlZ2FudCBUaGVtZXMKQXV0aG9yIFVSSTogaHR0cDovL3d3dy5lbGVnYW50dGhlbWVzLmNvbQpMaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MgpMaWNlbnNlIFVSSTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbAoqLwoKYSxhYmJyLGFjcm9ueW0sYWRkcmVzcyxhcHBsZXQsYixiaWcsYmxvY2txdW90ZSxib2R5LGNlbnRlcixjaXRlLGNvZGUsZGQsZGVsLGRmbixkaXYsZGwsZHQsZW0sZmllbGRzZXQsZm9udCxmb3JtLGgxLGgyLGgzLGg0LGg1LGg2LGh0bWwsaSxpZnJhbWUsaW1nLGlucyxrYmQsbGFiZWwsbGVnZW5kLGxpLG9iamVjdCxvbCxwLHByZSxxLHMsc2FtcCxzbWFsbCxzcGFuLHN0cmlrZSxzdHJvbmcsc3ViLHN1cCx0dCx1LHVsLHZhcnttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjA7b3V0bGluZTowO2ZvbnQtc2l6ZToxMDAlOy1tcy10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudH1ib2R5e2xpbmUtaGVpZ2h0OjF9b2wsdWx7bGlzdC1zdHlsZTpub25lfWJsb2NrcXVvdGUscXtxdW90ZXM6bm9uZX1ibG9ja3F1b3RlOmFmdGVyLGJsb2NrcXVvdGU6YmVmb3JlLHE6YWZ0ZXIscTpiZWZvcmV7Y29udGVudDoiIjtjb250ZW50Om5vbmV9YmxvY2txdW90ZXttYXJnaW46MjBweCAwIDMwcHg7Ym9yZGVyLWxlZnQ6NXB4IHNvbGlkO3BhZGRpbmctbGVmdDoyMHB4fTpmb2N1c3tvdXRsaW5lOjB9ZGVse3RleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2h9cHJle292ZXJmbG93OmF1dG87cGFkZGluZzoxMHB4fWZpZ3VyZXttYXJnaW46MH10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7Ym9yZGVyLXNwYWNpbmc6MH1hcnRpY2xlLGFzaWRlLGZvb3RlcixoZWFkZXIsaGdyb3VwLG5hdixzZWN0aW9ue2Rpc3BsYXk6YmxvY2t9Ym9keXtmb250LWZhbWlseTpPcGVuIFNhbnMsQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtjb2xvcjojNjY2O2JhY2tncm91bmQtY29sb3I6I2ZmZjtsaW5lLWhlaWdodDoxLjdlbTtmb250LXdlaWdodDo1MDA7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGV9Ym9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtdGVtcGxhdGUtYmxhbmstcGhwICNwYWdlLWNvbnRhaW5lcntwYWRkaW5nLXRvcDowIWltcG9ydGFudH1ib2R5LmV0X2NvdmVyX2JhY2tncm91bmR7YmFja2dyb3VuZC1zaXplOmNvdmVyIWltcG9ydGFudDtiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcCFpbXBvcnRhbnQ7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0IWltcG9ydGFudDtiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6Zml4ZWR9YXtjb2xvcjojMmVhM2YyfWEsYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX1we3BhZGRpbmctYm90dG9tOjFlbX1wOm5vdCguaGFzLWJhY2tncm91bmQpOmxhc3Qtb2YtdHlwZXtwYWRkaW5nLWJvdHRvbTowfXAuZXRfbm9ybWFsX3BhZGRpbmd7cGFkZGluZy1ib3R0b206MWVtfXN0cm9uZ3tmb250LXdlaWdodDo3MDB9Y2l0ZSxlbSxpe2ZvbnQtc3R5bGU6aXRhbGljfWNvZGUscHJle2ZvbnQtZmFtaWx5OkNvdXJpZXIgTmV3LG1vbm9zcGFjZTttYXJnaW4tYm90dG9tOjEwcHh9aW5ze3RleHQtZGVjb3JhdGlvbjpub25lfXN1YixzdXB7aGVpZ2h0OjA7bGluZS1oZWlnaHQ6MTtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdXB7Ym90dG9tOi44ZW19c3Vie3RvcDouM2VtfWRse21hcmdpbjowIDAgMS41ZW19ZGwgZHR7Zm9udC13ZWlnaHQ6NzAwfWRke21hcmdpbi1sZWZ0OjEuNWVtfWJsb2NrcXVvdGUgcHtwYWRkaW5nLWJvdHRvbTowfWVtYmVkLGlmcmFtZSxvYmplY3QsdmlkZW97bWF4LXdpZHRoOjEwMCV9aDEsaDIsaDMsaDQsaDUsaDZ7Y29sb3I6IzMzMztwYWRkaW5nLWJvdHRvbToxMHB4O2xpbmUtaGVpZ2h0OjFlbTtmb250LXdlaWdodDo1MDB9aDEgYSxoMiBhLGgzIGEsaDQgYSxoNSBhLGg2IGF7Y29sb3I6aW5oZXJpdH1oMXtmb250LXNpemU6MzBweH1oMntmb250LXNpemU6MjZweH1oM3tmb250LXNpemU6MjJweH1oNHtmb250LXNpemU6MThweH1oNXtmb250LXNpemU6MTZweH1oNntmb250LXNpemU6MTRweH1pbnB1dHstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1pbnB1dFt0eXBlPWNoZWNrYm94XXstd2Via2l0LWFwcGVhcmFuY2U6Y2hlY2tib3h9aW5wdXRbdHlwZT1yYWRpb117LXdlYmtpdC1hcHBlYXJhbmNlOnJhZGlvfWlucHV0LnRleHQsaW5wdXQudGl0bGUsaW5wdXRbdHlwZT1lbWFpbF0saW5wdXRbdHlwZT1wYXNzd29yZF0saW5wdXRbdHlwZT10ZWxdLGlucHV0W3R5cGU9dGV4dF0sc2VsZWN0LHRleHRhcmVhe2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNiYmI7cGFkZGluZzoycHg7Y29sb3I6IzRlNGU0ZX1pbnB1dC50ZXh0OmZvY3VzLGlucHV0LnRpdGxlOmZvY3VzLGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsc2VsZWN0OmZvY3VzLHRleHRhcmVhOmZvY3Vze2JvcmRlci1jb2xvcjojMmQzOTQwO2NvbG9yOiMzZTNlM2V9aW5wdXQudGV4dCxpbnB1dC50aXRsZSxpbnB1dFt0eXBlPXRleHRdLHNlbGVjdCx0ZXh0YXJlYXttYXJnaW46MH10ZXh0YXJlYXtwYWRkaW5nOjRweH1idXR0b24saW5wdXQsc2VsZWN0LHRleHRhcmVhe2ZvbnQtZmFtaWx5OmluaGVyaXR9aW1ne21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvfS5jbGVhcntjbGVhcjpib3RofWJyLmNsZWFye21hcmdpbjowO3BhZGRpbmc6MH0ucGFnaW5hdGlvbntjbGVhcjpib3RofSNldF9zZWFyY2hfaWNvbjpob3ZlciwuZXQtc29jaWFsLWljb24gYTpob3ZlciwuZXRfcGFzc3dvcmRfcHJvdGVjdGVkX2Zvcm0gLmV0X3N1Ym1pdF9idXR0b24sLmZvcm0tc3VibWl0IC5ldF9wYl9idXR0b250dG9uLmFsdC5kaXNhYmxlZCwubmF2LXNpbmdsZSBhLC5wb3N0ZWRfaW4gYXtjb2xvcjojMmVhM2YyfS5ldC1zZWFyY2gtZm9ybSxibG9ja3F1b3Rle2JvcmRlci1jb2xvcjojMmVhM2YyfSNtYWluLWNvbnRlbnR7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5jb250YWluZXJ7d2lkdGg6ODAlO21heC13aWR0aDoxMDgwcHg7bWFyZ2luOmF1dG87cG9zaXRpb246cmVsYXRpdmV9Ym9keTpub3QoLmV0LXRiKSAjbWFpbi1jb250ZW50IC5jb250YWluZXIsYm9keTpub3QoLmV0LXRiLWhhcy1oZWFkZXIpICNtYWluLWNvbnRlbnQgLmNvbnRhaW5lcntwYWRkaW5nLXRvcDo1OHB4fS5ldF9mdWxsX3dpZHRoX3BhZ2UgI21haW4tY29udGVudCAuY29udGFpbmVyOmJlZm9yZXtkaXNwbGF5Om5vbmV9Lm1haW5fdGl0bGV7bWFyZ2luLWJvdHRvbToyMHB4fS5ldF9wYXNzd29yZF9wcm90ZWN0ZWRfZm9ybSAuZXRfc3VibWl0X2J1dHRvbjpob3ZlciwuZm9ybS1zdWJtaXQgLmV0X3BiX2J1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjA1KX0uZXRfYnV0dG9uX2ljb25fdmlzaWJsZSAuZXRfcGJfYnV0dG9ue3BhZGRpbmctcmlnaHQ6MmVtO3BhZGRpbmctbGVmdDouN2VtfS5ldF9idXR0b25faWNvbl92aXNpYmxlIC5ldF9wYl9idXR0b246YWZ0ZXJ7b3BhY2l0eToxO21hcmdpbi1sZWZ0OjB9LmV0X2J1dHRvbl9sZWZ0IC5ldF9wYl9idXR0b246aG92ZXI6YWZ0ZXJ7bGVmdDouMTVlbX0uZXRfYnV0dG9uX2xlZnQgLmV0X3BiX2J1dHRvbjphZnRlcnttYXJnaW4tbGVmdDowO2xlZnQ6MWVtfS5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0IC5ldF9wYl9idXR0b24sLmV0X2J1dHRvbl9sZWZ0IC5ldF9wYl9idXR0b246aG92ZXIsLmV0X2J1dHRvbl9sZWZ0IC5ldF9wYl9tb2R1bGUgLmV0X3BiX2J1dHRvbjpob3ZlcntwYWRkaW5nLWxlZnQ6MmVtO3BhZGRpbmctcmlnaHQ6LjdlbX0uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdCAuZXRfcGJfYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fbGVmdCAuZXRfcGJfYnV0dG9uOmhvdmVyOmFmdGVye2xlZnQ6LjE1ZW19LmV0X3Bhc3N3b3JkX3Byb3RlY3RlZF9mb3JtIC5ldF9zdWJtaXRfYnV0dG9uOmhvdmVyLC5mb3JtLXN1Ym1pdCAuZXRfcGJfYnV0dG9uOmhvdmVye3BhZGRpbmc6LjNlbSAxZW19LmV0X2J1dHRvbl9ub19pY29uIC5ldF9wYl9idXR0b246YWZ0ZXJ7ZGlzcGxheTpub25lfS5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0IC5ldF9wYl9idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0IC5ldF9wYl9idXR0b246aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uIC5ldF9wYl9idXR0b24sLmV0X2J1dHRvbl9ub19pY29uIC5ldF9wYl9idXR0b246aG92ZXJ7cGFkZGluZzouM2VtIDFlbSFpbXBvcnRhbnR9LmV0X2J1dHRvbl9jdXN0b21faWNvbiAuZXRfcGJfYnV0dG9uOmFmdGVye2xpbmUtaGVpZ2h0OjEuN2VtfS5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZSAuZXRfcGJfYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24gLmV0X3BiX2J1dHRvbjpob3ZlcjphZnRlcnttYXJnaW4tbGVmdDouM2VtfSNsZWZ0LWFyZWEgLnBvc3RfZm9ybWF0LXBvc3QtZm9ybWF0LWdhbGxlcnkgLndwLWJsb2NrLWdhbGxlcnk6Zmlyc3Qtb2YtdHlwZXtwYWRkaW5nOjA7bWFyZ2luLWJvdHRvbTotMTZweH0uZW50cnktY29udGVudCB0YWJsZTpub3QoLnZhcmlhdGlvbnMpe2JvcmRlcjoxcHggc29saWQgI2VlZTttYXJnaW46MCAwIDE1cHg7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEwMCV9LmVudHJ5LWNvbnRlbnQgdGhlYWQgdGgsLmVudHJ5LWNvbnRlbnQgdHIgdGh7Y29sb3I6IzU1NTtmb250LXdlaWdodDo3MDA7cGFkZGluZzo5cHggMjRweH0uZW50cnktY29udGVudCB0ciB0ZHtib3JkZXItdG9wOjFweCBzb2xpZCAjZWVlO3BhZGRpbmc6NnB4IDI0cHh9I2xlZnQtYXJlYSB1bCwuZW50cnktY29udGVudCB1bCwuZXQtbC0tYm9keSB1bCwuZXQtbC0tZm9vdGVyIHVsLC5ldC1sLS1oZWFkZXIgdWx7bGlzdC1zdHlsZS10eXBlOmRpc2M7cGFkZGluZzowIDAgMjNweCAxZW07bGluZS1oZWlnaHQ6MjZweH0jbGVmdC1hcmVhIG9sLC5lbnRyeS1jb250ZW50IG9sLC5ldC1sLS1ib2R5IG9sLC5ldC1sLS1mb290ZXIgb2wsLmV0LWwtLWhlYWRlciBvbHtsaXN0LXN0eWxlLXR5cGU6ZGVjaW1hbDtsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTtwYWRkaW5nOjAgMCAyM3B4O2xpbmUtaGVpZ2h0OjI2cHh9I2xlZnQtYXJlYSB1bCBsaSB1bCwuZW50cnktY29udGVudCB1bCBsaSBvbHtwYWRkaW5nOjJweCAwIDJweCAyMHB4fSNsZWZ0LWFyZWEgb2wgbGkgdWwsLmVudHJ5LWNvbnRlbnQgb2wgbGkgb2wsLmV0LWwtLWJvZHkgb2wgbGkgb2wsLmV0LWwtLWZvb3RlciBvbCBsaSBvbCwuZXQtbC0taGVhZGVyIG9sIGxpIG9se3BhZGRpbmc6MnB4IDAgMnB4IDM1cHh9I2xlZnQtYXJlYSB1bC53cC1ibG9jay1nYWxsZXJ5e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO2xpc3Qtc3R5bGUtdHlwZTpub25lO3BhZGRpbmc6MH0jbGVmdC1hcmVhIHVsLnByb2R1Y3Rze3BhZGRpbmc6MCFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS43IWltcG9ydGFudDtsaXN0LXN0eWxlOm5vbmUhaW1wb3J0YW50fS5nYWxsZXJ5LWl0ZW0gYXtkaXNwbGF5OmJsb2NrfS5nYWxsZXJ5LWNhcHRpb24sLmdhbGxlcnktaXRlbSBhe3dpZHRoOjkwJX0jd3BhZG1pbmJhcnt6LWluZGV4OjEwMDAwMX0jbGVmdC1hcmVhIC5wb3N0LW1ldGF7Zm9udC1zaXplOjE0cHg7cGFkZGluZy1ib3R0b206MTVweH0jbGVmdC1hcmVhIC5wb3N0LW1ldGEgYXt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjojNjY2fSNsZWZ0LWFyZWEgLmV0X2ZlYXR1cmVkX2ltYWdle3BhZGRpbmctYm90dG9tOjdweH0uc2luZ2xlIC5wb3N0e3BhZGRpbmctYm90dG9tOjI1cHh9Ym9keS5zaW5nbGUgLmV0X2F1ZGlvX2NvbnRlbnR7bWFyZ2luLWJvdHRvbTotNnB4fS5uYXYtc2luZ2xlIGF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6IzJlYTNmMjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo0MDB9Lm5hdi1wcmV2aW91c3tmbG9hdDpsZWZ0fS5uYXYtbmV4dHtmbG9hdDpyaWdodH0uZXRfcGFzc3dvcmRfcHJvdGVjdGVkX2Zvcm0gcCBpbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7Ym9yZGVyOm5vbmUhaW1wb3J0YW50O3dpZHRoOjEwMCUhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6MCFpbXBvcnRhbnQ7Zm9udC1zaXplOjE0cHg7Y29sb3I6Izk5OSFpbXBvcnRhbnQ7cGFkZGluZzoxNnB4IWltcG9ydGFudDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmV0X3Bhc3N3b3JkX3Byb3RlY3RlZF9mb3JtIGxhYmVse2Rpc3BsYXk6bm9uZX0uZXRfcGFzc3dvcmRfcHJvdGVjdGVkX2Zvcm0gLmV0X3N1Ym1pdF9idXR0b257Zm9udC1mYW1pbHk6aW5oZXJpdDtkaXNwbGF5OmJsb2NrO2Zsb2F0OnJpZ2h0O21hcmdpbjo4cHggYXV0byAwO2N1cnNvcjpwb2ludGVyfS5wb3N0LXBhc3N3b3JkLXJlcXVpcmVkIHAubm9jb21tZW50cy5jb250YWluZXJ7bWF4LXdpZHRoOjEwMCV9LnBvc3QtcGFzc3dvcmQtcmVxdWlyZWQgcC5ub2NvbW1lbnRzLmNvbnRhaW5lcjpiZWZvcmV7ZGlzcGxheTpub25lfS5hbGlnbmNlbnRlcixkaXYucG9zdCAubmV3LXBvc3QgLmFsaWduY2VudGVye2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0b30ud3AtY2FwdGlvbntib3JkZXI6MXB4IHNvbGlkICNkZGQ7dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZjNmM2YzO21hcmdpbi1ib3R0b206MTBweDttYXgtd2lkdGg6OTYlO3BhZGRpbmc6OHB4fS53cC1jYXB0aW9uLmFsaWdubGVmdHttYXJnaW46MCAzMHB4IDIwcHggMH0ud3AtY2FwdGlvbi5hbGlnbnJpZ2h0e21hcmdpbjowIDAgMjBweCAzMHB4fS53cC1jYXB0aW9uIGltZ3ttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjB9LndwLWNhcHRpb24gcC53cC1jYXB0aW9uLXRleHR7Zm9udC1zaXplOjEycHg7cGFkZGluZzowIDRweCA1cHg7bWFyZ2luOjB9LmFsaWducmlnaHR7ZmxvYXQ6cmlnaHR9LmFsaWdubGVmdHtmbG9hdDpsZWZ0fWltZy5hbGlnbmxlZnR7ZGlzcGxheTppbmxpbmU7ZmxvYXQ6bGVmdDttYXJnaW4tcmlnaHQ6MTVweH1pbWcuYWxpZ25yaWdodHtkaXNwbGF5OmlubGluZTtmbG9hdDpyaWdodDttYXJnaW4tbGVmdDoxNXB4fS5wYWdlLmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dCAjbWFpbi1jb250ZW50e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9Ym9keSAjbWFpbi1jb250ZW50IC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnQ+aDEsYm9keSAjbWFpbi1jb250ZW50IC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnQ+aDIsYm9keSAjbWFpbi1jb250ZW50IC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnQ+aDMsYm9keSAjbWFpbi1jb250ZW50IC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnQ+aDQsYm9keSAjbWFpbi1jb250ZW50IC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnQ+aDUsYm9keSAjbWFpbi1jb250ZW50IC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnQ+aDZ7bGluZS1oZWlnaHQ6MS40ZW19Ym9keSAjbWFpbi1jb250ZW50IC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnQ+cHtsaW5lLWhlaWdodDoxLjdlbX0ud3AtYmxvY2stcHVsbHF1b3Rle21hcmdpbjoyMHB4IDAgMzBweH0ud3AtYmxvY2stcHVsbHF1b3RlLmhhcy1iYWNrZ3JvdW5kIGJsb2NrcXVvdGV7Ym9yZGVyLWxlZnQ6bm9uZX0ud3AtYmxvY2stZ3JvdXAuaGFzLWJhY2tncm91bmR7cGFkZGluZzoxLjVlbSAxLjVlbSAuNWVtfUBtZWRpYSAobWluLXdpZHRoOjk4MXB4KXsjbGVmdC1hcmVhe3dpZHRoOjc5LjEyNSU7cGFkZGluZy1ib3R0b206MjNweH0jbWFpbi1jb250ZW50IC5jb250YWluZXI6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7aGVpZ2h0OjEwMCU7d2lkdGg6MXB4O2JhY2tncm91bmQtY29sb3I6I2UyZTJlMn0uZXRfZnVsbF93aWR0aF9wYWdlICNsZWZ0LWFyZWEsLmV0X25vX3NpZGViYXIgI2xlZnQtYXJlYXtmbG9hdDpub25lO3dpZHRoOjEwMCUhaW1wb3J0YW50fS5ldF9mdWxsX3dpZHRoX3BhZ2UgI2xlZnQtYXJlYXtwYWRkaW5nLWJvdHRvbTowfS5ldF9ub19zaWRlYmFyICNtYWluLWNvbnRlbnQgLmNvbnRhaW5lcjpiZWZvcmV7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7I3BhZ2UtY29udGFpbmVye3BhZGRpbmctdG9wOjgwcHh9LmV0LXRiICNwYWdlLWNvbnRhaW5lciwuZXQtdGItaGFzLWhlYWRlciAjcGFnZS1jb250YWluZXJ7cGFkZGluZy10b3A6MCFpbXBvcnRhbnR9I2xlZnQtYXJlYSwjc2lkZWJhcnt3aWR0aDoxMDAlIWltcG9ydGFudH0jbWFpbi1jb250ZW50IC5jb250YWluZXI6YmVmb3Jle2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmV0X2Z1bGxfd2lkdGhfcGFnZSAuZXRfZ2FsbGVyeV9pdGVtOm50aC1jaGlsZCg0bisxKXtjbGVhcjpub25lfX1AbWVkaWEgcHJpbnR7I3BhZ2UtY29udGFpbmVye3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fX0jd3AtYWRtaW4tYmFyLWV0LXVzZS12aXN1YWwtYnVpbGRlciBhOmJlZm9yZXtmb250LWZhbWlseTpFVG1vZHVsZXMhaW1wb3J0YW50O2NvbnRlbnQ6IlxlNjI1Ijtmb250LXNpemU6MzBweCFpbXBvcnRhbnQ7d2lkdGg6MjhweDttYXJnaW4tdG9wOi0zcHg7Y29sb3I6Izk3NGRmMyFpbXBvcnRhbnR9I3dwLWFkbWluLWJhci1ldC11c2UtdmlzdWFsLWJ1aWxkZXI6aG92ZXIgYTpiZWZvcmV7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9I3dwLWFkbWluLWJhci1ldC11c2UtdmlzdWFsLWJ1aWxkZXI6aG92ZXIgYSwjd3AtYWRtaW4tYmFyLWV0LXVzZS12aXN1YWwtYnVpbGRlciBhOmhvdmVye3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuNXMgZWFzZTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuNXMgZWFzZTstbW96LXRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuNXMgZWFzZTtiYWNrZ3JvdW5kLWNvbG9yOiM3ZTNiZDAhaW1wb3J0YW50O2NvbG9yOiNmZmYhaW1wb3J0YW50fSogaHRtbCAuY2xlYXJmaXgsOmZpcnN0LWNoaWxkK2h0bWwgLmNsZWFyZml4e3pvb206MX0uaXBob25lIC5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXN0YXJ0LXBsYXliYWNrLWJ1dHRvbntkaXNwbGF5Om5vbmUhaW1wb3J0YW50Oy13ZWJraXQtYXBwZWFyYW5jZTpub25lfS5ldF9tb2JpbGVfZGV2aWNlIC5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4IC5ldF9wYl9wYXJhbGxheF9jc3N7YmFja2dyb3VuZC1hdHRhY2htZW50OnNjcm9sbH0uZXQtc29jaWFsLWZhY2Vib29rIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXGUwOTMifS5ldC1zb2NpYWwtdHdpdHRlciBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxlMDk0In0uZXQtc29jaWFsLWdvb2dsZS1wbHVzIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXGUwOTYifS5ldC1zb2NpYWwtaW5zdGFncmFtIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXGUwOWEifS5ldC1zb2NpYWwtcnNzIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXGUwOWUifS5haTFlYy1zaW5nbGUtZXZlbnQ6YWZ0ZXJ7Y29udGVudDoiICI7ZGlzcGxheTp0YWJsZTtjbGVhcjpib3RofS5ldmNhbF9ldmVudF9kZXRhaWxzIC5ldmNhbF9ldmRhdGFfY2VsbCAuZXZlbnRvbl9kZXRhaWxzX3NoYWRpbmdfYm90LmV2ZW50b25fZGV0YWlsc19zaGFkaW5nX2JvdHt6LWluZGV4OjN9LndwLWJsb2NrLWRpdmktbGF5b3V0e21hcmdpbi1ib3R0b206MWVtfSp7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fSNldC1pbmZvLWVtYWlsOmJlZm9yZSwjZXQtaW5mby1waG9uZTpiZWZvcmUsI2V0X3NlYXJjaF9pY29uOmJlZm9yZSwuY29tbWVudC1yZXBseS1saW5rOmFmdGVyLC5ldC1jYXJ0LWluZm8gc3BhbjpiZWZvcmUsLmV0LXBiLWFycm93LW5leHQ6YmVmb3JlLC5ldC1wYi1hcnJvdy1wcmV2OmJlZm9yZSwuZXQtc29jaWFsLWljb24gYTpiZWZvcmUsLmV0X2F1ZGlvX2NvbnRhaW5lciAubWVqcy1wbGF5cGF1c2UtYnV0dG9uIGJ1dHRvbjpiZWZvcmUsLmV0X2F1ZGlvX2NvbnRhaW5lciAubWVqcy12b2x1bWUtYnV0dG9uIGJ1dHRvbjpiZWZvcmUsLmV0X292ZXJsYXk6YmVmb3JlLC5ldF9wYXNzd29yZF9wcm90ZWN0ZWRfZm9ybSAuZXRfc3VibWl0X2J1dHRvbjphZnRlciwuZXRfcGJfYnV0dG9uOmFmdGVyLC5ldF9wYl9jb250YWN0X3Jlc2V0OmFmdGVyLC5ldF9wYl9jb250YWN0X3N1Ym1pdDphZnRlciwuZXRfcGJfZm9udF9pY29uOmJlZm9yZSwuZXRfcGJfbmV3c2xldHRlcl9idXR0b246YWZ0ZXIsLmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uOmFmdGVyLC5ldF9wYl9wcm9tb19idXR0b246YWZ0ZXIsLmV0X3BiX3Rlc3RpbW9uaWFsOmJlZm9yZSwuZXRfcGJfdG9nZ2xlX3RpdGxlOmJlZm9yZSwuZm9ybS1zdWJtaXQgLmV0X3BiX2J1dHRvbjphZnRlciwubW9iaWxlX21lbnVfYmFyOmJlZm9yZSxhLmV0X3BiX21vcmVfYnV0dG9uOmFmdGVye2ZvbnQtZmFtaWx5OkVUbW9kdWxlcyFpbXBvcnRhbnQ7c3BlYWs6bm9uZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7LXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6bm9ybWFsO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDt0ZXh0LXRyYW5zZm9ybTpub25lO2xpbmUtaGVpZ2h0OjE7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7dGV4dC1zaGFkb3c6MCAwO2RpcmVjdGlvbjpsdHJ9LmV0LXBiLWljb24sLmV0X3BiX2N1c3RvbV9idXR0b25faWNvbi5ldF9wYl9idXR0b246YWZ0ZXIsLmV0X3BiX2xvZ2luIC5ldF9wYl9jdXN0b21fYnV0dG9uX2ljb24uZXRfcGJfYnV0dG9uOmFmdGVyLC5ldF9wYl93b29fY3VzdG9tX2J1dHRvbl9pY29uIC5idXR0b24uZXRfcGJfY3VzdG9tX2J1dHRvbl9pY29uLmV0X3BiX2J1dHRvbjphZnRlciwuZXRfcGJfd29vX2N1c3RvbV9idXR0b25faWNvbiAuYnV0dG9uLmV0X3BiX2N1c3RvbV9idXR0b25faWNvbi5ldF9wYl9idXR0b246aG92ZXI6YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtaWNvbil9LmV0LXBiLWljb257Zm9udC1mYW1pbHk6RVRtb2R1bGVzO3NwZWFrOm5vbmU7Zm9udC13ZWlnaHQ6NDAwOy13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOm5vcm1hbDtmb250LWZlYXR1cmUtc2V0dGluZ3M6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7dGV4dC10cmFuc2Zvcm06bm9uZTtsaW5lLWhlaWdodDoxOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7Zm9udC1zaXplOjk2cHg7Zm9udC1zdHlsZTpub3JtYWw7ZGlzcGxheTppbmxpbmUtYmxvY2s7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2RpcmVjdGlvbjpsdHJ9I2V0LWFqYXgtc2F2aW5ne2Rpc3BsYXk6bm9uZTstd2Via2l0LXRyYW5zaXRpb246YmFja2dyb3VuZCAuM3MsLXdlYmtpdC1ib3gtc2hhZG93IC4zczt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjNzLC13ZWJraXQtYm94LXNoYWRvdyAuM3M7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4zcyxib3gtc2hhZG93IC4zczt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjNzLGJveC1zaGFkb3cgLjNzLC13ZWJraXQtYm94LXNoYWRvdyAuM3M7LXdlYmtpdC1ib3gtc2hhZG93OnJnYmEoMCwxMzksMjE5LC4yNDcwNTkpIDAgMCA2MHB4O2JveC1zaGFkb3c6MCAwIDYwcHggcmdiYSgwLDEzOSwyMTksLjI0NzA1OSk7cG9zaXRpb246Zml4ZWQ7dG9wOjUwJTtsZWZ0OjUwJTt3aWR0aDo1MHB4O2hlaWdodDo1MHB4O2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjUwcHg7bWFyZ2luOi0yNXB4IDAgMCAtMjVweDt6LWluZGV4Ojk5OTk5OTt0ZXh0LWFsaWduOmNlbnRlcn0jZXQtYWpheC1zYXZpbmcgaW1ne21hcmdpbjo5cHh9LmV0LXNhZmUtbW9kZS1pbmRpY2F0b3IsLmV0LXNhZmUtbW9kZS1pbmRpY2F0b3I6Zm9jdXMsLmV0LXNhZmUtbW9kZS1pbmRpY2F0b3I6aG92ZXJ7LXdlYmtpdC1ib3gtc2hhZG93OjAgNXB4IDEwcHggcmdiYSg0MSwxOTYsMTY5LC4xNSk7Ym94LXNoYWRvdzowIDVweCAxMHB4IHJnYmEoNDEsMTk2LDE2OSwuMTUpO2JhY2tncm91bmQ6IzI5YzRhOTtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjEycHg7bGluZS1oZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjNweDtwb3NpdGlvbjpmaXhlZDtib3R0b206MzBweDtyaWdodDozMHB4O3otaW5kZXg6OTk5OTk5O3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtZmFtaWx5Ok9wZW4gU2FucyxzYW5zLXNlcmlmOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlfS5ldF9wYl9idXR0b257Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO3BhZGRpbmc6LjNlbSAxZW07bGluZS1oZWlnaHQ6MS43ZW0haW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtib3JkZXI6MnB4IHNvbGlkO2JvcmRlci1yYWRpdXM6M3B4Oy13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjouMnM7dHJhbnNpdGlvbi1kdXJhdGlvbjouMnM7LXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OmFsbCFpbXBvcnRhbnQ7dHJhbnNpdGlvbi1wcm9wZXJ0eTphbGwhaW1wb3J0YW50fS5ldF9wYl9idXR0b24sLmV0X3BiX2J1dHRvbl9pbm5lcntwb3NpdGlvbjpyZWxhdGl2ZX0uZXRfcGJfYnV0dG9uOmhvdmVyLC5ldF9wYl9tb2R1bGUgLmV0X3BiX2J1dHRvbjpob3Zlcntib3JkZXI6MnB4IHNvbGlkIHRyYW5zcGFyZW50O3BhZGRpbmc6LjNlbSAyZW0gLjNlbSAuN2VtfS5ldF9wYl9idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuMil9LmV0X3BiX2JnX2xheW91dF9saWdodC5ldF9wYl9idXR0b246aG92ZXIsLmV0X3BiX2JnX2xheW91dF9saWdodCAuZXRfcGJfYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDUpfS5ldF9wYl9idXR0b246YWZ0ZXIsLmV0X3BiX2J1dHRvbjpiZWZvcmV7Zm9udC1zaXplOjMycHg7bGluZS1oZWlnaHQ6MWVtO2NvbnRlbnQ6IlwzNSI7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO21hcmdpbi1sZWZ0Oi0xZW07LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbjphbGwgLjJzO3RleHQtdHJhbnNmb3JtOm5vbmU7LXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6Imtlcm4iIG9mZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6Imtlcm4iIG9mZjtmb250LXZhcmlhbnQ6bm9uZTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7dGV4dC1zaGFkb3c6bm9uZX0uZXRfcGJfYnV0dG9uLmV0X2hvdmVyX2VuYWJsZWQ6aG92ZXI6YWZ0ZXIsLmV0X3BiX2J1dHRvbi5ldF9wYl9ob3ZlcmVkOmhvdmVyOmFmdGVyey13ZWJraXQtdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5ldF9wYl9idXR0b246YmVmb3Jle2Rpc3BsYXk6bm9uZX0uZXRfcGJfYnV0dG9uOmhvdmVyOmFmdGVye29wYWNpdHk6MTttYXJnaW4tbGVmdDowfS5ldF9wYl9jb2x1bW5fMV8zIGgxLC5ldF9wYl9jb2x1bW5fMV80IGgxLC5ldF9wYl9jb2x1bW5fMV81IGgxLC5ldF9wYl9jb2x1bW5fMV82IGgxLC5ldF9wYl9jb2x1bW5fMl81IGgxe2ZvbnQtc2l6ZToyNnB4fS5ldF9wYl9jb2x1bW5fMV8zIGgyLC5ldF9wYl9jb2x1bW5fMV80IGgyLC5ldF9wYl9jb2x1bW5fMV81IGgyLC5ldF9wYl9jb2x1bW5fMV82IGgyLC5ldF9wYl9jb2x1bW5fMl81IGgye2ZvbnQtc2l6ZToyM3B4fS5ldF9wYl9jb2x1bW5fMV8zIGgzLC5ldF9wYl9jb2x1bW5fMV80IGgzLC5ldF9wYl9jb2x1bW5fMV81IGgzLC5ldF9wYl9jb2x1bW5fMV82IGgzLC5ldF9wYl9jb2x1bW5fMl81IGgze2ZvbnQtc2l6ZToyMHB4fS5ldF9wYl9jb2x1bW5fMV8zIGg0LC5ldF9wYl9jb2x1bW5fMV80IGg0LC5ldF9wYl9jb2x1bW5fMV81IGg0LC5ldF9wYl9jb2x1bW5fMV82IGg0LC5ldF9wYl9jb2x1bW5fMl81IGg0e2ZvbnQtc2l6ZToxOHB4fS5ldF9wYl9jb2x1bW5fMV8zIGg1LC5ldF9wYl9jb2x1bW5fMV80IGg1LC5ldF9wYl9jb2x1bW5fMV81IGg1LC5ldF9wYl9jb2x1bW5fMV82IGg1LC5ldF9wYl9jb2x1bW5fMl81IGg1e2ZvbnQtc2l6ZToxNnB4fS5ldF9wYl9jb2x1bW5fMV8zIGg2LC5ldF9wYl9jb2x1bW5fMV80IGg2LC5ldF9wYl9jb2x1bW5fMV81IGg2LC5ldF9wYl9jb2x1bW5fMV82IGg2LC5ldF9wYl9jb2x1bW5fMl81IGg2e2ZvbnQtc2l6ZToxNXB4fS5ldF9wYl9iZ19sYXlvdXRfZGFyaywuZXRfcGJfYmdfbGF5b3V0X2RhcmsgaDEsLmV0X3BiX2JnX2xheW91dF9kYXJrIGgyLC5ldF9wYl9iZ19sYXlvdXRfZGFyayBoMywuZXRfcGJfYmdfbGF5b3V0X2RhcmsgaDQsLmV0X3BiX2JnX2xheW91dF9kYXJrIGg1LC5ldF9wYl9iZ19sYXlvdXRfZGFyayBoNntjb2xvcjojZmZmIWltcG9ydGFudH0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fbGVmdHt0ZXh0LWFsaWduOmxlZnR9LmV0X3BiX21vZHVsZS5ldF9wYl90ZXh0X2FsaWduX2NlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fanVzdGlmaWVke3RleHQtYWxpZ246anVzdGlmeX0uY2xlYXJmaXg6YWZ0ZXJ7dmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTpibG9jaztmb250LXNpemU6MDtjb250ZW50OiIgIjtjbGVhcjpib3RoO2hlaWdodDowfS5ldF9wYl9iZ19sYXlvdXRfbGlnaHQgLmV0X3BiX21vcmVfYnV0dG9ue2NvbG9yOiMyZWEzZjJ9LmV0X2J1aWxkZXJfaW5uZXJfY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9aGVhZGVyIC5ldF9idWlsZGVyX2lubmVyX2NvbnRlbnR7ei1pbmRleDoyfS5ldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2h7bWl4LWJsZW5kLW1vZGU6dW5zZXQhaW1wb3J0YW50fS5ldF9wYl9pbWFnZV9jb250YWluZXJ7bWFyZ2luOi0yMHB4IC0yMHB4IDI5cHh9LmV0X3BiX21vZHVsZV9pbm5lcntwb3NpdGlvbjpyZWxhdGl2ZX0uZXRfaG92ZXJfZW5hYmxlZF9wcmV2aWV3e3otaW5kZXg6Mn0uZXRfaG92ZXJfZW5hYmxlZDpob3Zlcntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjJ9LmV0X3BiX2FsbF90YWJzLC5ldF9wYl9tb2R1bGUsLmV0X3BiX3Bvc3RzX25hdiBhLC5ldF9wYl90YWIsLmV0X3BiX3dpdGhfYmFja2dyb3VuZHtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0fS5ldF9wYl9iYWNrZ3JvdW5kX21hc2ssLmV0X3BiX2JhY2tncm91bmRfcGF0dGVybntib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0uZXRfcGJfYmFja2dyb3VuZF9tYXNre2JhY2tncm91bmQtc2l6ZTpjYWxjKDEwMCUgKyAycHgpIGNhbGMoMTAwJSArIDJweCk7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246NTAlO292ZXJmbG93OmhpZGRlbn0uZXRfcGJfYmFja2dyb3VuZF9wYXR0ZXJue2JhY2tncm91bmQtcG9zaXRpb246MCAwO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdH0uZXRfcGJfd2l0aF9ib3JkZXJ7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyOjAgc29saWQgIzMzM30ucG9zdC1wYXNzd29yZC1yZXF1aXJlZCAuZXRfcGJfcm93e3BhZGRpbmc6MDt3aWR0aDoxMDAlfS5wb3N0LXBhc3N3b3JkLXJlcXVpcmVkIC5ldF9wYXNzd29yZF9wcm90ZWN0ZWRfZm9ybXttaW4taGVpZ2h0OjB9Ym9keS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQuZXRfcGJfc2hvd190aXRsZSAucG9zdC1wYXNzd29yZC1yZXF1aXJlZCAuZXRfcGFzc3dvcmRfcHJvdGVjdGVkX2Zvcm0gaDEsYm9keTpub3QoLmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dCkgLnBvc3QtcGFzc3dvcmQtcmVxdWlyZWQgLmV0X3Bhc3N3b3JkX3Byb3RlY3RlZF9mb3JtIGgxe2Rpc3BsYXk6bm9uZX0uZXRfcGJfbm9fYmd7cGFkZGluZzowIWltcG9ydGFudH0uZXRfb3ZlcmxheS5ldF9wYl9pbmxpbmVfaWNvbjpiZWZvcmUsLmV0X3BiX2lubGluZV9pY29uOmJlZm9yZXtjb250ZW50OmF0dHIoZGF0YS1pY29uKX0uZXRfcGJfbW9yZV9idXR0b257Y29sb3I6aW5oZXJpdDt0ZXh0LXNoYWRvdzpub25lO3RleHQtZGVjb3JhdGlvbjpub25lO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi10b3A6MjBweH0uZXRfcGFyYWxsYXhfYmdfd3JhcHtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjB9LmV0X3BhcmFsbGF4X2Jne2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcDtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9ja30uZXRfcGFyYWxsYXhfYmcuZXRfcGFyYWxsYXhfYmdfX2hvdmVyLC5ldF9wYXJhbGxheF9iZy5ldF9wYXJhbGxheF9iZ19waG9uZSwuZXRfcGFyYWxsYXhfYmcuZXRfcGFyYWxsYXhfYmdfdGFibGV0LC5ldF9wYXJhbGxheF9ncmFkaWVudC5ldF9wYXJhbGxheF9ncmFkaWVudF9faG92ZXIsLmV0X3BhcmFsbGF4X2dyYWRpZW50LmV0X3BhcmFsbGF4X2dyYWRpZW50X3Bob25lLC5ldF9wYXJhbGxheF9ncmFkaWVudC5ldF9wYXJhbGxheF9ncmFkaWVudF90YWJsZXQsLmV0X3BiX3NlY3Rpb25fcGFyYWxsYXhfaG92ZXI6aG92ZXIgLmV0X3BhcmFsbGF4X2JnOm5vdCguZXRfcGFyYWxsYXhfYmdfX2hvdmVyKSwuZXRfcGJfc2VjdGlvbl9wYXJhbGxheF9ob3Zlcjpob3ZlciAuZXRfcGFyYWxsYXhfZ3JhZGllbnQ6bm90KC5ldF9wYXJhbGxheF9ncmFkaWVudF9faG92ZXIpe2Rpc3BsYXk6bm9uZX0uZXRfcGJfc2VjdGlvbl9wYXJhbGxheF9ob3Zlcjpob3ZlciAuZXRfcGFyYWxsYXhfYmcuZXRfcGFyYWxsYXhfYmdfX2hvdmVyLC5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4X2hvdmVyOmhvdmVyIC5ldF9wYXJhbGxheF9ncmFkaWVudC5ldF9wYXJhbGxheF9ncmFkaWVudF9faG92ZXJ7ZGlzcGxheTpibG9ja30uZXRfcGFyYWxsYXhfZ3JhZGllbnR7Ym90dG9tOjA7ZGlzcGxheTpibG9jaztsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0uZXRfcGJfbW9kdWxlLmV0X3BiX3NlY3Rpb25fcGFyYWxsYXgsLmV0X3BiX3Bvc3RzX25hdiBhLmV0X3BiX3NlY3Rpb25fcGFyYWxsYXgsLmV0X3BiX3RhYi5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4e3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4IC5ldF9wYl9wYXJhbGxheF9jc3MsLmV0X3BiX3NsaWRlcyAuZXRfcGFyYWxsYXhfYmcuZXRfcGJfcGFyYWxsYXhfY3Nze2JhY2tncm91bmQtYXR0YWNobWVudDpmaXhlZH1ib2R5LmV0LWJmYiAuZXRfcGJfc2VjdGlvbl9wYXJhbGxheCAuZXRfcGJfcGFyYWxsYXhfY3NzLGJvZHkuZXQtYmZiIC5ldF9wYl9zbGlkZXMgLmV0X3BhcmFsbGF4X2JnLmV0X3BiX3BhcmFsbGF4X2Nzc3tiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6c2Nyb2xsO2JvdHRvbTphdXRvfS5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4LmV0X3BiX2NvbHVtbiAuZXRfcGJfbW9kdWxlLC5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4LmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uLC5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4LmV0X3BiX3JvdyAuZXRfcGJfbW9kdWxle3otaW5kZXg6OTtwb3NpdGlvbjpyZWxhdGl2ZX0uZXRfcGJfbW9yZV9idXR0b246aG92ZXI6YWZ0ZXJ7b3BhY2l0eToxO21hcmdpbi1sZWZ0OjB9LmV0X3BiX3ByZWxvYWQgLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcsLmV0X3BiX3ByZWxvYWQ+ZGl2e3Zpc2liaWxpdHk6aGlkZGVufS5ldF9wYl9wcmVsb2FkLC5ldF9wYl9zZWN0aW9uLmV0X3BiX3NlY3Rpb25fdmlkZW8uZXRfcGJfcHJlbG9hZHtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kOiM0NjQ2NDYhaW1wb3J0YW50fS5ldF9wYl9wcmVsb2FkOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7YmFja2dyb3VuZDp1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL0RpdmkvaW5jbHVkZXMvYnVpbGRlci9zdHlsZXMvaW1hZ2VzL3ByZWxvYWRlci5naWYpIG5vLXJlcGVhdDtib3JkZXItcmFkaXVzOjMycHg7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDttYXJnaW46LTE2cHggMCAwIC0xNnB4fS5ib3gtc2hhZG93LW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDoxMDtwb2ludGVyLWV2ZW50czpub25lfS5ldF9wYl9zZWN0aW9uPi5ib3gtc2hhZG93LW92ZXJsYXl+LmV0X3BiX3Jvd3t6LWluZGV4OjExfWJvZHkuc2FmYXJpIC5zZWN0aW9uX2hhc19kaXZpZGVye3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0uZXRfcGJfcm93Pi5ib3gtc2hhZG93LW92ZXJsYXl7ei1pbmRleDo4fS5oYXMtYm94LXNoYWRvdy1vdmVybGF5e3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9jbGlja2FibGV7Y3Vyc29yOnBvaW50ZXJ9LnNjcmVlbi1yZWFkZXItdGV4dHtib3JkZXI6MDtjbGlwOnJlY3QoMXB4LDFweCwxcHgsMXB4KTstd2Via2l0LWNsaXAtcGF0aDppbnNldCg1MCUpO2NsaXAtcGF0aDppbnNldCg1MCUpO2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7d2lkdGg6MXB4O3dvcmQtd3JhcDpub3JtYWwhaW1wb3J0YW50fS5ldF9tdWx0aV92aWV3X2hpZGRlbiwuZXRfbXVsdGlfdmlld19oaWRkZW5faW1hZ2V7ZGlzcGxheTpub25lIWltcG9ydGFudH1Aa2V5ZnJhbWVzIG11bHRpLXZpZXctaW1hZ2UtZmFkZXswJXtvcGFjaXR5OjB9MTAle29wYWNpdHk6LjF9MjAle29wYWNpdHk6LjJ9MzAle29wYWNpdHk6LjN9NDAle29wYWNpdHk6LjR9NTAle29wYWNpdHk6LjV9NjAle29wYWNpdHk6LjZ9NzAle29wYWNpdHk6Ljd9ODAle29wYWNpdHk6Ljh9OTAle29wYWNpdHk6Ljl9dG97b3BhY2l0eToxfX0uZXRfbXVsdGlfdmlld19pbWFnZV9fbG9hZGluZ3t2aXNpYmlsaXR5OmhpZGRlbn0uZXRfbXVsdGlfdmlld19pbWFnZV9fbG9hZGVkey13ZWJraXQtYW5pbWF0aW9uOm11bHRpLXZpZXctaW1hZ2UtZmFkZSAuNXM7YW5pbWF0aW9uOm11bHRpLXZpZXctaW1hZ2UtZmFkZSAuNXN9I2V0LXBiLW1vdGlvbi1lZmZlY3RzLW9mZnNldC10cmFja2Vye3Zpc2liaWxpdHk6aGlkZGVuIWltcG9ydGFudDtvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowfS5ldC1wYi1iZWZvcmUtc2Nyb2xsLWFuaW1hdGlvbntvcGFjaXR5OjB9aGVhZGVyLmV0LWwuZXQtbC0taGVhZGVyOmFmdGVye2NsZWFyOmJvdGg7ZGlzcGxheTpibG9jaztjb250ZW50OiIifS5ldF9wYl9tb2R1bGV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjouMnM7YW5pbWF0aW9uLWR1cmF0aW9uOi4yc31ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUJvdHRvbXswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgxMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwJSl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgZmFkZUJvdHRvbXswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgxMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwJSl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9fUAtd2Via2l0LWtleWZyYW1lcyBmYWRlTGVmdHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAlKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QGtleWZyYW1lcyBmYWRlTGVmdHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAlKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVSaWdodHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgxMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwJSl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9fUBrZXlmcmFtZXMgZmFkZVJpZ2h0ezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAlKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVUb3B7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTEwJSl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9fUBrZXlmcmFtZXMgZmFkZVRvcHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAlKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGZhZGVJbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX0uZXQtd2F5cG9pbnQ6bm90KC5ldF9wYl9jb3VudGVycyl7b3BhY2l0eTowfUBtZWRpYSAobWluLXdpZHRoOjk4MXB4KXsuZXRfcGJfc2VjdGlvbi5ldF9zZWN0aW9uX3NwZWNpYWx0eSBkaXYuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW4gLmV0X3BiX2NvbHVtbiAuZXRfcGJfbW9kdWxlLmV0LWxhc3QtY2hpbGQsLmV0X3BiX3NlY3Rpb24uZXRfc2VjdGlvbl9zcGVjaWFsdHkgZGl2LmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uIC5ldF9wYl9jb2x1bW4gLmV0X3BiX21vZHVsZTpsYXN0LWNoaWxkLC5ldF9wYl9zZWN0aW9uLmV0X3NlY3Rpb25fc3BlY2lhbHR5IGRpdi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbiAuZXRfcGJfcm93X2lubmVyIC5ldF9wYl9jb2x1bW4gLmV0X3BiX21vZHVsZS5ldC1sYXN0LWNoaWxkLC5ldF9wYl9zZWN0aW9uLmV0X3NlY3Rpb25fc3BlY2lhbHR5IGRpdi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbiAuZXRfcGJfcm93X2lubmVyIC5ldF9wYl9jb2x1bW4gLmV0X3BiX21vZHVsZTpsYXN0LWNoaWxkLC5ldF9wYl9zZWN0aW9uIGRpdi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbiAuZXRfcGJfbW9kdWxlLmV0LWxhc3QtY2hpbGQsLmV0X3BiX3NlY3Rpb24gZGl2LmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uIC5ldF9wYl9tb2R1bGU6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9fUBtZWRpYSAobWF4LXdpZHRoOjk4MHB4KXsuZXRfb3ZlcmxheS5ldF9wYl9pbmxpbmVfaWNvbl90YWJsZXQ6YmVmb3JlLC5ldF9wYl9pbmxpbmVfaWNvbl90YWJsZXQ6YmVmb3Jle2NvbnRlbnQ6YXR0cihkYXRhLWljb24tdGFibGV0KX0uZXRfcGFyYWxsYXhfYmcuZXRfcGFyYWxsYXhfYmdfdGFibGV0X2V4aXN0LC5ldF9wYXJhbGxheF9ncmFkaWVudC5ldF9wYXJhbGxheF9ncmFkaWVudF90YWJsZXRfZXhpc3R7ZGlzcGxheTpub25lfS5ldF9wYXJhbGxheF9iZy5ldF9wYXJhbGxheF9iZ190YWJsZXQsLmV0X3BhcmFsbGF4X2dyYWRpZW50LmV0X3BhcmFsbGF4X2dyYWRpZW50X3RhYmxldHtkaXNwbGF5OmJsb2NrfS5ldF9wYl9jb2x1bW4gLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjMwcHh9LmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uIC5ldF9wYl9tb2R1bGUuZXQtbGFzdC1jaGlsZCwuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW4gLmV0X3BiX21vZHVsZTpsYXN0LWNoaWxkLC5ldF9zZWN0aW9uX3NwZWNpYWx0eSAuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW4gLmV0X3BiX21vZHVsZS5ldC1sYXN0LWNoaWxkLC5ldF9zZWN0aW9uX3NwZWNpYWx0eSAuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW4gLmV0X3BiX21vZHVsZTpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uZXRfcGJfbW9yZV9idXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0LmV0X3BiX2J1dHRvbiwuZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3RhYmxldC5ldF9wYl9tb2R1bGUuZXRfcGJfYnV0dG9uLC5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IC5ldF9wYl9tb3JlX2J1dHRvbntjb2xvcjojMmVhM2YyfS5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IC5ldF9wYl9mb3Jnb3RfcGFzc3dvcmQgYXtjb2xvcjojNjY2fS5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IGgxLC5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IGgyLC5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IGgzLC5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IGg0LC5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IGg1LC5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IGg2e2NvbG9yOiMzMzMhaW1wb3J0YW50fS5ldF9wYl9tb2R1bGUgLmV0X3BiX2JnX2xheW91dF9saWdodF90YWJsZXQuZXRfcGJfYnV0dG9ue2NvbG9yOiMyZWEzZjIhaW1wb3J0YW50fS5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0e2NvbG9yOiM2NjYhaW1wb3J0YW50fS5ldF9wYl9iZ19sYXlvdXRfZGFya190YWJsZXQsLmV0X3BiX2JnX2xheW91dF9kYXJrX3RhYmxldCBoMSwuZXRfcGJfYmdfbGF5b3V0X2RhcmtfdGFibGV0IGgyLC5ldF9wYl9iZ19sYXlvdXRfZGFya190YWJsZXQgaDMsLmV0X3BiX2JnX2xheW91dF9kYXJrX3RhYmxldCBoNCwuZXRfcGJfYmdfbGF5b3V0X2RhcmtfdGFibGV0IGg1LC5ldF9wYl9iZ19sYXlvdXRfZGFya190YWJsZXQgaDZ7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LmV0X3BiX2JnX2xheW91dF9kYXJrX3RhYmxldC5ldF9wYl9idXR0b24sLmV0X3BiX2JnX2xheW91dF9kYXJrX3RhYmxldC5ldF9wYl9tb2R1bGUuZXRfcGJfYnV0dG9uLC5ldF9wYl9iZ19sYXlvdXRfZGFya190YWJsZXQgLmV0X3BiX21vcmVfYnV0dG9ue2NvbG9yOmluaGVyaXR9LmV0X3BiX2JnX2xheW91dF9kYXJrX3RhYmxldCAuZXRfcGJfZm9yZ290X3Bhc3N3b3JkIGF7Y29sb3I6I2ZmZn0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fbGVmdC10YWJsZXR7dGV4dC1hbGlnbjpsZWZ0fS5ldF9wYl9tb2R1bGUuZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXItdGFibGV0e3RleHQtYWxpZ246Y2VudGVyfS5ldF9wYl9tb2R1bGUuZXRfcGJfdGV4dF9hbGlnbl9yaWdodC10YWJsZXR7dGV4dC1hbGlnbjpyaWdodH0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fanVzdGlmaWVkLXRhYmxldHt0ZXh0LWFsaWduOmp1c3RpZnl9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuZXRfcGJfbW9yZV9idXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5ldF9vdmVybGF5LmV0X3BiX2lubGluZV9pY29uX3Bob25lOmJlZm9yZSwuZXRfcGJfaW5saW5lX2ljb25fcGhvbmU6YmVmb3Jle2NvbnRlbnQ6YXR0cihkYXRhLWljb24tcGhvbmUpfS5ldF9wYXJhbGxheF9iZy5ldF9wYXJhbGxheF9iZ19waG9uZV9leGlzdCwuZXRfcGFyYWxsYXhfZ3JhZGllbnQuZXRfcGFyYWxsYXhfZ3JhZGllbnRfcGhvbmVfZXhpc3R7ZGlzcGxheTpub25lfS5ldF9wYXJhbGxheF9iZy5ldF9wYXJhbGxheF9iZ19waG9uZSwuZXRfcGFyYWxsYXhfZ3JhZGllbnQuZXRfcGFyYWxsYXhfZ3JhZGllbnRfcGhvbmV7ZGlzcGxheTpibG9ja30uZXQtaGlkZS1tb2JpbGV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3Bob25lLmV0X3BiX2J1dHRvbiwuZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3Bob25lLmV0X3BiX21vZHVsZS5ldF9wYl9idXR0b24sLmV0X3BiX2JnX2xheW91dF9saWdodF9waG9uZSAuZXRfcGJfbW9yZV9idXR0b257Y29sb3I6IzJlYTNmMn0uZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3Bob25lIC5ldF9wYl9mb3Jnb3RfcGFzc3dvcmQgYXtjb2xvcjojNjY2fS5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfcGhvbmUgaDEsLmV0X3BiX2JnX2xheW91dF9saWdodF9waG9uZSBoMiwuZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3Bob25lIGgzLC5ldF9wYl9iZ19sYXlvdXRfbGlnaHRfcGhvbmUgaDQsLmV0X3BiX2JnX2xheW91dF9saWdodF9waG9uZSBoNSwuZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3Bob25lIGg2e2NvbG9yOiMzMzMhaW1wb3J0YW50fS5ldF9wYl9tb2R1bGUgLmV0X3BiX2JnX2xheW91dF9saWdodF9waG9uZS5ldF9wYl9idXR0b257Y29sb3I6IzJlYTNmMiFpbXBvcnRhbnR9LmV0X3BiX2JnX2xheW91dF9saWdodF9waG9uZXtjb2xvcjojNjY2IWltcG9ydGFudH0uZXRfcGJfYmdfbGF5b3V0X2RhcmtfcGhvbmUsLmV0X3BiX2JnX2xheW91dF9kYXJrX3Bob25lIGgxLC5ldF9wYl9iZ19sYXlvdXRfZGFya19waG9uZSBoMiwuZXRfcGJfYmdfbGF5b3V0X2RhcmtfcGhvbmUgaDMsLmV0X3BiX2JnX2xheW91dF9kYXJrX3Bob25lIGg0LC5ldF9wYl9iZ19sYXlvdXRfZGFya19waG9uZSBoNSwuZXRfcGJfYmdfbGF5b3V0X2RhcmtfcGhvbmUgaDZ7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LmV0X3BiX2JnX2xheW91dF9kYXJrX3Bob25lLmV0X3BiX2J1dHRvbiwuZXRfcGJfYmdfbGF5b3V0X2RhcmtfcGhvbmUuZXRfcGJfbW9kdWxlLmV0X3BiX2J1dHRvbiwuZXRfcGJfYmdfbGF5b3V0X2RhcmtfcGhvbmUgLmV0X3BiX21vcmVfYnV0dG9ue2NvbG9yOmluaGVyaXR9LmV0X3BiX21vZHVsZSAuZXRfcGJfYmdfbGF5b3V0X2RhcmtfcGhvbmUuZXRfcGJfYnV0dG9ue2NvbG9yOiNmZmYhaW1wb3J0YW50fS5ldF9wYl9iZ19sYXlvdXRfZGFya19waG9uZSAuZXRfcGJfZm9yZ290X3Bhc3N3b3JkIGF7Y29sb3I6I2ZmZn0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fbGVmdC1waG9uZXt0ZXh0LWFsaWduOmxlZnR9LmV0X3BiX21vZHVsZS5ldF9wYl90ZXh0X2FsaWduX2NlbnRlci1waG9uZXt0ZXh0LWFsaWduOmNlbnRlcn0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fcmlnaHQtcGhvbmV7dGV4dC1hbGlnbjpyaWdodH0uZXRfcGJfbW9kdWxlLmV0X3BiX3RleHRfYWxpZ25fanVzdGlmaWVkLXBob25le3RleHQtYWxpZ246anVzdGlmeX19QG1lZGlhIChtYXgtd2lkdGg6NDc5cHgpe2EuZXRfcGJfbW9yZV9idXR0b257ZGlzcGxheTpibG9ja319QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIGFuZCAobWF4LXdpZHRoOjk4MHB4KXtbZGF0YS1ldC1tdWx0aS12aWV3LWxvYWQtdGFibGV0LWhpZGRlbj10cnVlXTpub3QoLmV0X211bHRpX3ZpZXdfc3dhcHBlZCl7ZGlzcGxheTpub25lIWltcG9ydGFudH19QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpe1tkYXRhLWV0LW11bHRpLXZpZXctbG9hZC1waG9uZS1oaWRkZW49dHJ1ZV06bm90KC5ldF9tdWx0aV92aWV3X3N3YXBwZWQpe2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fS5ldF9wYl9tZW51LmV0X3BiX21lbnUtLXN0eWxlLWlubGluZV9jZW50ZXJlZF9sb2dvIC5ldF9wYl9tZW51X19tZW51IG5hdiB1bHstd2Via2l0LWJveC1wYWNrOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfUAtd2Via2l0LWtleWZyYW1lcyBtdWx0aS12aWV3LWltYWdlLWZhZGV7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MX01MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4wMSk7dHJhbnNmb3JtOnNjYWxlKDEuMDEpO29wYWNpdHk6MX10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX0KPC9zdHlsZT4KPHN0eWxlIGlkPSdkaXZpLWR5bmFtaWMtY3JpdGljYWwtaW5saW5lLWNzcycgdHlwZT0ndGV4dC9jc3MnPgpAZm9udC1mYWNle2ZvbnQtZmFtaWx5OkVUbW9kdWxlcztmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCgvd3AtY29udGVudC90aGVtZXMvRGl2aS9jb3JlL2FkbWluL2ZvbnRzL21vZHVsZXMvYWxsL21vZHVsZXMuZW90KTtzcmM6dXJsKC93cC1jb250ZW50L3RoZW1lcy9EaXZpL2NvcmUvYWRtaW4vZm9udHMvbW9kdWxlcy9hbGwvbW9kdWxlcy5lb3Q/I2llZml4KSBmb3JtYXQoImVtYmVkZGVkLW9wZW50eXBlIiksdXJsKC93cC1jb250ZW50L3RoZW1lcy9EaXZpL2NvcmUvYWRtaW4vZm9udHMvbW9kdWxlcy9hbGwvbW9kdWxlcy50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKSx1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL0RpdmkvY29yZS9hZG1pbi9mb250cy9tb2R1bGVzL2FsbC9tb2R1bGVzLndvZmYpIGZvcm1hdCgid29mZiIpLHVybCgvd3AtY29udGVudC90aGVtZXMvRGl2aS9jb3JlL2FkbWluL2ZvbnRzL21vZHVsZXMvYWxsL21vZHVsZXMuc3ZnI0VUbW9kdWxlcykgZm9ybWF0KCJzdmciKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWx9CkBtZWRpYSAobWluLXdpZHRoOjk4MXB4KXsuZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbiwuZXRfcGJfZ3V0dGVyczMuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW57bWFyZ2luLXJpZ2h0OjUuNSV9LmV0X3BiX2d1dHRlcnMzIC5ldF9wYl9jb2x1bW5fNF80LC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl80XzR7d2lkdGg6MTAwJX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX21vZHVsZSwuZXRfcGJfZ3V0dGVyczMuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fNF80IC5ldF9wYl9tb2R1bGV7bWFyZ2luLWJvdHRvbToyLjc1JX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8zXzQsLmV0X3BiX2d1dHRlcnMzLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzNfNHt3aWR0aDo3My42MjUlfS5ldF9wYl9ndXR0ZXJzMyAuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfbW9kdWxlLC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8zXzQgLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjMuNzM1JX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8yXzMsLmV0X3BiX2d1dHRlcnMzLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzJfM3t3aWR0aDo2NC44MzMlfS5ldF9wYl9ndXR0ZXJzMyAuZXRfcGJfY29sdW1uXzJfMyAuZXRfcGJfbW9kdWxlLC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8yXzMgLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjQuMjQyJX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8zXzUsLmV0X3BiX2d1dHRlcnMzLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzNfNXt3aWR0aDo1Ny44JX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8zXzUgLmV0X3BiX21vZHVsZSwuZXRfcGJfZ3V0dGVyczMuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fM181IC5ldF9wYl9tb2R1bGV7bWFyZ2luLWJvdHRvbTo0Ljc1OCV9LmV0X3BiX2d1dHRlcnMzIC5ldF9wYl9jb2x1bW5fMV8yLC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzJ7d2lkdGg6NDcuMjUlfS5ldF9wYl9ndXR0ZXJzMyAuZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfbW9kdWxlLC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzIgLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjUuODIlfS5ldF9wYl9ndXR0ZXJzMyAuZXRfcGJfY29sdW1uXzJfNSwuZXRfcGJfZ3V0dGVyczMuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMl81e3dpZHRoOjM2LjclfS5ldF9wYl9ndXR0ZXJzMyAuZXRfcGJfY29sdW1uXzJfNSAuZXRfcGJfbW9kdWxlLC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8yXzUgLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjcuNDkzJX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8xXzMsLmV0X3BiX2d1dHRlcnMzLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzFfM3t3aWR0aDoyOS42NjY3JX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8xXzMgLmV0X3BiX21vZHVsZSwuZXRfcGJfZ3V0dGVyczMuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMV8zIC5ldF9wYl9tb2R1bGV7bWFyZ2luLWJvdHRvbTo5LjI3JX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8xXzQsLmV0X3BiX2d1dHRlcnMzLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzFfNHt3aWR0aDoyMC44NzUlfS5ldF9wYl9ndXR0ZXJzMyAuZXRfcGJfY29sdW1uXzFfNCAuZXRfcGJfbW9kdWxlLC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzQgLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjEzLjE3NCV9LmV0X3BiX2d1dHRlcnMzIC5ldF9wYl9jb2x1bW5fMV81LC5ldF9wYl9ndXR0ZXJzMy5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzV7d2lkdGg6MTUuNiV9LmV0X3BiX2d1dHRlcnMzIC5ldF9wYl9jb2x1bW5fMV81IC5ldF9wYl9tb2R1bGUsLmV0X3BiX2d1dHRlcnMzLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzFfNSAuZXRfcGJfbW9kdWxle21hcmdpbi1ib3R0b206MTcuNjI4JX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8xXzYsLmV0X3BiX2d1dHRlcnMzLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzFfNnt3aWR0aDoxMi4wODMzJX0uZXRfcGJfZ3V0dGVyczMgLmV0X3BiX2NvbHVtbl8xXzYgLmV0X3BiX21vZHVsZSwuZXRfcGJfZ3V0dGVyczMuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMV82IC5ldF9wYl9tb2R1bGV7bWFyZ2luLWJvdHRvbToyMi43NTklfS5ldF9wYl9ndXR0ZXJzMyAuZXRfZnVsbF93aWR0aF9wYWdlLndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdHt3aWR0aDoyMC44NzUlO21hcmdpbi1yaWdodDo1LjUlO21hcmdpbi1ib3R0b206NS41JX0uZXRfcGJfZ3V0dGVyczMuZXRfbGVmdF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LC5ldF9wYl9ndXR0ZXJzMy5ldF9yaWdodF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0e3dpZHRoOjI4LjM1MyU7bWFyZ2luLXJpZ2h0OjcuNDclfS5ldF9wYl9ndXR0ZXJzMy5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IHVsLnByb2R1Y3RzLmNvbHVtbnMtMSBsaS5wcm9kdWN0LC5ldF9wYl9ndXR0ZXJzMy5ldF9yaWdodF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCB1bC5wcm9kdWN0cy5jb2x1bW5zLTEgbGkucHJvZHVjdHt3aWR0aDoxMDAlO21hcmdpbi1yaWdodDowfS5ldF9wYl9ndXR0ZXJzMy5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IHVsLnByb2R1Y3RzLmNvbHVtbnMtMiBsaS5wcm9kdWN0LC5ldF9wYl9ndXR0ZXJzMy5ldF9yaWdodF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCB1bC5wcm9kdWN0cy5jb2x1bW5zLTIgbGkucHJvZHVjdHt3aWR0aDo0OCU7bWFyZ2luLXJpZ2h0OjQlfS5ldF9wYl9ndXR0ZXJzMy5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IHVsLnByb2R1Y3RzLmNvbHVtbnMtMiBsaTpudGgtY2hpbGQoMm4rMiksLmV0X3BiX2d1dHRlcnMzLmV0X3JpZ2h0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IHVsLnByb2R1Y3RzLmNvbHVtbnMtMiBsaTpudGgtY2hpbGQoMm4rMil7bWFyZ2luLXJpZ2h0OjB9LmV0X3BiX2d1dHRlcnMzLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgdWwucHJvZHVjdHMuY29sdW1ucy0yIGxpOm50aC1jaGlsZCgzbisxKSwuZXRfcGJfZ3V0dGVyczMuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgdWwucHJvZHVjdHMuY29sdW1ucy0yIGxpOm50aC1jaGlsZCgzbisxKXtjbGVhcjpub25lfX0KQG1lZGlhIChtaW4td2lkdGg6OTgxcHgpey5ldF9wYl9ndXR0ZXIuZXRfcGJfZ3V0dGVyczIgI2xlZnQtYXJlYXt3aWR0aDo3Ny4yNSV9LmV0X3BiX2d1dHRlci5ldF9wYl9ndXR0ZXJzMiAjc2lkZWJhcnt3aWR0aDoyMi43NSV9LmV0X3BiX2d1dHRlcnMyLmV0X3JpZ2h0X3NpZGViYXIgI2xlZnQtYXJlYXtwYWRkaW5nLXJpZ2h0OjMlfS5ldF9wYl9ndXR0ZXJzMi5ldF9sZWZ0X3NpZGViYXIgI2xlZnQtYXJlYXtwYWRkaW5nLWxlZnQ6MyV9LmV0X3BiX2d1dHRlci5ldF9wYl9ndXR0ZXJzMi5ldF9yaWdodF9zaWRlYmFyICNtYWluLWNvbnRlbnQgLmNvbnRhaW5lcjpiZWZvcmV7cmlnaHQ6MjIuNzUlIWltcG9ydGFudH0uZXRfcGJfZ3V0dGVyLmV0X3BiX2d1dHRlcnMyLmV0X2xlZnRfc2lkZWJhciAjbWFpbi1jb250ZW50IC5jb250YWluZXI6YmVmb3Jle2xlZnQ6MjIuNzUlIWltcG9ydGFudH0uZXRfcGJfZ3V0dGVyczIgLmV0X3BiX2NvbHVtbiwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW57bWFyZ2luLXJpZ2h0OjMlfS5ldF9wYl9ndXR0ZXJzMiAuZXRfcGJfY29sdW1uXzRfNCwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fNF80e3dpZHRoOjEwMCV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fNF80IC5ldF9wYl9tb2R1bGUsLmV0X3BiX2d1dHRlcnMyLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzRfNCAuZXRfcGJfbW9kdWxle21hcmdpbi1ib3R0b206MS41JX0uZXRfcGJfZ3V0dGVyczIgLmV0X3BiX2NvbHVtbl8zXzQsLmV0X3BiX2d1dHRlcnMyLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzNfNHt3aWR0aDo3NC4yNSV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fM180IC5ldF9wYl9tb2R1bGUsLmV0X3BiX2d1dHRlcnMyLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfbW9kdWxle21hcmdpbi1ib3R0b206Mi4wMiV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fMl8zLC5ldF9wYl9ndXR0ZXJzMi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8yXzN7d2lkdGg6NjUuNjY3JX0uZXRfcGJfZ3V0dGVyczIgLmV0X3BiX2NvbHVtbl8yXzMgLmV0X3BiX21vZHVsZSwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMl8zIC5ldF9wYl9tb2R1bGV7bWFyZ2luLWJvdHRvbToyLjI4NCV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fM181LC5ldF9wYl9ndXR0ZXJzMi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8zXzV7d2lkdGg6NTguOCV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fM181IC5ldF9wYl9tb2R1bGUsLmV0X3BiX2d1dHRlcnMyLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzNfNSAuZXRfcGJfbW9kdWxle21hcmdpbi1ib3R0b206Mi41NTElfS5ldF9wYl9ndXR0ZXJzMiAuZXRfcGJfY29sdW1uXzFfMiwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMV8ye3dpZHRoOjQ4LjUlfS5ldF9wYl9ndXR0ZXJzMiAuZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfbW9kdWxlLC5ldF9wYl9ndXR0ZXJzMi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzIgLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjMuMDkzJX0uZXRfcGJfZ3V0dGVyczIgLmV0X3BiX2NvbHVtbl8yXzUsLmV0X3BiX2d1dHRlcnMyLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzJfNXt3aWR0aDozOC4yJX0uZXRfcGJfZ3V0dGVyczIgLmV0X3BiX2NvbHVtbl8yXzUgLmV0X3BiX21vZHVsZSwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMl81IC5ldF9wYl9tb2R1bGV7bWFyZ2luLWJvdHRvbTozLjkyNyV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fMV8zLC5ldF9wYl9ndXR0ZXJzMi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzN7d2lkdGg6MzEuMzMzMyV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fMV8zIC5ldF9wYl9tb2R1bGUsLmV0X3BiX2d1dHRlcnMyLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzFfMyAuZXRfcGJfbW9kdWxle21hcmdpbi1ib3R0b206NC43ODclfS5ldF9wYl9ndXR0ZXJzMiAuZXRfcGJfY29sdW1uXzFfNCwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMV80e3dpZHRoOjIyLjc1JX0uZXRfcGJfZ3V0dGVyczIgLmV0X3BiX2NvbHVtbl8xXzQgLmV0X3BiX21vZHVsZSwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMV80IC5ldF9wYl9tb2R1bGV7bWFyZ2luLWJvdHRvbTo2LjU5MyV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fMV81LC5ldF9wYl9ndXR0ZXJzMi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzV7d2lkdGg6MTcuNiV9LmV0X3BiX2d1dHRlcnMyIC5ldF9wYl9jb2x1bW5fMV81IC5ldF9wYl9tb2R1bGUsLmV0X3BiX2d1dHRlcnMyLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uXzFfNSAuZXRfcGJfbW9kdWxle21hcmdpbi1ib3R0b206OC41MjMlfS5ldF9wYl9ndXR0ZXJzMiAuZXRfcGJfY29sdW1uXzFfNiwuZXRfcGJfZ3V0dGVyczIuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW5fMV82e3dpZHRoOjE0LjE2NjclfS5ldF9wYl9ndXR0ZXJzMiAuZXRfcGJfY29sdW1uXzFfNiAuZXRfcGJfbW9kdWxlLC5ldF9wYl9ndXR0ZXJzMi5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbl8xXzYgLmV0X3BiX21vZHVsZXttYXJnaW4tYm90dG9tOjEwLjU4OCV9LmV0X3BiX2d1dHRlcnMyIC5ldF9mdWxsX3dpZHRoX3BhZ2Uud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0e3dpZHRoOjIyLjc1JTttYXJnaW4tcmlnaHQ6MyU7bWFyZ2luLWJvdHRvbTozJX0uZXRfcGJfZ3V0dGVyczIuZXRfbGVmdF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LC5ldF9wYl9ndXR0ZXJzMi5ldF9yaWdodF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0e3dpZHRoOjMwLjY0JTttYXJnaW4tcmlnaHQ6NC4wNCV9fQoucHJvZHVjdHt3b3JkLXdyYXA6YnJlYWstd29yZH1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX3dvb19jdXN0b21fYnV0dG9uX2ljb24gLmV0X3BiX2N1c3RvbV9idXR0b25faWNvbi5ldF9wYl9idXR0b246YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtaWNvbi10YWJsZXQpfX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmV0X3BiX3dvb19jdXN0b21fYnV0dG9uX2ljb24gLmV0X3BiX2N1c3RvbV9idXR0b25faWNvbi5ldF9wYl9idXR0b246YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtaWNvbi1waG9uZSl9fS5ldC1keW5hbWljLWNvbnRlbnQtd29vIGF7Y29sb3I6aW5oZXJpdCFpbXBvcnRhbnQ7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2ZvbnQtc3R5bGU6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtsZXR0ZXItc3BhY2luZzppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7dGV4dC1hbGlnbjppbmhlcml0O3RleHQtc2hhZG93OmluaGVyaXR9Lndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmhvdmVyIC5ldF9wYl93aWRnZXQgbGkgYTpob3Zlcntjb2xvcjojMmVhM2YyfS53b29jb21tZXJjZS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnl7bWFyZ2luLWJvdHRvbTowfS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQgLnJmcV9mb3JtX3dyYXA6YWZ0ZXJ7Y29udGVudDoiICI7ZGlzcGxheTpibG9jazt2aXNpYmlsaXR5OmhpZGRlbjtjbGVhcjpib3RoO2hlaWdodDowO2ZvbnQtc2l6ZTowfUBtZWRpYSAobWluLXdpZHRoOjk4MXB4KXsud29vY29tbWVyY2UtcGFnZTpub3QoLmV0LXRiLWhhcy10ZW1wbGF0ZSkgLmV0X3BiX3Nob3AgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpub3QoLmZpcnN0KXtjbGVhcjpub25lfX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgYW5kIChtYXgtd2lkdGg6OTgwcHgpey53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6bnRoLWNoaWxkKG4pe21hcmdpbjowIDcuNSUgNy41JSAwIWltcG9ydGFudDt3aWR0aDoyOC4zMzMlIWltcG9ydGFudDtjbGVhcjpub25lO2Zsb2F0OmxlZnQhaW1wb3J0YW50fS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKXttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoM24rMSl7Y2xlYXI6Ym90aH19QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6bnRoLWNoaWxkKG4pe21hcmdpbjowIDkuNSUgOS41JSAwIWltcG9ydGFudDt3aWR0aDo0NS4yNSUhaW1wb3J0YW50O2NsZWFyOm5vbmV9Lndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoMm4pe21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0Om50aC1jaGlsZChvZGQpe2NsZWFyOmJvdGh9fUBtZWRpYSAobWF4LXdpZHRoOjQ3OXB4KXsud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0Om50aC1jaGlsZChuKXttYXJnaW46MCAwIDExLjUlIWltcG9ydGFudDt3aWR0aDoxMDAlIWltcG9ydGFudH19Ci53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b246YWZ0ZXIsLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6YWZ0ZXIsLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlciwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmFmdGVyLC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlciwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQ6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmFmdGVyLC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDphZnRlciwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UgYnV0dG9uLnNpbmdsZV9hZGRfdG9fY2FydF9idXR0b24uYnV0dG9uOmFmdGVyLC53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC53b29jb21tZXJjZSBpbnB1dC5idXR0b246YWZ0ZXJ7Zm9udC1mYW1pbHk6RVRtb2R1bGVzIWltcG9ydGFudDtzcGVhazpub25lO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXZhcmlhbnQ6bm9ybWFsO3RleHQtdHJhbnNmb3JtOm5vbmU7bGluZS1oZWlnaHQ6MTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTt0ZXh0LXNoYWRvdzowIDA7ZGlyZWN0aW9uOmx0cn0uZXRfcGJfd29vX2N1c3RvbV9idXR0b25faWNvbiAuZXRfcGJfYnV0dG9uW2RhdGEtaWNvbl06bm90KFtkYXRhLWljb249IiJdKTphZnRlcntjb250ZW50OmF0dHIoZGF0YS1pY29uKSFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlLXBhZ2UgLm1lZGlhLWZyYW1lIC5tZWRpYS1mcmFtZS10b29sYmFyIGJ1dHRvbi5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgLm1lZGlhLWZyYW1lIC5tZWRpYS1mcmFtZS10b29sYmFyIGJ1dHRvbi5wb3N0LW5hdiAubmF2LWxpbmtzIC5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgLm1lZGlhLWZyYW1lIC5tZWRpYS1mcmFtZS10b29sYmFyIGJ1dHRvbi5yZWFkLW1vcmUtYnV0dG9ucywud29vY29tbWVyY2UgLm1lZGlhLWZyYW1lIC5tZWRpYS1mcmFtZS10b29sYmFyIGJ1dHRvbi5idXR0b24sLndvb2NvbW1lcmNlIC5tZWRpYS1mcmFtZSAubWVkaWEtZnJhbWUtdG9vbGJhciBidXR0b24ucG9zdC1uYXYgLm5hdi1saW5rcyAuYnV0dG9uLC53b29jb21tZXJjZSAubWVkaWEtZnJhbWUgLm1lZGlhLWZyYW1lLXRvb2xiYXIgYnV0dG9uLnJlYWQtbW9yZS1idXR0b25ze2Zsb2F0OmxlZnQhaW1wb3J0YW50fS53b29jb21tZXJjZS1wYWdlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLC53b29jb21tZXJjZS1wYWdlIC5tZWRpYS1mcmFtZSBidXR0b24ucG9zdC1uYXYgLm5hdi1saW5rcyAuYnV0dG9uLC53b29jb21tZXJjZS1wYWdlIC5tZWRpYS1mcmFtZSBidXR0b24ucmVhZC1tb3JlLWJ1dHRvbnMsLndvb2NvbW1lcmNlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLC53b29jb21tZXJjZSAubWVkaWEtZnJhbWUgYnV0dG9uLnBvc3QtbmF2IC5uYXYtbGlua3MgLmJ1dHRvbiwud29vY29tbWVyY2UgLm1lZGlhLWZyYW1lIGJ1dHRvbi5yZWFkLW1vcmUtYnV0dG9uc3ttYXJnaW4tbGVmdDoxMHB4O21hcmdpbi10b3A6MTVweDtwYWRkaW5nOjAgMTJweCAycHghaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMCFpbXBvcnRhbnQ7Zm9udC1zaXplOjEzcHghaW1wb3J0YW50O2JvcmRlci13aWR0aDoxcHghaW1wb3J0YW50O2JvcmRlci1jb2xvcjojY2NjIWltcG9ydGFudDt0ZXh0LWRlY29yYXRpb246bm9uZSFpbXBvcnRhbnQ7Y29sb3I6IzU1NSFpbXBvcnRhbnQ7YmFja2dyb3VuZDojZjdmN2Y3IWltcG9ydGFudDstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMCAjY2NjIWltcG9ydGFudDtib3gtc2hhZG93OjAgMXB4IDAgI2NjYyFpbXBvcnRhbnQ7dmVydGljYWwtYWxpZ246dG9wIWltcG9ydGFudH0ud29vY29tbWVyY2UtcGFnZSAubWVkaWEtZnJhbWUgYnV0dG9uLmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UtcGFnZSAubWVkaWEtZnJhbWUgYnV0dG9uLnBvc3QtbmF2IC5uYXYtbGlua3MgLmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UtcGFnZSAubWVkaWEtZnJhbWUgYnV0dG9uLnJlYWQtbW9yZS1idXR0b25zOmFmdGVyLC53b29jb21tZXJjZSAubWVkaWEtZnJhbWUgYnV0dG9uLmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UgLm1lZGlhLWZyYW1lIGJ1dHRvbi5wb3N0LW5hdiAubmF2LWxpbmtzIC5idXR0b246YWZ0ZXIsLndvb2NvbW1lcmNlIC5tZWRpYS1mcmFtZSBidXR0b24ucmVhZC1tb3JlLWJ1dHRvbnM6YWZ0ZXJ7Y29udGVudDoiIiFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlLXBhZ2UgLm1lZGlhLWZyYW1lIGJ1dHRvbi5idXR0b24tcHJpbWFyeSwud29vY29tbWVyY2UgLm1lZGlhLWZyYW1lIGJ1dHRvbi5idXR0b24tcHJpbWFyeXtiYWNrZ3JvdW5kOiMwMDg1YmEhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojMDA3M2FhICMwMDY3OTkgIzAwNjc5OSFpbXBvcnRhbnQ7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDAgIzAwNjc5OSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDFweCAwICMwMDY3OTkhaW1wb3J0YW50O2NvbG9yOiNmZmYhaW1wb3J0YW50O3RleHQtc2hhZG93OjAgLTFweCAxcHggIzAwNjc5OSwxcHggMCAxcHggIzAwNjc5OSwwIDFweCAxcHggIzAwNjc5OSwtMXB4IDAgMXB4ICMwMDY3OTkhaW1wb3J0YW50fS53b29jb21tZXJjZS1wYWdlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLXByaW1hcnk6aG92ZXIsLndvb2NvbW1lcmNlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZDojMDA4ZWMyIWltcG9ydGFudDtjb2xvcjojZmZmIWltcG9ydGFudDtib3JkZXItY29sb3I6IzAwNzNhYSAjMDA2Nzk5ICMwMDY3OTkhaW1wb3J0YW50fS53b29jb21tZXJjZS1wYWdlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLXByaW1hcnk6YWN0aXZlLC53b29jb21tZXJjZSAubWVkaWEtZnJhbWUgYnV0dG9uLmJ1dHRvbi1wcmltYXJ5OmFjdGl2ZXtiYWNrZ3JvdW5kOiMwMDczYWEhaW1wb3J0YW50Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDJweCAwICMwMDY3OTkhaW1wb3J0YW50O2JveC1zaGFkb3c6aW5zZXQgMCAycHggMCAjMDA2Nzk5IWltcG9ydGFudDtjb2xvcjojZmZmIWltcG9ydGFudDtib3JkZXItY29sb3I6IzAwNzNhYSAjMDA2Nzk5ICMwMDY3OTkhaW1wb3J0YW50fS53b29jb21tZXJjZS1wYWdlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLWhlcm8sLndvb2NvbW1lcmNlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLWhlcm97Zm9udC1zaXplOjE0cHghaW1wb3J0YW50O2hlaWdodDo0NnB4IWltcG9ydGFudDtsaW5lLWhlaWdodDo0NHB4O3BhZGRpbmc6MCAzNnB4IWltcG9ydGFudH0ud29vY29tbWVyY2UtcGFnZSAubWVkaWEtZnJhbWUgYnV0dG9uLmJ1dHRvbi1oZXJvOmhvdmVyLC53b29jb21tZXJjZSAubWVkaWEtZnJhbWUgYnV0dG9uLmJ1dHRvbi1oZXJvOmhvdmVye2JhY2tncm91bmQ6I2ZhZmFmYSFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiM5OTkhaW1wb3J0YW50O2NvbG9yOiMyMzI4MmQhaW1wb3J0YW50fS53b29jb21tZXJjZS1wYWdlIC5tZWRpYS1mcmFtZSBidXR0b24uYnV0dG9uLWhlcm86YWN0aXZlLC53b29jb21tZXJjZSAubWVkaWEtZnJhbWUgYnV0dG9uLmJ1dHRvbi1oZXJvOmFjdGl2ZXtiYWNrZ3JvdW5kOiNlZWUhaW1wb3J0YW50O2JvcmRlci1jb2xvcjojOTk5IWltcG9ydGFudDstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAycHggNXB4IC0zcHggcmdiYSgwLDAsMCwuNSkhaW1wb3J0YW50O2JveC1zaGFkb3c6aW5zZXQgMCAycHggNXB4IC0zcHggcmdiYSgwLDAsMCwuNSkhaW1wb3J0YW50Oy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMXB4KSFpbXBvcnRhbnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMXB4KSFpbXBvcnRhbnQ7b3V0bGluZToycHggc29saWQgdHJhbnNwYXJlbnQhaW1wb3J0YW50O291dGxpbmUtb2Zmc2V0OjAhaW1wb3J0YW50fQojZXQtc2Vjb25kYXJ5LW1lbnUgbGksI3RvcC1tZW51IGxpe3dvcmQtd3JhcDpicmVhay13b3JkfS5uYXYgbGkgdWwsLmV0X21vYmlsZV9tZW51e2JvcmRlci1jb2xvcjojMkVBM0YyfS5tb2JpbGVfbWVudV9iYXI6YmVmb3JlLC5tb2JpbGVfbWVudV9iYXI6YWZ0ZXIsI3RvcC1tZW51IGxpLmN1cnJlbnQtbWVudS1hbmNlc3Rvcj5hLCN0b3AtbWVudSBsaS5jdXJyZW50LW1lbnUtaXRlbT5he2NvbG9yOiMyRUEzRjJ9I21haW4taGVhZGVyey13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIDAuNHMsIGNvbG9yIDAuNHMsIG9wYWNpdHkgMC40cyBlYXNlLWluLW91dCwgLXdlYmtpdC10cmFuc2Zvcm0gMC40czt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgMC40cywgY29sb3IgMC40cywgb3BhY2l0eSAwLjRzIGVhc2UtaW4tb3V0LCAtd2Via2l0LXRyYW5zZm9ybSAwLjRzO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAwLjRzLCBjb2xvciAwLjRzLCB0cmFuc2Zvcm0gMC40cywgb3BhY2l0eSAwLjRzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAwLjRzLCBjb2xvciAwLjRzLCB0cmFuc2Zvcm0gMC40cywgb3BhY2l0eSAwLjRzIGVhc2UtaW4tb3V0LCAtd2Via2l0LXRyYW5zZm9ybSAwLjRzfSNtYWluLWhlYWRlci5ldC1kaXNhYmxlZC1hbmltYXRpb25zICp7LXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOjBzICFpbXBvcnRhbnQ7dHJhbnNpdGlvbi1kdXJhdGlvbjowcyAhaW1wb3J0YW50fS5jb250YWluZXJ7dGV4dC1hbGlnbjpsZWZ0O3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9maXhlZF9uYXYuZXRfc2hvd19uYXYgI3BhZ2UtY29udGFpbmVye3BhZGRpbmctdG9wOjgwcHh9LmV0X2ZpeGVkX25hdi5ldF9zaG93X25hdi5ldC10YiAjcGFnZS1jb250YWluZXIsLmV0X2ZpeGVkX25hdi5ldF9zaG93X25hdi5ldC10Yi1oYXMtaGVhZGVyICNwYWdlLWNvbnRhaW5lcntwYWRkaW5nLXRvcDowICFpbXBvcnRhbnR9LmV0X2ZpeGVkX25hdi5ldF9zaG93X25hdi5ldF9zZWNvbmRhcnlfbmF2X2VuYWJsZWQgI3BhZ2UtY29udGFpbmVye3BhZGRpbmctdG9wOjExMXB4fS5ldF9maXhlZF9uYXYuZXRfc2hvd19uYXYuZXRfc2Vjb25kYXJ5X25hdl9lbmFibGVkLmV0X2hlYWRlcl9zdHlsZV9jZW50ZXJlZCAjcGFnZS1jb250YWluZXJ7cGFkZGluZy10b3A6MTc3cHh9LmV0X2ZpeGVkX25hdi5ldF9zaG93X25hdi5ldF9oZWFkZXJfc3R5bGVfY2VudGVyZWQgI3BhZ2UtY29udGFpbmVye3BhZGRpbmctdG9wOjE0N3B4fS5ldF9maXhlZF9uYXYgI21haW4taGVhZGVye3Bvc2l0aW9uOmZpeGVkfS5ldC1jbG91ZC1pdGVtLWVkaXRvciAjcGFnZS1jb250YWluZXJ7cGFkZGluZy10b3A6MCAhaW1wb3J0YW50fS5ldF9oZWFkZXJfc3R5bGVfbGVmdCAjZXQtdG9wLW5hdmlnYXRpb257cGFkZGluZy10b3A6MzNweH0uZXRfaGVhZGVyX3N0eWxlX2xlZnQgI2V0LXRvcC1uYXZpZ2F0aW9uIG5hdj51bD5saT5he3BhZGRpbmctYm90dG9tOjMzcHh9LmV0X2hlYWRlcl9zdHlsZV9sZWZ0IC5sb2dvX2NvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS5ldF9oZWFkZXJfc3R5bGVfbGVmdCAjZXQtdG9wLW5hdmlnYXRpb24gLm1vYmlsZV9tZW51X2JhcntwYWRkaW5nLWJvdHRvbToyNHB4fS5ldF9oaWRlX3NlYXJjaF9pY29uICNldF90b3Bfc2VhcmNoe2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fSNsb2dve3dpZHRoOmF1dG87LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjRzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXQ7bWFyZ2luLWJvdHRvbTowO21heC1oZWlnaHQ6NTQlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2Zsb2F0Om5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsIDAsIDApfS5ldF9wYl9zdmdfbG9nbyAjbG9nb3toZWlnaHQ6NTQlfS5sb2dvX2NvbnRhaW5lcnstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgMC40cyBlYXNlLWluLW91dH1zcGFuLmxvZ29faGVscGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxMDAlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDowfS5zYWZhcmkgLmNlbnRlcmVkLWlubGluZS1sb2dvLXdyYXB7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwgMCwgMCk7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjRzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXR9I2V0LWRlZmluZS1sb2dvLXdyYXAgaW1ne3dpZHRoOjEwMCV9LmdlY2tvICNldC1kZWZpbmUtbG9nby13cmFwLnN2Zy1sb2dve3Bvc2l0aW9uOnJlbGF0aXZlICFpbXBvcnRhbnR9I3RvcC1tZW51LW5hdiwjdG9wLW1lbnV7bGluZS1oZWlnaHQ6MH0jZXQtdG9wLW5hdmlnYXRpb257Zm9udC13ZWlnaHQ6NjAwfS5ldF9maXhlZF9uYXYgI2V0LXRvcC1uYXZpZ2F0aW9uey13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC40cyBlYXNlLWluLW91dDt0cmFuc2l0aW9uOmFsbCAwLjRzIGVhc2UtaW4tb3V0fS5ldC1jYXJ0LWluZm8gc3BhbjpiZWZvcmV7Y29udGVudDoiXGUwN2EiO21hcmdpbi1yaWdodDoxMHB4O3Bvc2l0aW9uOnJlbGF0aXZlfW5hdiN0b3AtbWVudS1uYXYsI3RvcC1tZW51LG5hdi5ldC1tZW51LW5hdiwuZXQtbWVudXtmbG9hdDpsZWZ0fSN0b3AtbWVudSBsaXtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTRweDtwYWRkaW5nLXJpZ2h0OjIycHh9I3RvcC1tZW51PmxpOmxhc3QtY2hpbGR7cGFkZGluZy1yaWdodDowfS5ldF9mdWxsd2lkdGhfbmF2LmV0X25vbl9maXhlZF9uYXYuZXRfaGVhZGVyX3N0eWxlX2xlZnQgI3RvcC1tZW51PmxpOmxhc3QtY2hpbGQ+dWwuc3ViLW1lbnV7cmlnaHQ6MH0jdG9wLW1lbnUgYXtjb2xvcjpyZ2JhKDAsMCwwLDAuNik7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgMC40cyBlYXNlLWluLW91dH0jdG9wLW1lbnUtbmF2PnVsPmxpPmE6aG92ZXJ7b3BhY2l0eTowLjc7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAwLjRzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXR9I2V0X3NlYXJjaF9pY29uOmJlZm9yZXtjb250ZW50OiJcNTUiO2ZvbnQtc2l6ZToxN3B4O2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTNweH0jZXRfc2VhcmNoX2ljb246aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9I2V0X3RvcF9zZWFyY2h7ZmxvYXQ6cmlnaHQ7bWFyZ2luOjNweCAwIDAgMjJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO3dpZHRoOjE4cHh9I2V0X3RvcF9zZWFyY2guZXRfc2VhcmNoX29wZW5lZHtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlfS5ldC1zZWFyY2gtZm9ybXt0b3A6MDtib3R0b206MDtyaWdodDowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTAwMDt3aWR0aDoxMDAlfS5ldC1zZWFyY2gtZm9ybSBpbnB1dHt3aWR0aDo5MCU7Ym9yZGVyOm5vbmU7Y29sb3I6IzMzMztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtyaWdodDozMHB4O21hcmdpbjphdXRvO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmV0LXNlYXJjaC1mb3JtIC5ldC1zZWFyY2gtZmllbGQ6Oi1tcy1jbGVhcnt3aWR0aDowO2hlaWdodDowO2Rpc3BsYXk6bm9uZX0uZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyey13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmU7LW8tYW5pbWF0aW9uOm5vbmV9LmNvbnRhaW5lci5ldF9zZWFyY2hfZm9ybV9jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7b3BhY2l0eTowO2hlaWdodDoxcHh9LmNvbnRhaW5lci5ldF9zZWFyY2hfZm9ybV9jb250YWluZXIuZXRfcGJfc2VhcmNoX3Zpc2libGV7ei1pbmRleDo5OTk7LXdlYmtpdC1hbmltYXRpb246ZmFkZUluVG9wIDFzIDEgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTthbmltYXRpb246ZmFkZUluVG9wIDFzIDEgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKX0uZXRfcGJfc2VhcmNoX3Zpc2libGUuZXRfcGJfbm9fYW5pbWF0aW9ue29wYWNpdHk6MX0uZXRfcGJfc2VhcmNoX2Zvcm1faGlkZGVuey13ZWJraXQtYW5pbWF0aW9uOmZhZGVPdXRUb3AgMXMgMSBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO2FuaW1hdGlvbjpmYWRlT3V0VG9wIDFzIDEgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKX1zcGFuLmV0X2Nsb3NlX3NlYXJjaF9maWVsZHtkaXNwbGF5OmJsb2NrO3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7ei1pbmRleDo5OTk5OTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2N1cnNvcjpwb2ludGVyO3RvcDowO2JvdHRvbTowO21hcmdpbjphdXRvfXNwYW4uZXRfY2xvc2Vfc2VhcmNoX2ZpZWxkOmFmdGVye2ZvbnQtZmFtaWx5OidFVG1vZHVsZXMnO2NvbnRlbnQ6J1w0ZCc7c3BlYWs6bm9uZTtmb250LXdlaWdodDpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDt0ZXh0LXRyYW5zZm9ybTpub25lO2xpbmUtaGVpZ2h0OjE7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtmb250LXNpemU6MzJweDtkaXNwbGF5OmlubGluZS1ibG9jazstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmNvbnRhaW5lci5ldF9tZW51X2NvbnRhaW5lcnt6LWluZGV4Ojk5fS5jb250YWluZXIuZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyLmV0X3BiX3NlYXJjaF9mb3JtX2hpZGRlbnt6LWluZGV4OjEgIWltcG9ydGFudH0uZXRfc2VhcmNoX291dGVye3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS5jb250YWluZXIuZXRfcGJfbWVudV9oaWRkZW57ei1pbmRleDotMX1mb3JtLmV0LXNlYXJjaC1mb3Jte2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwKSAhaW1wb3J0YW50fWlucHV0W3R5cGU9InNlYXJjaCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfS5ldC1jYXJ0LWluZm97Y29sb3I6aW5oZXJpdH0jZXQtdG9wLW5hdmlnYXRpb24gLmV0LWNhcnQtaW5mb3tmbG9hdDpsZWZ0O21hcmdpbjotMnB4IDAgMCAyMnB4O2ZvbnQtc2l6ZToxNnB4fSNldC10b3AtbmF2aWdhdGlvbntmbG9hdDpyaWdodH0jdG9wLW1lbnUgbGkgbGl7cGFkZGluZzowIDIwcHg7bWFyZ2luOjB9I3RvcC1tZW51IGxpIGxpIGF7cGFkZGluZzo2cHggMjBweDt3aWR0aDoyMDBweH0ubmF2IGxpLmV0LXRvdWNoLWhvdmVyPnVse29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGV9I3RvcC1tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuPmE6Zmlyc3QtY2hpbGQ6YWZ0ZXIsI2V0LXNlY29uZGFyeS1uYXYgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YTpmaXJzdC1jaGlsZDphZnRlcntmb250LWZhbWlseTonRVRtb2R1bGVzJztjb250ZW50OiIzIjtmb250LXNpemU6MTZweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO2ZvbnQtd2VpZ2h0OjgwMH0jdG9wLW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YTpmaXJzdC1jaGlsZCwjZXQtc2Vjb25kYXJ5LW5hdiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbj5hOmZpcnN0LWNoaWxke3BhZGRpbmctcmlnaHQ6MjBweH0jdG9wLW1lbnUgbGkgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YTpmaXJzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0OjQwcHh9I3RvcC1tZW51IGxpIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuPmE6Zmlyc3QtY2hpbGQ6YWZ0ZXJ7cmlnaHQ6MjBweDt0b3A6NnB4fSN0b3AtbWVudSBsaS5tZWdhLW1lbnV7cG9zaXRpb246aW5oZXJpdH0jdG9wLW1lbnUgbGkubWVnYS1tZW51PnVse3BhZGRpbmc6MzBweCAyMHB4O3Bvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7d2lkdGg6MTAwJTtsZWZ0OjAgIWltcG9ydGFudH0jdG9wLW1lbnUgbGkubWVnYS1tZW51IHVsIGxpe21hcmdpbjowO2Zsb2F0OmxlZnQgIWltcG9ydGFudDtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7cGFkZGluZzowICFpbXBvcnRhbnR9I3RvcC1tZW51IGxpLm1lZ2EtbWVudT51bD5saTpudGgtb2YtdHlwZSg0bil7Y2xlYXI6cmlnaHR9I3RvcC1tZW51IGxpLm1lZ2EtbWVudT51bD5saTpudGgtb2YtdHlwZSg0bisxKXtjbGVhcjpsZWZ0fSN0b3AtbWVudSBsaS5tZWdhLW1lbnUgdWwgbGkgbGl7d2lkdGg6MTAwJX0jdG9wLW1lbnUgbGkubWVnYS1tZW51IGxpPnVsey13ZWJraXQtYW5pbWF0aW9uOm5vbmUgIWltcG9ydGFudDthbmltYXRpb246bm9uZSAhaW1wb3J0YW50O3BhZGRpbmc6MHB4O2JvcmRlcjpub25lO2xlZnQ6YXV0bzt0b3A6YXV0bzt3aWR0aDo5MCUgIWltcG9ydGFudDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LWJveC1zaGFkb3c6bm9uZTtib3gtc2hhZG93Om5vbmV9I3RvcC1tZW51IGxpLm1lZ2EtbWVudSBsaSB1bHt2aXNpYmlsaXR5OnZpc2libGU7b3BhY2l0eToxO2Rpc3BsYXk6bm9uZX0jdG9wLW1lbnUgbGkubWVnYS1tZW51LmV0LWhvdmVyIGxpIHVse2Rpc3BsYXk6YmxvY2t9I3RvcC1tZW51IGxpLm1lZ2EtbWVudS5ldC1ob3Zlcj51bHtvcGFjaXR5OjEgIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUgIWltcG9ydGFudH0jdG9wLW1lbnUgbGkubWVnYS1tZW51PnVsPmxpPmF7d2lkdGg6OTAlO3BhZGRpbmc6MCAyMHB4IDEwcHh9I3RvcC1tZW51IGxpLm1lZ2EtbWVudT51bD5saT5hOmZpcnN0LWNoaWxke3BhZGRpbmctdG9wOjAgIWltcG9ydGFudDtmb250LXdlaWdodDpib2xkO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4wMyl9I3RvcC1tZW51IGxpLm1lZ2EtbWVudT51bD5saT5hOmZpcnN0LWNoaWxkOmhvdmVye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQgIWltcG9ydGFudH0jdG9wLW1lbnUgbGkubWVnYS1tZW51IGxpPmF7d2lkdGg6MTAwJX0jdG9wLW1lbnUgbGkubWVnYS1tZW51Lm1lZ2EtbWVudS1wYXJlbnQgbGkgbGksI3RvcC1tZW51IGxpLm1lZ2EtbWVudS5tZWdhLW1lbnUtcGFyZW50IGxpPmF7d2lkdGg6MTAwJSAhaW1wb3J0YW50fSN0b3AtbWVudSBsaS5tZWdhLW1lbnUubWVnYS1tZW51LXBhcmVudCBsaT4uc3ViLW1lbnV7ZmxvYXQ6bGVmdDt3aWR0aDoxMDAlICFpbXBvcnRhbnR9I3RvcC1tZW51IGxpLm1lZ2EtbWVudT51bD5saXt3aWR0aDoyNSU7bWFyZ2luOjB9I3RvcC1tZW51IGxpLm1lZ2EtbWVudS5tZWdhLW1lbnUtcGFyZW50LTM+dWw+bGl7d2lkdGg6MzMuMzMlfSN0b3AtbWVudSBsaS5tZWdhLW1lbnUubWVnYS1tZW51LXBhcmVudC0yPnVsPmxpe3dpZHRoOjUwJX0jdG9wLW1lbnUgbGkubWVnYS1tZW51Lm1lZ2EtbWVudS1wYXJlbnQtMT51bD5saXt3aWR0aDoxMDAlfSN0b3AtbWVudSBsaS5tZWdhLW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YTpmaXJzdC1jaGlsZDphZnRlcntkaXNwbGF5Om5vbmV9I3RvcC1tZW51IGxpLm1lZ2EtbWVudT51bD5saT51bD5saXt3aWR0aDoxMDAlO21hcmdpbjowfSNldF9tb2JpbGVfbmF2X21lbnV7ZmxvYXQ6cmlnaHQ7ZGlzcGxheTpub25lfS5tb2JpbGVfbWVudV9iYXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDowfS5tb2JpbGVfbWVudV9iYXI6YmVmb3JlLC5ldF90b2dnbGVfc2xpZGVfbWVudTphZnRlcntjb250ZW50OiJcNjEiO2ZvbnQtc2l6ZTozMnB4O2xlZnQ6MDtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MDtjdXJzb3I6cG9pbnRlcn0ubW9iaWxlX25hdiAuc2VsZWN0X3BhZ2V7ZGlzcGxheTpub25lfS5ldF9wYl9tZW51X2hpZGRlbiAjdG9wLW1lbnUsLmV0X3BiX21lbnVfaGlkZGVuICNldF9zZWFyY2hfaWNvbjpiZWZvcmUsLmV0X3BiX21lbnVfaGlkZGVuIC5ldC1jYXJ0LWluZm97b3BhY2l0eTowOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVPdXRCb3R0b20gMXMgMSBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO2FuaW1hdGlvbjpmYWRlT3V0Qm90dG9tIDFzIDEgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKX0uZXRfcGJfbWVudV92aXNpYmxlICN0b3AtbWVudSwuZXRfcGJfbWVudV92aXNpYmxlICNldF9zZWFyY2hfaWNvbjpiZWZvcmUsLmV0X3BiX21lbnVfdmlzaWJsZSAuZXQtY2FydC1pbmZve3otaW5kZXg6OTk7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVJbkJvdHRvbSAxcyAxIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7YW5pbWF0aW9uOmZhZGVJbkJvdHRvbSAxcyAxIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSl9LmV0X3BiX21lbnVfaGlkZGVuICN0b3AtbWVudSwuZXRfcGJfbWVudV9oaWRkZW4gI2V0X3NlYXJjaF9pY29uOmJlZm9yZSwuZXRfcGJfbWVudV9oaWRkZW4gLm1vYmlsZV9tZW51X2JhcntvcGFjaXR5OjA7LXdlYmtpdC1hbmltYXRpb246ZmFkZU91dEJvdHRvbSAxcyAxIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7YW5pbWF0aW9uOmZhZGVPdXRCb3R0b20gMXMgMSBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpfS5ldF9wYl9tZW51X3Zpc2libGUgI3RvcC1tZW51LC5ldF9wYl9tZW51X3Zpc2libGUgI2V0X3NlYXJjaF9pY29uOmJlZm9yZSwuZXRfcGJfbWVudV92aXNpYmxlIC5tb2JpbGVfbWVudV9iYXJ7ei1pbmRleDo5OTtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246ZmFkZUluQm90dG9tIDFzIDEgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTthbmltYXRpb246ZmFkZUluQm90dG9tIDFzIDEgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKX0uZXRfcGJfbm9fYW5pbWF0aW9uICN0b3AtbWVudSwuZXRfcGJfbm9fYW5pbWF0aW9uICNldF9zZWFyY2hfaWNvbjpiZWZvcmUsLmV0X3BiX25vX2FuaW1hdGlvbiAubW9iaWxlX21lbnVfYmFyLC5ldF9wYl9ub19hbmltYXRpb24uZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVye2FuaW1hdGlvbjpub25lICFpbXBvcnRhbnQ7LW8tYW5pbWF0aW9uOm5vbmUgIWltcG9ydGFudDstd2Via2l0LWFuaW1hdGlvbjpub25lICFpbXBvcnRhbnQ7LW1vei1hbmltYXRpb246bm9uZSAhaW1wb3J0YW50fWJvZHkuYWRtaW4tYmFyLmV0X2ZpeGVkX25hdiAjbWFpbi1oZWFkZXJ7dG9wOjMycHh9Ym9keS5ldC13cC1wcmUtM184LmFkbWluLWJhci5ldF9maXhlZF9uYXYgI21haW4taGVhZGVye3RvcDoyOHB4fWJvZHkuZXRfZml4ZWRfbmF2LmV0X3NlY29uZGFyeV9uYXZfZW5hYmxlZCAjbWFpbi1oZWFkZXJ7dG9wOjMwcHh9Ym9keS5hZG1pbi1iYXIuZXRfZml4ZWRfbmF2LmV0X3NlY29uZGFyeV9uYXZfZW5hYmxlZCAjbWFpbi1oZWFkZXJ7dG9wOjYzcHh9QG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogOTgxcHgpey5ldF9oaWRlX3ByaW1hcnlfbG9nbyAjbWFpbi1oZWFkZXI6bm90KC5ldC1maXhlZC1oZWFkZXIpIC5sb2dvX2NvbnRhaW5lciwuZXRfaGlkZV9maXhlZF9sb2dvICNtYWluLWhlYWRlci5ldC1maXhlZC1oZWFkZXIgLmxvZ29fY29udGFpbmVye2hlaWdodDowO29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgMC40cyBlYXNlLWluLW91dH0uZXRfaGlkZV9wcmltYXJ5X2xvZ28gI21haW4taGVhZGVyOm5vdCguZXQtZml4ZWQtaGVhZGVyKSAuY2VudGVyZWQtaW5saW5lLWxvZ28td3JhcCwuZXRfaGlkZV9maXhlZF9sb2dvICNtYWluLWhlYWRlci5ldC1maXhlZC1oZWFkZXIgLmNlbnRlcmVkLWlubGluZS1sb2dvLXdyYXB7aGVpZ2h0OjA7b3BhY2l0eTowO3BhZGRpbmc6MH0uZXQtYW5pbWF0ZWQtY29udGVudCNwYWdlLWNvbnRhaW5lcnstd2Via2l0LXRyYW5zaXRpb246bWFyZ2luLXRvcCAwLjRzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246bWFyZ2luLXRvcCAwLjRzIGVhc2UtaW4tb3V0fS5ldF9oaWRlX25hdiAjcGFnZS1jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfS5ldF9mdWxsd2lkdGhfbmF2IC5ldC1zZWFyY2gtZm9ybSwuZXRfZnVsbHdpZHRoX25hdiAuZXRfY2xvc2Vfc2VhcmNoX2ZpZWxke3JpZ2h0OjMwcHh9I21haW4taGVhZGVyLmV0LWZpeGVkLWhlYWRlcnstd2Via2l0LWJveC1zaGFkb3c6MCAwIDdweCByZ2JhKDAsMCwwLDAuMSkgIWltcG9ydGFudDtib3gtc2hhZG93OjAgMCA3cHggcmdiYSgwLDAsMCwwLjEpICFpbXBvcnRhbnR9LmV0X2hlYWRlcl9zdHlsZV9sZWZ0IC5ldC1maXhlZC1oZWFkZXIgI2V0LXRvcC1uYXZpZ2F0aW9ue3BhZGRpbmctdG9wOjIwcHh9LmV0X2hlYWRlcl9zdHlsZV9sZWZ0IC5ldC1maXhlZC1oZWFkZXIgI2V0LXRvcC1uYXZpZ2F0aW9uIG5hdj51bD5saT5he3BhZGRpbmctYm90dG9tOjIwcHh9LmV0X2hpZGVfbmF2LmV0X2ZpeGVkX25hdiAjbWFpbi1oZWFkZXJ7b3BhY2l0eTowfS5ldF9oaWRlX25hdi5ldF9maXhlZF9uYXYgLmV0LWZpeGVkLWhlYWRlciNtYWluLWhlYWRlcnstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDBweCkgIWltcG9ydGFudDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwcHgpICFpbXBvcnRhbnQ7b3BhY2l0eToxfS5ldF9oaWRlX25hdiAuY2VudGVyZWQtaW5saW5lLWxvZ28td3JhcCwuZXRfaGlkZV9uYXYuZXRfZml4ZWRfbmF2ICNtYWluLWhlYWRlciwuZXRfaGlkZV9uYXYuZXRfZml4ZWRfbmF2ICNtYWluLWhlYWRlciwuZXRfaGlkZV9uYXYgLmNlbnRlcmVkLWlubGluZS1sb2dvLXdyYXB7LXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOi43czt0cmFuc2l0aW9uLWR1cmF0aW9uOi43c30uZXRfaGlkZV9uYXYgI3BhZ2UtY29udGFpbmVye3BhZGRpbmctdG9wOjAgIWltcG9ydGFudH0uZXRfcHJpbWFyeV9uYXZfZHJvcGRvd25fYW5pbWF0aW9uX2ZhZGUgI2V0LXRvcC1uYXZpZ2F0aW9uIHVsIGxpOmhvdmVyPnVsLC5ldF9zZWNvbmRhcnlfbmF2X2Ryb3Bkb3duX2FuaW1hdGlvbl9mYWRlICNldC1zZWNvbmRhcnktbmF2IGxpOmhvdmVyPnVsey13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246YWxsIC4ycyBlYXNlLWluLW91dH0uZXRfcHJpbWFyeV9uYXZfZHJvcGRvd25fYW5pbWF0aW9uX3NsaWRlICNldC10b3AtbmF2aWdhdGlvbiB1bCBsaTpob3Zlcj51bCwuZXRfc2Vjb25kYXJ5X25hdl9kcm9wZG93bl9hbmltYXRpb25fc2xpZGUgI2V0LXNlY29uZGFyeS1uYXYgbGk6aG92ZXI+dWx7LXdlYmtpdC1hbmltYXRpb246ZmFkZUxlZnQgLjRzIGVhc2UtaW4tb3V0O2FuaW1hdGlvbjpmYWRlTGVmdCAuNHMgZWFzZS1pbi1vdXR9LmV0X3ByaW1hcnlfbmF2X2Ryb3Bkb3duX2FuaW1hdGlvbl9leHBhbmQgI2V0LXRvcC1uYXZpZ2F0aW9uIHVsIGxpOmhvdmVyPnVsLC5ldF9zZWNvbmRhcnlfbmF2X2Ryb3Bkb3duX2FuaW1hdGlvbl9leHBhbmQgI2V0LXNlY29uZGFyeS1uYXYgbGk6aG92ZXI+dWx7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjAgMDt0cmFuc2Zvcm0tb3JpZ2luOjAgMDstd2Via2l0LWFuaW1hdGlvbjpHcm93IC40cyBlYXNlLWluLW91dDthbmltYXRpb246R3JvdyAuNHMgZWFzZS1pbi1vdXQ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUgIWltcG9ydGFudDtiYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUgIWltcG9ydGFudH0uZXRfcHJpbWFyeV9uYXZfZHJvcGRvd25fYW5pbWF0aW9uX2ZsaXAgI2V0LXRvcC1uYXZpZ2F0aW9uIHVsIGxpIHVsIGxpOmhvdmVyPnVsLC5ldF9zZWNvbmRhcnlfbmF2X2Ryb3Bkb3duX2FuaW1hdGlvbl9mbGlwICNldC1zZWNvbmRhcnktbmF2IHVsIGxpOmhvdmVyPnVsey13ZWJraXQtYW5pbWF0aW9uOmZsaXBJblggLjZzIGVhc2UtaW4tb3V0O2FuaW1hdGlvbjpmbGlwSW5YIC42cyBlYXNlLWluLW91dDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZSAhaW1wb3J0YW50O2JhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZSAhaW1wb3J0YW50fS5ldF9wcmltYXJ5X25hdl9kcm9wZG93bl9hbmltYXRpb25fZmxpcCAjZXQtdG9wLW5hdmlnYXRpb24gdWwgbGk6aG92ZXI+dWwsLmV0X3NlY29uZGFyeV9uYXZfZHJvcGRvd25fYW5pbWF0aW9uX2ZsaXAgI2V0LXNlY29uZGFyeS1uYXYgbGk6aG92ZXI+dWx7LXdlYmtpdC1hbmltYXRpb246ZmxpcEluWSAuNnMgZWFzZS1pbi1vdXQ7YW5pbWF0aW9uOmZsaXBJblkgLjZzIGVhc2UtaW4tb3V0Oy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlICFpbXBvcnRhbnQ7YmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlICFpbXBvcnRhbnR9LmV0X2Z1bGx3aWR0aF9uYXYgI21haW4taGVhZGVyIC5jb250YWluZXJ7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTtwYWRkaW5nLXJpZ2h0OjMycHg7cGFkZGluZy1sZWZ0OjMwcHh9LmV0X25vbl9maXhlZF9uYXYuZXRfZnVsbHdpZHRoX25hdi5ldF9oZWFkZXJfc3R5bGVfbGVmdCAjbWFpbi1oZWFkZXIgLmNvbnRhaW5lcntwYWRkaW5nLWxlZnQ6MH0uZXRfbm9uX2ZpeGVkX25hdi5ldF9mdWxsd2lkdGhfbmF2LmV0X2hlYWRlcl9zdHlsZV9sZWZ0IC5sb2dvX2NvbnRhaW5lcntwYWRkaW5nLWxlZnQ6MzBweH19QG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTgwcHgpey5ldF9maXhlZF9uYXYuZXRfc2hvd19uYXYuZXRfc2Vjb25kYXJ5X25hdl9lbmFibGVkICNwYWdlLWNvbnRhaW5lciwuZXRfZml4ZWRfbmF2LmV0X3Nob3dfbmF2ICNwYWdlLWNvbnRhaW5lcntwYWRkaW5nLXRvcDo4MHB4fS5ldF9maXhlZF9uYXYuZXRfc2hvd19uYXYuZXQtdGIgI3BhZ2UtY29udGFpbmVyLC5ldF9maXhlZF9uYXYuZXRfc2hvd19uYXYuZXQtdGItaGFzLWhlYWRlciAjcGFnZS1jb250YWluZXJ7cGFkZGluZy10b3A6MCAhaW1wb3J0YW50fS5ldF9ub25fZml4ZWRfbmF2ICNwYWdlLWNvbnRhaW5lcntwYWRkaW5nLXRvcDowfS5ldF9maXhlZF9uYXYuZXRfc2Vjb25kYXJ5X25hdl9vbmx5X21lbnUuYWRtaW4tYmFyICNtYWluLWhlYWRlcnt0b3A6MzJweCAhaW1wb3J0YW50fS5ldF9oaWRlX21vYmlsZV9sb2dvICNtYWluLWhlYWRlciAubG9nb19jb250YWluZXJ7ZGlzcGxheTpub25lO29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgMC40cyBlYXNlLWluLW91dH0jdG9wLW1lbnV7ZGlzcGxheTpub25lfS5ldF9oaWRlX25hdi5ldF9maXhlZF9uYXYgI21haW4taGVhZGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVkoMHB4KSAhaW1wb3J0YW50O3RyYW5zZm9ybTp0cmFuc2xhdGVZKDBweCkgIWltcG9ydGFudDtvcGFjaXR5OjF9I2V0LXRvcC1uYXZpZ2F0aW9ue21hcmdpbi1yaWdodDowOy13ZWJraXQtdHJhbnNpdGlvbjpub25lO3RyYW5zaXRpb246bm9uZX0uZXRfZml4ZWRfbmF2ICNtYWluLWhlYWRlcntwb3NpdGlvbjphYnNvbHV0ZX0uZXRfaGVhZGVyX3N0eWxlX2xlZnQgLmV0LWZpeGVkLWhlYWRlciAjZXQtdG9wLW5hdmlnYXRpb24sLmV0X2hlYWRlcl9zdHlsZV9sZWZ0ICNldC10b3AtbmF2aWdhdGlvbntwYWRkaW5nLXRvcDoyNHB4O2Rpc3BsYXk6YmxvY2t9LmV0X2ZpeGVkX25hdiAjbWFpbi1oZWFkZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfS5ldF9maXhlZF9uYXZfdGVtcCAjbWFpbi1oZWFkZXJ7dG9wOjAgIWltcG9ydGFudH0jbG9nbywubG9nb19jb250YWluZXIsI21haW4taGVhZGVyLC5jb250YWluZXJ7LXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lfS5ldF9oZWFkZXJfc3R5bGVfbGVmdCAjbG9nb3ttYXgtd2lkdGg6NTAlfSNldF90b3Bfc2VhcmNoe21hcmdpbjowIDM1cHggMCAwO2Zsb2F0OmxlZnR9I2V0X3NlYXJjaF9pY29uOmJlZm9yZXt0b3A6N3B4fS5ldF9oZWFkZXJfc3R5bGVfbGVmdCAuZXQtc2VhcmNoLWZvcm17d2lkdGg6NTAlICFpbXBvcnRhbnQ7bWF4LXdpZHRoOjUwJSAhaW1wb3J0YW50fSNldF9tb2JpbGVfbmF2X21lbnV7ZGlzcGxheTpibG9ja30jZXQtdG9wLW5hdmlnYXRpb24gLmV0LWNhcnQtaW5mb3ttYXJnaW4tdG9wOjVweH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzgycHgpe2JvZHkuYWRtaW4tYmFyLmV0X2ZpeGVkX25hdiAjbWFpbi1oZWFkZXJ7dG9wOjQ2cHh9fUBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KXsjZXQtdG9wLW5hdmlnYXRpb257bWFyZ2luLXJpZ2h0OjB9Ym9keS5hZG1pbi1iYXIuZXRfZml4ZWRfbmF2ICNtYWluLWhlYWRlcnt0b3A6NDZweH19QG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDc5cHgpeyNldC10b3AtbmF2aWdhdGlvbnttYXJnaW4tcmlnaHQ6MH19QG1lZGlhIHByaW50eyN0b3AtaGVhZGVyLCNtYWluLWhlYWRlcntwb3NpdGlvbjpyZWxhdGl2ZSAhaW1wb3J0YW50O3RvcDphdXRvICFpbXBvcnRhbnQ7cmlnaHQ6YXV0byAhaW1wb3J0YW50O2JvdHRvbTphdXRvICFpbXBvcnRhbnQ7bGVmdDphdXRvICFpbXBvcnRhbnR9fQpALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFRvcHswJXtvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRleSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRleSgwKX10b3tvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRleSgtNjAlKTt0cmFuc2Zvcm06dHJhbnNsYXRleSgtNjAlKX19QGtleWZyYW1lcyBmYWRlT3V0VG9wezAle29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGV5KDApO3RyYW5zZm9ybTp0cmFuc2xhdGV5KDApfXRve29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGV5KC02MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGV5KC02MCUpfX1ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVG9wezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGV5KC02MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGV5KC02MCUpfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGV5KDApO3RyYW5zZm9ybTp0cmFuc2xhdGV5KDApfX1Aa2V5ZnJhbWVzIGZhZGVJblRvcHswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRleSgtNjAlKTt0cmFuc2Zvcm06dHJhbnNsYXRleSgtNjAlKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRleSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRleSgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkJvdHRvbXswJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRleSg2MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGV5KDYwJSl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZXkoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZXkoMCl9fUBrZXlmcmFtZXMgZmFkZUluQm90dG9tezAle29wYWNpdHk6MDstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGV5KDYwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZXkoNjAlKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRleSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRleSgwKX19QC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRCb3R0b217MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZXkoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZXkoMCl9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZXkoNjAlKTt0cmFuc2Zvcm06dHJhbnNsYXRleSg2MCUpfX1Aa2V5ZnJhbWVzIGZhZGVPdXRCb3R0b217MCV7b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZXkoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZXkoMCl9dG97b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZXkoNjAlKTt0cmFuc2Zvcm06dHJhbnNsYXRleSg2MCUpfX1ALXdlYmtpdC1rZXlmcmFtZXMgR3Jvd3swJXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKC41KTt0cmFuc2Zvcm06c2NhbGVZKC41KX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX1Aa2V5ZnJhbWVzIEdyb3d7MCV7b3BhY2l0eTowOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWSguNSk7dHJhbnNmb3JtOnNjYWxlWSguNSl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19LyohCgkgICogQW5pbWF0ZS5jc3MgLSBodHRwOi8vZGFuZWRlbi5tZS9hbmltYXRlCgkgICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIC0gaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVAoJICAqIENvcHlyaWdodCAoYykgMjAxNSBEYW5pZWwgRWRlbgoJICovQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblh7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO29wYWNpdHk6MH00MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59NjAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpO29wYWNpdHk6MX04MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9fUBrZXlmcmFtZXMgZmxpcEluWHswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47b3BhY2l0eTowfTQwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbn02MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7b3BhY2l0eToxfTgwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtNWRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC01ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX19QC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJbll7MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO29wYWNpdHk6MH00MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59NjAley13ZWJraXQtdHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO29wYWNpdHk6MX04MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTVkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtNWRlZyl9dG97LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9fUBrZXlmcmFtZXMgZmxpcEluWXswJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTstd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47b3BhY2l0eTowfTQwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMjBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMjBkZWcpOy13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbn02MCV7LXdlYmtpdC10cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7b3BhY2l0eToxfTgwJXstd2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtNWRlZyk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC01ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX19CiNtYWluLWhlYWRlcntsaW5lLWhlaWdodDoyM3B4O2ZvbnQtd2VpZ2h0OjUwMDt0b3A6MDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7d2lkdGg6MTAwJTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMCByZ2JhKDAsMCwwLC4xKTtib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwuMSk7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDo5OTk5OX0ubmF2IGxpIGxpe3BhZGRpbmc6MCAyMHB4O21hcmdpbjowfS5ldC1tZW51IGxpIGxpIGF7cGFkZGluZzo2cHggMjBweDt3aWR0aDoyMDBweH0ubmF2IGxpe3Bvc2l0aW9uOnJlbGF0aXZlO2xpbmUtaGVpZ2h0OjFlbX0ubmF2IGxpIGxpe3Bvc2l0aW9uOnJlbGF0aXZlO2xpbmUtaGVpZ2h0OjJlbX0ubmF2IGxpIHVse3Bvc2l0aW9uOmFic29sdXRlO3BhZGRpbmc6MjBweCAwO3otaW5kZXg6OTk5OTt3aWR0aDoyNDBweDtiYWNrZ3JvdW5kOiNmZmY7dmlzaWJpbGl0eTpoaWRkZW47b3BhY2l0eTowO2JvcmRlci10b3A6M3B4IHNvbGlkICMyZWEzZjI7Ym94LXNoYWRvdzowIDJweCA1cHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgMnB4IDVweCByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJveC1zaGFkb3c6MCAycHggNXB4IHJnYmEoMCwwLDAsLjEpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dGV4dC1hbGlnbjpsZWZ0fS5uYXYgbGkuZXQtaG92ZXI+dWx7dmlzaWJpbGl0eTp2aXNpYmxlfS5uYXYgbGkuZXQtdG91Y2gtaG92ZXI+dWwsLm5hdiBsaTpob3Zlcj51bHtvcGFjaXR5OjE7dmlzaWJpbGl0eTp2aXNpYmxlfS5uYXYgbGkgbGkgdWx7ei1pbmRleDoxMDAwO3RvcDotMjNweDtsZWZ0OjI0MHB4fS5uYXYgbGkuZXQtcmV2ZXJzZS1kaXJlY3Rpb24tbmF2IGxpIHVse2xlZnQ6YXV0bztyaWdodDoyNDBweH0ubmF2IGxpOmhvdmVye3Zpc2liaWxpdHk6aW5oZXJpdH0uZXRfbW9iaWxlX21lbnUgbGkgYSwubmF2IGxpIGxpIGF7Zm9udC1zaXplOjE0cHg7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0fS5ldF9tb2JpbGVfbWVudSBsaSBhOmhvdmVyLC5uYXYgdWwgbGkgYTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjAzKTtvcGFjaXR5Oi43fS5ldC1kcm9wZG93bi1yZW1vdmluZz51bHtkaXNwbGF5Om5vbmV9Lm1lZ2EtbWVudSAuZXQtZHJvcGRvd24tcmVtb3Zpbmc+dWx7ZGlzcGxheTpibG9ja30uZXQtbWVudSAubWVudS1pdGVtLWhhcy1jaGlsZHJlbj5hOmZpcnN0LWNoaWxkOmFmdGVye2ZvbnQtZmFtaWx5OkVUbW9kdWxlcztjb250ZW50OiIzIjtmb250LXNpemU6MTZweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO2ZvbnQtd2VpZ2h0OjgwMH0uZXQtbWVudSAubWVudS1pdGVtLWhhcy1jaGlsZHJlbj5hOmZpcnN0LWNoaWxke3BhZGRpbmctcmlnaHQ6MjBweH0uZXQtbWVudSBsaSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuPmE6Zmlyc3QtY2hpbGQ6YWZ0ZXJ7cmlnaHQ6MjBweDt0b3A6NnB4fS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnV7cG9zaXRpb246aW5oZXJpdH0uZXQtbWVudS1uYXYgbGkubWVnYS1tZW51PnVse3BhZGRpbmc6MzBweCAyMHB4O3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt3aWR0aDoxMDAlO2xlZnQ6MCFpbXBvcnRhbnR9LmV0LW1lbnUtbmF2IGxpLm1lZ2EtbWVudSB1bCBsaXttYXJnaW46MDtmbG9hdDpsZWZ0IWltcG9ydGFudDtkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50fS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnUgbGk+dWx7LXdlYmtpdC1hbmltYXRpb246bm9uZSFpbXBvcnRhbnQ7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50O3BhZGRpbmc6MDtib3JkZXI6bm9uZTtsZWZ0OmF1dG87dG9wOmF1dG87d2lkdGg6MjQwcHghaW1wb3J0YW50O3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaGFkb3c6bm9uZTstd2Via2l0LWJveC1zaGFkb3c6bm9uZX0uZXQtbWVudS1uYXYgbGkubWVnYS1tZW51IGxpIHVse3Zpc2liaWxpdHk6dmlzaWJsZTtvcGFjaXR5OjE7ZGlzcGxheTpub25lfS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnUuZXQtaG92ZXIgbGkgdWwsLmV0LW1lbnUtbmF2IGxpLm1lZ2EtbWVudTpob3ZlciBsaSB1bHtkaXNwbGF5OmJsb2NrfS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnU6aG92ZXI+dWx7b3BhY2l0eToxIWltcG9ydGFudDt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50fS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnU+dWw+bGk+YTpmaXJzdC1jaGlsZHtwYWRkaW5nLXRvcDowIWltcG9ydGFudDtmb250LXdlaWdodDo3MDA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwuMDMpfS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnU+dWw+bGk+YTpmaXJzdC1jaGlsZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudH0uZXQtbWVudS1uYXYgbGkubWVnYS1tZW51IGxpPmF7d2lkdGg6MjAwcHghaW1wb3J0YW50fS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnUubWVnYS1tZW51LXBhcmVudCBsaT5hLC5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnUubWVnYS1tZW51LXBhcmVudCBsaSBsaXt3aWR0aDoxMDAlIWltcG9ydGFudH0uZXQtbWVudS1uYXYgbGkubWVnYS1tZW51Lm1lZ2EtbWVudS1wYXJlbnQgbGk+LnN1Yi1tZW51e2Zsb2F0OmxlZnQ7d2lkdGg6MTAwJSFpbXBvcnRhbnR9LmV0LW1lbnUtbmF2IGxpLm1lZ2EtbWVudT51bD5saXt3aWR0aDoyNSU7bWFyZ2luOjB9LmV0LW1lbnUtbmF2IGxpLm1lZ2EtbWVudS5tZWdhLW1lbnUtcGFyZW50LTM+dWw+bGl7d2lkdGg6MzMuMzMlfS5ldC1tZW51LW5hdiBsaS5tZWdhLW1lbnUubWVnYS1tZW51LXBhcmVudC0yPnVsPmxpe3dpZHRoOjUwJX0uZXQtbWVudS1uYXYgbGkubWVnYS1tZW51Lm1lZ2EtbWVudS1wYXJlbnQtMT51bD5saXt3aWR0aDoxMDAlfS5ldF9wYl9mdWxsd2lkdGhfbWVudSBsaS5tZWdhLW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YTpmaXJzdC1jaGlsZDphZnRlciwuZXRfcGJfbWVudSBsaS5tZWdhLW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YTpmaXJzdC1jaGlsZDphZnRlcntkaXNwbGF5Om5vbmV9LmV0X2Z1bGx3aWR0aF9uYXYgI3RvcC1tZW51IGxpLm1lZ2EtbWVudT51bHt3aWR0aDphdXRvO2xlZnQ6MzBweCFpbXBvcnRhbnQ7cmlnaHQ6MzBweCFpbXBvcnRhbnR9LmV0X21vYmlsZV9tZW51e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtwYWRkaW5nOjUlO2JhY2tncm91bmQ6I2ZmZjt3aWR0aDoxMDAlO3Zpc2liaWxpdHk6dmlzaWJsZTtvcGFjaXR5OjE7ZGlzcGxheTpub25lO3otaW5kZXg6OTk5OTtib3JkZXItdG9wOjNweCBzb2xpZCAjMmVhM2YyO2JveC1zaGFkb3c6MCAycHggNXB4IHJnYmEoMCwwLDAsLjEpOy1tb3otYm94LXNoYWRvdzowIDJweCA1cHggcmdiYSgwLDAsMCwuMSk7LXdlYmtpdC1ib3gtc2hhZG93OjAgMnB4IDVweCByZ2JhKDAsMCwwLC4xKX0jbWFpbi1oZWFkZXIgLmV0X21vYmlsZV9tZW51IGxpIHVsLC5ldF9wYl9mdWxsd2lkdGhfbWVudSAuZXRfbW9iaWxlX21lbnUgbGkgdWwsLmV0X3BiX21lbnUgLmV0X21vYmlsZV9tZW51IGxpIHVse3Zpc2liaWxpdHk6dmlzaWJsZSFpbXBvcnRhbnQ7ZGlzcGxheTpibG9jayFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjEwcHh9LmV0X21vYmlsZV9tZW51IGxpIGxpe3BhZGRpbmctbGVmdDo1JX0uZXRfbW9iaWxlX21lbnUgbGkgYXtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4wMyk7Y29sb3I6IzY2NjtwYWRkaW5nOjEwcHggNSU7ZGlzcGxheTpibG9ja30uZXRfbW9iaWxlX21lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YXtmb250LXdlaWdodDo3MDA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wMyl9LmV0X21vYmlsZV9tZW51IGxpIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuPmF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uZXRfbW9iaWxlX25hdl9tZW51e2Zsb2F0OnJpZ2h0O2Rpc3BsYXk6bm9uZX0ubW9iaWxlX21lbnVfYmFye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MH0ubW9iaWxlX21lbnVfYmFyOmJlZm9yZXtjb250ZW50OiJhIjtmb250LXNpemU6MzJweDtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjA7dG9wOjA7Y3Vyc29yOnBvaW50ZXJ9LmV0X3BiX21vZHVsZSAubW9iaWxlX21lbnVfYmFyOmJlZm9yZXt0b3A6MnB4fS5tb2JpbGVfbmF2IC5zZWxlY3RfcGFnZXtkaXNwbGF5Om5vbmV9Ci5ldC1zb2NpYWwtaWNvbnN7ZmxvYXQ6cmlnaHR9LmV0LXNvY2lhbC1pY29ucyBsaXtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tbGVmdDoyMHB4fS5ldC1zb2NpYWwtaWNvbiBhe2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246Y2VudGVyOy13ZWJraXQtdHJhbnNpdGlvbjpjb2xvciAzMDBtcyBlYXNlIDBzO3RyYW5zaXRpb246Y29sb3IgMzAwbXMgZWFzZSAwcztjb2xvcjojNjY2O3RleHQtZGVjb3JhdGlvbjpub25lfS5ldC1zb2NpYWwtaWNvbnMgYTpob3ZlcntvcGFjaXR5OjAuNzstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuNHMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgMC40cyBlYXNlLWluLW91dH0uZXQtc29jaWFsLWljb24gc3BhbntkaXNwbGF5Om5vbmV9LmV0X2R1cGxpY2F0ZV9zb2NpYWxfaWNvbnN7ZGlzcGxheTpub25lfUBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk4MHB4KXsuZXQtc29jaWFsLWljb25ze2Zsb2F0Om5vbmU7dGV4dC1hbGlnbjpjZW50ZXJ9fUBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk4MHB4KXsuZXQtc29jaWFsLWljb25ze21hcmdpbjowIDAgNXB4fX0KLmV0X3BiX3dpZGdldHtmbG9hdDpsZWZ0O21heC13aWR0aDoxMDAlO3dvcmQtd3JhcDpicmVhay13b3JkfS5ldF9wYl93aWRnZXQgYXt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjojNjY2fS5ldF9wYl93aWRnZXQgbGkgYTpob3Zlcntjb2xvcjojODJjMGM3fS5ldF9wYl93aWRnZXQgb2wgbGksLmV0X3BiX3dpZGdldCB1bCBsaXttYXJnaW4tYm90dG9tOi41ZW19LmV0X3BiX3dpZGdldCBvbCBsaSBvbCBsaSwuZXRfcGJfd2lkZ2V0IHVsIGxpIHVsIGxpe21hcmdpbi1sZWZ0OjE1cHh9LmV0X3BiX3dpZGdldCBzZWxlY3R7d2lkdGg6MTAwJTtoZWlnaHQ6MjhweDtwYWRkaW5nOjAgNXB4fS5ldF9wYl93aWRnZXRfYXJlYSAuZXRfcGJfd2lkZ2V0IGF7Y29sb3I6aW5oZXJpdH0uZXRfcGJfYmdfbGF5b3V0X2xpZ2h0IC5ldF9wYl93aWRnZXQgbGkgYXtjb2xvcjojNjY2fS5ldF9wYl9iZ19sYXlvdXRfZGFyayAuZXRfcGJfd2lkZ2V0IGxpIGF7Y29sb3I6aW5oZXJpdH0KLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciwud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8sLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdle2JhY2tncm91bmQ6IzJFQTNGMn0uZW50cnktc3VtbWFyeSBwLnByaWNlIGlucywud29vY29tbWVyY2UgZGl2LnByb2R1Y3Qgc3Bhbi5wcmljZSwud29vY29tbWVyY2UtcGFnZSBkaXYucHJvZHVjdCBzcGFuLnByaWNlLC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCBzcGFuLnByaWNlLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IHNwYW4ucHJpY2UsLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHAucHJpY2UsLndvb2NvbW1lcmNlLXBhZ2UgZGl2LnByb2R1Y3QgcC5wcmljZSwud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgcC5wcmljZSwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBwLnByaWNlLC53b29jb21tZXJjZSAuc3Rhci1yYXRpbmcgc3BhbjpiZWZvcmUsLndvb2NvbW1lcmNlLXBhZ2UgLnN0YXItcmF0aW5nIHNwYW46YmVmb3JlLC53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0LC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdCwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdCwud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdCwud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0LC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlIGEuYnV0dG9uLC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24sLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24sLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCwud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbiwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24sLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlciwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlciwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmhvdmVyLC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UgYS5idXR0b246aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246aG92ZXIsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmhvdmVyLC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyLC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3Zlciwud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmhvdmVye2NvbG9yOiMyRUEzRjJ9Lndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdCwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZCwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdCwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZCwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdCwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0LC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQsLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdCwud29vY29tbWVyY2UgYS5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24sLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbiwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbiwud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdCwud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbiwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZCwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF17Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwO3BhZGRpbmc6MC4zZW0gMWVtO2xpbmUtaGVpZ2h0OjEuN2VtICFpbXBvcnRhbnQ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXI6MnB4IHNvbGlkO2JvcmRlci1yYWRpdXM6M3B4Oy13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4yczt0cmFuc2l0aW9uOmFsbCAwLjJzfS53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0e2JvcmRlci1jb2xvcjojMkVBM0YyfS53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQ6aG92ZXIsLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpob3Zlciwud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmhvdmVyLC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlIGEuYnV0dG9uOmhvdmVyLC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmhvdmVyLC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmhvdmVyLC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b246aG92ZXIsLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b246aG92ZXIsLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3Zlciwud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6aG92ZXIsLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b246aG92ZXIsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246ZGlzYWJsZWQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZDpob3Zlcntib3JkZXI6MnB4IHNvbGlkIHRyYW5zcGFyZW50O3BhZGRpbmc6MC4zZW0gMmVtIDAuM2VtIDFlbX0ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLC53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpob3Zlciwud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDpob3Zlciwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyLC53b29jb21tZXJjZSBhLmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uOmhvdmVyLC53b29jb21tZXJjZSBpbnB1dC5idXR0b246aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uOmhvdmVyLC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyLC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b246aG92ZXIsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmFmdGVyLC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLmFsdDphZnRlciwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDphZnRlciwud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmFmdGVyLC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLndvb2NvbW1lcmNlIGEuYnV0dG9uOmFmdGVyLC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmFmdGVyLC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCguYnV0dG9uLWNvbmZpcm0pOmFmdGVyLC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b246bm90KC5idXR0b24tY29uZmlybSk6YWZ0ZXIsLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b246YWZ0ZXIsLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlciwud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlciwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b246YWZ0ZXIsLndvb2NvbW1lcmNlIGEuYnV0dG9uOmJlZm9yZSwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbjpiZWZvcmUsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246YmVmb3JlLC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b246YmVmb3JlLC53b29jb21tZXJjZSBpbnB1dC5idXR0b246YmVmb3JlLC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjpiZWZvcmUsLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpiZWZvcmUsLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmJlZm9yZSwud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmJlZm9yZSwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b246YmVmb3Jle2ZvbnQtZmFtaWx5OiJFVG1vZHVsZXMiO2ZvbnQtc2l6ZTozMnB4O2xpbmUtaGVpZ2h0OjFlbTtjb250ZW50OiJcMzUiO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTttYXJnaW4tbGVmdDotMWVtOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgMC4yczt0cmFuc2l0aW9uOmFsbCAwLjJzfS53b29jb21tZXJjZSBhLmJ1dHRvbjpiZWZvcmUsLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246YmVmb3JlLC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmJlZm9yZSwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uOmJlZm9yZSwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmJlZm9yZSwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b246YmVmb3JlLC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YmVmb3JlLC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpiZWZvcmUsLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjpiZWZvcmUsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmJlZm9yZXtkaXNwbGF5Om5vbmV9LmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgYS5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBhLmJ1dHRvbiwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbiwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9ue3BhZGRpbmctcmlnaHQ6MmVtO3BhZGRpbmctbGVmdDowLjdlbX0uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBhLmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uOmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmFmdGVye29wYWNpdHk6MTttYXJnaW4tbGVmdDowfS5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0LmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0LmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0LmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGEuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0LmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b246aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0LmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0LmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXJ7bGVmdDowLjE1ZW19Lndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXI6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpob3ZlcjphZnRlciwud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC53b29jb21tZXJjZSBhLmJ1dHRvbjpob3ZlcjphZnRlciwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbjpob3ZlcjphZnRlciwud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpob3ZlcjphZnRlciwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uOmhvdmVyOmFmdGVyLC53b29jb21tZXJjZSBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVyLC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6aG92ZXI6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyOmFmdGVyLC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXIsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVye29wYWNpdHk6MTttYXJnaW4tbGVmdDowfS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYS5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlcnttYXJnaW4tbGVmdDowO2xlZnQ6MWVtfS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0OmhvdmVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQ6aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQ6aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpob3ZlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmhvdmVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGEuYnV0dG9uOmhvdmVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmhvdmVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmhvdmVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpob3ZlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6aG92ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjpob3ZlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYS5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0LC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdCwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBhLmJ1dHRvbiwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbiwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9ue3BhZGRpbmctbGVmdDoyZW07cGFkZGluZy1yaWdodDowLjdlbX0uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGEuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b246aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYS5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBpbnB1dC5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFmdGVyLC5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlcntsZWZ0OjAuMTVlbX0ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyLC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlcntwYWRkaW5nOjAuM2VtIDFlbX0uZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDphZnRlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmFmdGVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGEuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b246YWZ0ZXJ7ZGlzcGxheTpub25lfS5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0LC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdCwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdCwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdCwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0LC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGEuYnV0dG9uLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbiwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgYS5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24ud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbjpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdCwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0LC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0LC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGEuYnV0dG9uLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbiwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdCwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUuZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24sLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgYS5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246aG92ZXIsLmV0X2J1dHRvbl9ub19pY29uLmV0X2J1dHRvbl9sZWZ0Lndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlciwuZXRfYnV0dG9uX25vX2ljb24uZXRfYnV0dG9uX2xlZnQud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmhvdmVyLC5ldF9idXR0b25fbm9faWNvbi5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbjpob3Zlciwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLC53b29jb21tZXJjZSBpbnB1dC5idXR0b246aG92ZXJ7cGFkZGluZzowLjNlbSAxZW0gIWltcG9ydGFudH0uZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgYS5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UtcGFnZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlcntsaW5lLWhlaWdodDoxLjdlbX0uZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZS1wYWdlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uLmFsdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBpbnB1dC5idXR0b24uYWx0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgYS5idXR0b246aG92ZXI6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi53b29jb21tZXJjZS1wYWdlIGEuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmhvdmVyOmFmdGVyLC5ldF9idXR0b25fbGVmdC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQ6YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgYS5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246YWZ0ZXIsLmV0X2J1dHRvbl9jdXN0b21faWNvbi5ldF9idXR0b25faWNvbl92aXNpYmxlLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbjphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlciwuZXRfYnV0dG9uX2N1c3RvbV9pY29uLmV0X2J1dHRvbl9pY29uX3Zpc2libGUud29vY29tbWVyY2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uOmFmdGVyLC5ldF9idXR0b25fY3VzdG9tX2ljb24uZXRfYnV0dG9uX2ljb25fdmlzaWJsZS53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGlucHV0LmJ1dHRvbjphZnRlcnttYXJnaW4tbGVmdDouM2VtfXAuZGVtb19zdG9yZXtwb3NpdGlvbjpmaXhlZCAhaW1wb3J0YW50O2JvdHRvbTowICFpbXBvcnRhbnQ7dG9wOmF1dG8gIWltcG9ydGFudDt6LWluZGV4OjEwMDAwMH0uZW50cnktY29udGVudCBhZGRyZXNzLC5jb21tZW50LWNvbnRlbnQgYWRkcmVzcyxib2R5LmV0LXBiLXByZXZpZXcgI21haW4tY29udGVudCAuY29udGFpbmVyIGFkZHJlc3N7bGluZS1oZWlnaHQ6MjRweDttYXJnaW4tYm90dG9tOjEycHh9Lndvb2NvbW1lcmNlLWluZm8gYSwud29vY29tbWVyY2UtbWVzc2FnZSBhe2NvbG9yOiNmZmZ9LnNob3BfdGFibGUgLmFjdGlvbnMgLnN1Ym1pdHtmbG9hdDpyaWdodH0uc2hvcF90YWJsZSAuYWN0aW9ucyAuY2hlY2tvdXQtYnV0dG9ue2NsZWFyOmJvdGh9LmNvbDItc2V0LmFkZHJlc3Nlc3ttYXJnaW4tdG9wOjIwcHh9dGFibGUuc2hvcF90YWJsZXttYXJnaW4tYm90dG9tOjMwcHggIWltcG9ydGFudH0ud29vY29tbWVyY2UtbWVzc2FnZSBhLmJ1dHRvbi53Yy1mb3J3YXJke2JvcmRlcjpub25lO2JhY2tncm91bmQ6I2ZmZn0ud29vY29tbWVyY2UtbWVzc2FnZSBhLmJ1dHRvbi53Yy1mb3J3YXJkOmhvdmVye2JvcmRlcjpub25lO2JhY2tncm91bmQ6I2ZmZn1wLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudHtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjE0cHg7Y29sb3I6Izk5OTtwYWRkaW5nLWJvdHRvbTo0MHB4fS5lbnRyeS1zdW1tYXJ5IC5lbnRyeS10aXRsZXtwYWRkaW5nLWJvdHRvbToxNHB4ICFpbXBvcnRhbnR9LmV0X3BiX3dpZGdldCAuYnV0dG9ucyBhe21hcmdpbi10b3A6MTBweCAhaW1wb3J0YW50fS5wcm9kdWN0X21ldGF7Ym9yZGVyLXdpZHRoOjA7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZGFkYWRhO2JvcmRlci10b3A6MXB4IHNvbGlkICNkYWRhZGE7Zm9udC1zaXplOjE0cHg7Y29sb3I6IzY2NjtwYWRkaW5nLXRvcDo2cHh9LnBvc3RlZF9pbiBhLC50YWdnZWRfYXMgYXtmb250LXdlaWdodDo1MDA7Y29sb3I6IzJlYTNmMjt0ZXh0LWRlY29yYXRpb246bm9uZX0ucHJvZHVjdCAucmVsYXRlZCBoMntmb250LXNpemU6MjZweCAhaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjE2cHh9LmV0X2ZpeGVkX25hdi5ldF90cmFuc3BhcmVudF9uYXYuZXQtZGIuZXRfZnVsbF93aWR0aF9wYWdlICNsZWZ0LWFyZWE+Lndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlcntvcGFjaXR5OjB9Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYSBpbWcsLndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIGltZ3std2Via2l0LWJveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O21hcmdpbjowIDAgOXB4ICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDMsLndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoM3twYWRkaW5nOi4zZW0gMH0ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAub25zYWxlLC53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLm9uc2FsZXtsZWZ0OjEwcHggIWltcG9ydGFudDttYXJnaW46MCAhaW1wb3J0YW50O3JpZ2h0OmF1dG8gIWltcG9ydGFudH0ud29vY29tbWVyY2Ugc3Bhbi5vbnNhbGUsLndvb2NvbW1lcmNlLXBhZ2Ugc3Bhbi5vbnNhbGV7ei1pbmRleDoyO2JhY2tncm91bmQ6I2VmOGY2MSAhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6M3B4ICFpbXBvcnRhbnQ7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtjb2xvcjojZmZmO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjUwMCAhaW1wb3J0YW50O2xlZnQ6MTBweCAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OmluaGVyaXQgIWltcG9ydGFudDttYXJnaW46MCAhaW1wb3J0YW50O21pbi1oZWlnaHQ6MCAhaW1wb3J0YW50O21pbi13aWR0aDowICFpbXBvcnRhbnQ7cGFkZGluZzo2cHggMThweCAhaW1wb3J0YW50O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtc2hhZG93Om5vbmUgIWltcG9ydGFudDt0b3A6MTBweCAhaW1wb3J0YW50fS53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIGltZywud29vY29tbWVyY2UtcGFnZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIGltZywud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyBpbWcsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyBpbWd7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudH0ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyBkaXYudGh1bWJuYWlscywud29vY29tbWVyY2UtcGFnZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIGRpdi50aHVtYm5haWxzLC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIGRpdi50aHVtYm5haWxzLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMgZGl2LnRodW1ibmFpbHN7cGFkZGluZy10b3A6MjBweCAhaW1wb3J0YW50fS53b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bC5wYWdlLW51bWJlcnMsLndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwucGFnZS1udW1iZXJze2xpc3Qtc3R5bGU6bm9uZSAhaW1wb3J0YW50O3BhZGRpbmc6MCAhaW1wb3J0YW50fS53b29jb21tZXJjZSAucHJvZHVjdHMgLnN0YXItcmF0aW5nLC53b29jb21tZXJjZS1wYWdlIC5wcm9kdWN0cyAuc3Rhci1yYXRpbmd7bWFyZ2luOjRweCAwIC4zZW0gMCAhaW1wb3J0YW50fS53b29jb21tZXJjZSAuc3Rhci1yYXRpbmc6YmVmb3JlLC53b29jb21tZXJjZS1wYWdlIC5zdGFyLXJhdGluZzpiZWZvcmV7Y29udGVudDoiXDUzXDUzXDUzXDUzXDUzIiAhaW1wb3J0YW50O2NvbG9yOiNjY2MgIWltcG9ydGFudH0ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2UsLndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2UsLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByaWNlIGRlbCwud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcmljZSBkZWx7Y29sb3I6IzY2NiAhaW1wb3J0YW50O2ZvbnQtc2l6ZToxNHB4O21hcmdpbjowICFpbXBvcnRhbnR9LmVudHJ5LXN1bW1hcnkgcC5wcmljZSBzcGFue2ZvbnQtc2l6ZToyNnB4ICFpbXBvcnRhbnR9LmVudHJ5LXN1bW1hcnkgcC5wcmljZSBkZWx7Y29sb3I6Izk5OTttYXJnaW4tcmlnaHQ6MTBweH0uY2FydF90YWJsZV9pdGVtIC5xdWFudGl0eXttYXJnaW46MCAhaW1wb3J0YW50O3dpZHRoOjEwMHB4ICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlLWNoZWNrb3V0ICNtYWluLWNvbnRlbnQgLmNhcnQtc3VidG90YWwgdGR7Ym9yZGVyLXRvcDoxcHggc29saWQgI2VlZX10YWJsZS5jYXJ0IHRoLCNtYWluLWNvbnRlbnQgdGFibGUuY2FydCB0aCx0YWJsZS5jYXJ0IHRkLCNtYWluLWNvbnRlbnQgdGFibGUuY2FydCB0ZCx0YWJsZS5jYXJ0IHRyLCNtYWluLWNvbnRlbnQgdGFibGUuY2FydCB0ciwjY29udGVudC1hcmVhIHRhYmxlIHRyLCNjb250ZW50LWFyZWEgdGFibGUgdGQsI2NvbnRlbnQtYXJlYSB0YWJsZSB0aHtwYWRkaW5nOi44NTdlbSAwLjU4N2VtO21heC13aWR0aDoxMDAlfXRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuYnV0dG9uLmFsdCwjbWFpbi1jb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuYnV0dG9uLmFsdHttYXJnaW46MTlweCAwIDlweH10YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNoZWNrb3V0LWJ1dHRvbnttYXJnaW46MCAhaW1wb3J0YW50fS5vcmRlcmJ5LC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgdGQgc2VsZWN0e2JhY2tncm91bmQtY29sb3I6I2VjZWNlYztib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjNweDtib3JkZXItd2lkdGg6MDtjb2xvcjojNjY2ICFpbXBvcnRhbnQ7Zm9udC1zaXplOjEycHg7cGFkZGluZzo0cHggOHB4O2ZvbnQtd2VpZ2h0OjUwMDtmb250LWZhbWlseTonT3BlbiBTYW5zJywgQXJpYWwsIHNhbnMtc2VyaWZ9LmNhcnRfdG90YWxzIGgyLC5zaGlwcGluZ19jYWxjdWxhdG9yIGgye21hcmdpbi1ib3R0b206MTBweH0ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0LC53b29jb21tZXJjZS1wYWdlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCwud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0LC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IGZvcm0uY2FydHttYXJnaW46MjRweCAwIDM5cHh9Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC5ldF9wYl93Y19hZGRfdG9fY2FydDpsYXN0LWNoaWxkIGZvcm0uY2FydCwud29vY29tbWVyY2UtcGFnZSBkaXYucHJvZHVjdCAuZXRfcGJfd2NfYWRkX3RvX2NhcnQ6bGFzdC1jaGlsZCBmb3JtLmNhcnQsLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC5ldF9wYl93Y19hZGRfdG9fY2FydDpsYXN0LWNoaWxkIGZvcm0uY2FydCwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCAuZXRfcGJfd2NfYWRkX3RvX2NhcnQ6bGFzdC1jaGlsZCBmb3JtLmNhcnR7bWFyZ2luLWJvdHRvbTowICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCBkaXYucXVhbnRpdHksLndvb2NvbW1lcmNlLXBhZ2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IGRpdi5xdWFudGl0eSwud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IGRpdi5xdWFudGl0eSwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBmb3JtLmNhcnQgZGl2LnF1YW50aXR5e21hcmdpbjowIDIwcHggMCAwICFpbXBvcnRhbnQ7d2lkdGg6YXV0bztvdmVyZmxvdzpoaWRkZW59Lndvb2NvbW1lcmNlIC5xdWFudGl0eSBpbnB1dC5xdHk6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZS1wYWdlIC5xdWFudGl0eSBpbnB1dC5xdHk6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZSAjY29udGVudCAucXVhbnRpdHkgaW5wdXQucXR5Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCAucXVhbnRpdHkgaW5wdXQucXR5Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGlucHV0LmlucHV0LXRleHQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjojOTk5fS53b29jb21tZXJjZSAucXVhbnRpdHkgaW5wdXQucXR5OjotbW96LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UtcGFnZSAucXVhbnRpdHkgaW5wdXQucXR5OjotbW96LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eTo6LW1vei1wbGFjZWhvbGRlciwgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eTo6LW1vei1wbGFjZWhvbGRlciwgLndvb2NvbW1lcmNlLWNhcnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24gLmlucHV0LXRleHQ6Oi1tb3otcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0OjotbW96LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OX0ud29vY29tbWVyY2UgLnF1YW50aXR5IGlucHV0LnF0eTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZS1wYWdlIC5xdWFudGl0eSBpbnB1dC5xdHk6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IC5xdWFudGl0eSBpbnB1dC5xdHk6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjojOTk5fS53b29jb21tZXJjZSAucXVhbnRpdHkgaW5wdXQucXR5OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC53b29jb21tZXJjZS1wYWdlIC5xdWFudGl0eSBpbnB1dC5xdHk6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLndvb2NvbW1lcmNlICNjb250ZW50IC5xdWFudGl0eSBpbnB1dC5xdHk6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgaW5wdXQuaW5wdXQtdGV4dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjojOTk5fS53b29jb21tZXJjZSAucXVhbnRpdHkgaW5wdXQucXR5OjpwbGFjZWhvbGRlciwud29vY29tbWVyY2UtcGFnZSAucXVhbnRpdHkgaW5wdXQucXR5OjpwbGFjZWhvbGRlciwud29vY29tbWVyY2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eTo6cGxhY2Vob2xkZXIsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eTo6cGxhY2Vob2xkZXIsLndvb2NvbW1lcmNlLWNhcnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24gLmlucHV0LXRleHQ6OnBsYWNlaG9sZGVyLC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0OjpwbGFjZWhvbGRlciwud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOiM5OTl9Lndvb2NvbW1lcmNlIC5xdWFudGl0eSBpbnB1dC5xdHksLndvb2NvbW1lcmNlLXBhZ2UgLnF1YW50aXR5IGlucHV0LnF0eSwud29vY29tbWVyY2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eSwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCAucXVhbnRpdHkgaW5wdXQucXR5LC53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0LC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0LC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyB0ZXh0YXJlYSwuZXRfcGJfd2NfY2FydF90b3RhbHMgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLC5ldF9wYl93Y19jaGVja291dF9iaWxsaW5nIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSwuZXRfcGJfd2NfY2hlY2tvdXRfc2hpcHBpbmcgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xley13ZWJraXQtYXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQtY29sb3I6I2VlZTttYXgtd2lkdGg6MTAwJTtib3JkZXItd2lkdGg6MDtib3JkZXItcmFkaXVzOjA7Y29sb3I6Izk5OTtmb250LXNpemU6MTRweDtwYWRkaW5nOjE2cHg7bGluZS1oZWlnaHQ6MS43ZW07Ym9yZGVyLXN0eWxlOnNvbGlkfS53b29jb21tZXJjZSAucXVhbnRpdHkgaW5wdXQucXR5e3dpZHRoOjQuM2VtfS5ldF9wYl93Y19jYXJ0X3RvdGFscyAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsLmV0X3BiX3djX2NoZWNrb3V0X2JpbGxpbmcgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLC5ldF9wYl93Y19jaGVja291dF9zaGlwcGluZyAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7bWluLWhlaWdodDo1MHB4O3BhZGRpbmc6MTVweH0uZXRfcGJfd2NfY2FydF90b3RhbHMgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsLmV0X3BiX3djX2NoZWNrb3V0X2JpbGxpbmcgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQsLmV0X3BiX3djX2NoZWNrb3V0X3NoaXBwaW5nIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2NvbG9yOiM5OTk7bGluZS1oZWlnaHQ6MjJweDtwYWRkaW5nLWxlZnQ6MH0ud29vY29tbWVyY2UgLnF1YW50aXR5IGlucHV0LnF0eTpmb2N1cywud29vY29tbWVyY2UtcGFnZSAucXVhbnRpdHkgaW5wdXQucXR5OmZvY3VzLC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0OmZvY3VzLC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyB0ZXh0YXJlYS5pbnB1dC10ZXh0OmZvY3VzLC53b29jb21tZXJjZS1wYWdlIGZvcm0gLmZvcm0tcm93IGlucHV0LmlucHV0LXRleHQ6Zm9jdXMsLndvb2NvbW1lcmNlLXBhZ2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWEuaW5wdXQtdGV4dDpmb2N1cywud29vY29tbWVyY2UgI2NvbnRlbnQgLnF1YW50aXR5IGlucHV0LnF0eTpmb2N1cywud29vY29tbWVyY2UtcGFnZSAjY29udGVudCAucXVhbnRpdHkgaW5wdXQucXR5OmZvY3VzLC53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0OmZvY3VzLC5ldF9wYl93Y19jYXJ0X3RvdGFscyAuc2VsZWN0Mi1jb250YWluZXIuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCwuZXRfcGJfd2NfY2hlY2tvdXRfYmlsbGluZyAuc2VsZWN0Mi1jb250YWluZXIuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCwuZXRfcGJfd2NfY2hlY2tvdXRfc2hpcHBpbmcgLnNlbGVjdDItY29udGFpbmVyLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7Y29sb3I6IzNlM2UzZX0uZXRfcGJfd2NfY2FydF90b3RhbHMgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3csLmV0X3BiX3djX2NoZWNrb3V0X2JpbGxpbmcgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3csLmV0X3BiX3djX2NoZWNrb3V0X3NoaXBwaW5nIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93e2hlaWdodDppbmhlcml0O3RvcDo1MCU7cmlnaHQ6MTBweH0ud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dHt3aWR0aDoxNTBweDttYXJnaW4tcmlnaHQ6MTBweH0ud29vY29tbWVyY2UgLnF1YW50aXR5IC5wbHVzLC53b29jb21tZXJjZS1wYWdlIC5xdWFudGl0eSAucGx1cywud29vY29tbWVyY2UgI2NvbnRlbnQgLnF1YW50aXR5IC5wbHVzLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IC5xdWFudGl0eSAucGx1cywud29vY29tbWVyY2UgLnF1YW50aXR5IC5taW51cywud29vY29tbWVyY2UtcGFnZSAucXVhbnRpdHkgLm1pbnVzLC53b29jb21tZXJjZSAjY29udGVudCAucXVhbnRpdHkgLm1pbnVzLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IC5xdWFudGl0eSAubWludXN7YmFja2dyb3VuZDojZmZmICFpbXBvcnRhbnQ7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtjb2xvcjojQkNDOEM5ICFpbXBvcnRhbnQ7Zm9udC1zaXplOjIwcHggIWltcG9ydGFudDtmb250LXdlaWdodDozMDAgIWltcG9ydGFudDtoZWlnaHQ6MjRweCAhaW1wb3J0YW50O3RleHQtZGVjb3JhdGlvbjpub25lICFpbXBvcnRhbnQ7dGV4dC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O3dpZHRoOjMwcHggIWltcG9ydGFudDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjAgIWltcG9ydGFudDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjAgIWltcG9ydGFudDtib3JkZXI6MXB4IHNvbGlkICNCQ0M4QzkgIWltcG9ydGFudH0ud29vY29tbWVyY2UgI2NvbnRlbnQgLnF1YW50aXR5LC53b29jb21tZXJjZSAucXVhbnRpdHksLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgLnF1YW50aXR5LC53b29jb21tZXJjZS1wYWdlIC5xdWFudGl0eXt3aWR0aDoxMDBweDttYXJnaW46MH0ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHRke3BhZGRpbmc6MCAyMHB4IDIwcHggMCAhaW1wb3J0YW50O21heC13aWR0aDpub25lICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4zZW19Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyB0ZDpsYXN0LWNoaWxke3BhZGRpbmctcmlnaHQ6MCAhaW1wb3J0YW50fS53b29jb21tZXJjZSB1bC5jYXJ0X2xpc3QgbGksLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RfbGlzdF93aWRnZXQgbGksLndvb2NvbW1lcmNlLXBhZ2UgdWwuY2FydF9saXN0IGxpLC53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RfbGlzdF93aWRnZXQgbGl7cGFkZGluZzo2cHggMH0ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVycy10YWJsZSAud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlX19jZWxsLW9yZGVyLWFjdGlvbnMgYXtwYWRkaW5nOjAuM2VtIDJlbSAwLjNlbSAxLjVlbX0ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFiczpiZWZvcmUsLndvb2NvbW1lcmNlLXBhZ2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFiczpiZWZvcmUsLndvb2NvbW1lcmNlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnM6YmVmb3JlLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnM6YmVmb3Jle2JvcmRlci1ib3R0b20tY29sb3I6I2Q5ZDlkOX1ib2R5Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS10YWJze2JvcmRlcjoxcHggc29saWQgI2Q5ZDlkOTttYXJnaW46MzBweCAwIDQ1cHh9Ym9keS53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzLGJvZHkud29vY29tbWVyY2UgI2NvbnRlbnQtYXJlYSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJze21hcmdpbjowICFpbXBvcnRhbnQ7cGFkZGluZzowICFpbXBvcnRhbnQ7YmFja2dyb3VuZDojZjRmNGY0fWJvZHkud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSxib2R5Lndvb2NvbW1lcmNlICNjb250ZW50LWFyZWEgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSxib2R5Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlLGJvZHkud29vY29tbWVyY2UgI2NvbnRlbnQtYXJlYSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLmFjdGl2ZXtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyLXJhZGl1czowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6I2Y0ZjRmNDtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNkOWQ5ZDk7cGFkZGluZzowOy13ZWJraXQtYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZTttYXJnaW46MCAtMnB4fWJvZHkud29vY29tbWVyY2UgI2NvbnRlbnQtYXJlYSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLmFjdGl2ZXtiYWNrZ3JvdW5kOiNmZmYgIWltcG9ydGFudH1ib2R5Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkgYSxib2R5Lndvb2NvbW1lcmNlICNjb250ZW50LWFyZWEgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSBhe2NvbG9yOiM2NjY2NjYgIWltcG9ydGFudDtwYWRkaW5nOjRweCAyMnB4ICFpbXBvcnRhbnR9Ym9keS53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmJlZm9yZSxib2R5Lndvb2NvbW1lcmNlICNjb250ZW50LWFyZWEgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTpiZWZvcmUsYm9keS53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmFmdGVyLGJvZHkud29vY29tbWVyY2UgI2NvbnRlbnQtYXJlYSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmFmdGVye2Rpc3BsYXk6bm9uZX1ib2R5Lndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlIGEsYm9keS53b29jb21tZXJjZSAjY29udGVudC1hcmVhIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlIGF7Y29sb3I6IzAwMCAhaW1wb3J0YW50fWJvZHkud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLnBhbmVsLGJvZHkud29vY29tbWVyY2UgI2NvbnRlbnQtYXJlYSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAucGFuZWx7cGFkZGluZzozMHB4O21hcmdpbjowfSNyZXZpZXdzIC5jb21tZW50bGlzdHtwYWRkaW5nLWJvdHRvbTowICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSwud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGl7bWFyZ2luLWJvdHRvbTo0MHB4ICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0LC53b29jb21tZXJjZS1wYWdlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0e2JvcmRlcjpub25lICFpbXBvcnRhbnQ7cGFkZGluZzowICFpbXBvcnRhbnQ7bWFyZ2luOjAgMCAwIDEwMHB4ICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSBpbWcuYXZhdGFyLC53b29jb21tZXJjZS1wYWdlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSBpbWcuYXZhdGFye3dpZHRoOmF1dG8gIWltcG9ydGFudDtwYWRkaW5nOjAgIWltcG9ydGFudDtib3JkZXI6bm9uZX0ud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhLC53b29jb21tZXJjZS1wYWdlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YXtmb250LXNpemU6aW5oZXJpdCAhaW1wb3J0YW50O21hcmdpbjowIDAgMnB4ICFpbXBvcnRhbnQ7cGFkZGluZzowICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlICNyZXZpZXdzIC5jb21tZW50bGlzdCAuc3Rhci1yYXRpbmd7ZmxvYXQ6bm9uZSAhaW1wb3J0YW50O21hcmdpbi1ib3R0b206NnB4ICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBoMiwud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgaDIsLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBoMSwud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgaDEsLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBoMywud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgaDMsLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBoNCwud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgaDQsLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBoNSwud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgaDUsLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBoNiwud29vY29tbWVyY2UtcGFnZSAjcmV2aWV3cyAjY29tbWVudHMgaDZ7bWFyZ2luLWJvdHRvbTozMHB4ICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlLW1lc3NhZ2UsLndvb2NvbW1lcmNlLWVycm9yLC53b29jb21tZXJjZS1pbmZvey13ZWJraXQtYm94LXNoYWRvdzpub25lICFpbXBvcnRhbnQ7Ym94LXNoYWRvdzpub25lICFpbXBvcnRhbnQ7dGV4dC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O2ZvbnQtc2l6ZToxOHB4ICFpbXBvcnRhbnQ7Y29sb3I6I2ZmZiAhaW1wb3J0YW50O3BhZGRpbmc6MTVweCAhaW1wb3J0YW50O2JvcmRlcjpub25lfS53b29jb21tZXJjZS1tZXNzYWdlOmJlZm9yZSwud29vY29tbWVyY2UtZXJyb3I6YmVmb3JlLC53b29jb21tZXJjZS1pbmZvOmJlZm9yZXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtjb2xvcjojRkZGICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlLXBhZ2UgI3Jldmlld3MgI2NvbW1lbnRmb3JtLC53b29jb21tZXJjZS1wYWdlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBwLmZvcm0tc3VibWl0e3BhZGRpbmctYm90dG9tOjA7bWFyZ2luLWJvdHRvbTowfS53b29jb21tZXJjZSAucHN3cHt6LWluZGV4Ojk5OTk5OX1kaXYucHBfcGljX2hvbGRlcnt6LWluZGV4OjEwMDAwMX1kaXYucHBfb3ZlcmxheXt6LWluZGV4OjEwMDAwMH1maWd1cmUud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X193cmFwcGVye21hcmdpbjowfS53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJze21hcmdpbi10b3A6Ni42NjY2JX0ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyAuZmxleC1jb250cm9sLXRodW1icyBsaXt3aWR0aDoyMCU7bWFyZ2luLXJpZ2h0OjYuNjY2NiU7bWFyZ2luLWJvdHRvbTo2LjY2NjYlfS53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJzIGxpOm50aC1vZi10eXBlKDRuKXttYXJnaW4tcmlnaHQ6MH0ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcy53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnl7bWFyZ2luLWJvdHRvbTowfS53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJzIGxpIGltZ3std2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuNXMgZWFzZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGVhc2V9Lndvb2NvbW1lcmNlIGZvcm0uY2hlY2tvdXRfY291cG9uLC53b29jb21tZXJjZSBmb3JtLmxvZ2luLC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVye2JvcmRlci1jb2xvcjojZWVlZWVlfS5jaGVja291dCAjcGF5bWVudCwuY2hlY2tvdXQgI3BheW1lbnR7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZWVlZWVlfUBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDk4MXB4KXsuZXRfZnVsbF93aWR0aF9wYWdlLndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoNG4pLC5ldF9wYl9yb3cgLmV0X2Z1bGxfd2lkdGhfcGFnZS53b29jb21tZXJjZS1wYWdlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDRuKSwuc2luZ2xlLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoM24pLC5hcmNoaXZlLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoM24pLC5ldF9wYl9yb3cgLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoM24pLC5zaW5nbGUuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoM24pLC5hcmNoaXZlLmV0X3JpZ2h0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKSwuZXRfcGJfcm93IC5ldF9yaWdodF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbil7bWFyZ2luLXJpZ2h0OjB9LnNpbmdsZS5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y19yZWxhdGVkX3Byb2R1Y3RzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbiksLnNpbmdsZS5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y191cHNlbGxzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbiksLnNpbmdsZS5ldF9yaWdodF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCAuZXRfcGJfd2NfcmVsYXRlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cy5jb2x1bW5zLTQgbGkucHJvZHVjdDpudGgtY2hpbGQoM24pLC5zaW5nbGUuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3Vwc2VsbHMgdWwucHJvZHVjdHMuY29sdW1ucy00IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKSwuc2luZ2xlLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMuY29sdW1ucy01IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKSwuc2luZ2xlLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3Vwc2VsbHMgdWwucHJvZHVjdHMuY29sdW1ucy01IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKSwuc2luZ2xlLmV0X3JpZ2h0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y19yZWxhdGVkX3Byb2R1Y3RzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNSBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbiksLnNpbmdsZS5ldF9yaWdodF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCAuZXRfcGJfd2NfdXBzZWxscyB1bC5wcm9kdWN0cy5jb2x1bW5zLTUgbGkucHJvZHVjdDpudGgtY2hpbGQoM24pLC5zaW5nbGUuZXRfbGVmdF9zaWRlYmFyLndvb2NvbW1lcmNlLXBhZ2UgI21haW4tY29udGVudCAuZXRfcGJfd2NfcmVsYXRlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cy5jb2x1bW5zLTYgbGkucHJvZHVjdDpudGgtY2hpbGQoM24pOm5vdCgubGFzdCksLnNpbmdsZS5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y191cHNlbGxzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNiBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbik6bm90KC5sYXN0KSwuc2luZ2xlLmV0X3JpZ2h0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y19yZWxhdGVkX3Byb2R1Y3RzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNiBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbik6bm90KC5sYXN0KSwuc2luZ2xlLmV0X3JpZ2h0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y191cHNlbGxzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNiBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbik6bm90KC5sYXN0KXttYXJnaW4tcmlnaHQ6My44JX0uZXRfZnVsbF93aWR0aF9wYWdlLndvb2NvbW1lcmNlLXBhZ2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoNG4rMSksLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpudGgtY2hpbGQoM24rMSksLmV0X3JpZ2h0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKzEpe2NsZWFyOmJvdGh9LmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMuY29sdW1ucy00IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKzEpLC5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y191cHNlbGxzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNCBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbisxKSwuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMuY29sdW1ucy00IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKzEpLHVsLnByb2R1Y3RzLmNvbHVtbnMtNCBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbisxKSAuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3Vwc2VsbHMsLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMuY29sdW1ucy01IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKzEpLC5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y191cHNlbGxzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNSBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbisxKSwuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMuY29sdW1ucy01IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKzEpLHVsLnByb2R1Y3RzLmNvbHVtbnMtNSBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbisxKSAuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3Vwc2VsbHMsLmV0X2xlZnRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMuY29sdW1ucy02IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKzEpOm5vdCguZmlyc3QpLC5ldF9sZWZ0X3NpZGViYXIud29vY29tbWVyY2UtcGFnZSAjbWFpbi1jb250ZW50IC5ldF9wYl93Y191cHNlbGxzIHVsLnByb2R1Y3RzLmNvbHVtbnMtNiBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbisxKTpub3QoLmZpcnN0KSwuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMuY29sdW1ucy02IGxpLnByb2R1Y3Q6bnRoLWNoaWxkKDNuKzEpOm5vdCguZmlyc3QpLHVsLnByb2R1Y3RzLmNvbHVtbnMtNiBsaS5wcm9kdWN0Om50aC1jaGlsZCgzbisxKTpub3QoLmZpcnN0KSAuZXRfcmlnaHRfc2lkZWJhci53b29jb21tZXJjZS1wYWdlICNtYWluLWNvbnRlbnQgLmV0X3BiX3djX3Vwc2VsbHN7Y2xlYXI6bm9uZX19QG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTgwcHgpey5ldF9mdWxsX3dpZHRoX3BhZ2Uud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0Om50aC1jaGlsZCg0bisxKXtjbGVhcjpub25lfS53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscz5kaXYsLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzPmZvcm17d2lkdGg6MTAwJSAhaW1wb3J0YW50O2Zsb2F0Om5vbmUgIWltcG9ydGFudH0uc2hvcF90YWJsZSAuY291cG9ue21hcmdpbi1ib3R0b206NXB4ICFpbXBvcnRhbnR9LmNoZWNrb3V0IC5mb3JtLXJvdywuY2hlY2tvdXQgLmNvbC0xLC5jaGVja291dCAuY29sLTJ7ZmxvYXQ6bm9uZSAhaW1wb3J0YW50O3dpZHRoOmF1dG8gIWltcG9ydGFudH0uY2hlY2tvdXQgLmNvbC0xLC5jaGVja291dCAuY29sLTJ7bWFyZ2luLWJvdHRvbToyNXB4ICFpbXBvcnRhbnR9fUBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2OHB4KXt0YWJsZS5jYXJ0IHRoLCNtYWluLWNvbnRlbnQgdGFibGUuY2FydCB0aCx0YWJsZS5jYXJ0IHRkLCNtYWluLWNvbnRlbnQgdGFibGUuY2FydCB0ZCx0YWJsZS5jYXJ0IHRyLCNtYWluLWNvbnRlbnQgdGFibGUuY2FydCB0ciwud29vY29tbWVyY2UtY2FydCAjY29udGVudC1hcmVhIHRhYmxlIHRyLC53b29jb21tZXJjZS1jYXJ0ICNjb250ZW50LWFyZWEgdGFibGUgdGQsLndvb2NvbW1lcmNlLWNhcnQgI2NvbnRlbnQtYXJlYSB0YWJsZSB0aHttYXgtd2lkdGg6MTAwJX10YWJsZS5jYXJ0IHRyLCNtYWluLWNvbnRlbnQgdGFibGUuY2FydCB0ciwjY29udGVudC1hcmVhIHRhYmxlIHRye3BhZGRpbmc6MH0ud29vY29tbWVyY2UgLmNhcnRfaXRlbSAucXVhbnRpdHl7d2lkdGg6YXV0b30ud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dHt3aWR0aDo1MCU7bWFyZ2luLXJpZ2h0OjB9Lndvb2NvbW1lcmNlLWNhcnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5idXR0b25bbmFtZT0idXBkYXRlX2NhcnQiXXt3aWR0aDoxMDAlfX1AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCl7Ym9keS53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLGJvZHkud29vY29tbWVyY2UgI2NvbnRlbnQtYXJlYSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLGJvZHkud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaS5hY3RpdmUsYm9keS53b29jb21tZXJjZSAjY29udGVudC1hcmVhIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZle2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRTBEQURGICFpbXBvcnRhbnR9Ym9keS53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIGEsYm9keS53b29jb21tZXJjZSAjY29udGVudC1hcmVhIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkgYXtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnR9Lndvb2NvbW1lcmNlIC5mb3JtLXJvd3tmbG9hdDpub25lICFpbXBvcnRhbnQ7d2lkdGg6YXV0byAhaW1wb3J0YW50fX1AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0NzlweCl7dGFibGUuY2FydCB0aCwjY29udGVudCB0YWJsZS5jYXJ0IHRoLHRhYmxlLmNhcnQgdGQsI2NvbnRlbnQgdGFibGUuY2FydCB0ZCx0YWJsZS5jYXJ0IHRyLCNjb250ZW50IHRhYmxlLmNhcnQgdHJ7cGFkZGluZzouODU3ZW0gMC4yODdlbSAhaW1wb3J0YW50fS53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0e21hcmdpbi1ib3R0b206MTBweH0ud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCwud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmJ1dHRvbnt3aWR0aDoxMDAlfX0KLmV0X3BiX3NlY3Rpb257cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtc2l6ZToxMDAlO2JhY2tncm91bmQtc2l6ZTpjb3Zlcn0uZXRfcGJfc2VjdGlvbi0tYWJzb2x1dGUsLmV0X3BiX3NlY3Rpb24tLWZpeGVke3dpZHRoOjEwMCV9LmV0X3BiX3NlY3Rpb24uZXRfc2VjdGlvbl90cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5ldF9wYl9mdWxsd2lkdGhfc2VjdGlvbntwYWRkaW5nOjB9LmV0X3BiX2Z1bGx3aWR0aF9zZWN0aW9uPi5ldF9wYl9tb2R1bGU6bm90KC5ldF9wYl9wb3N0X2NvbnRlbnQpOm5vdCguZXRfcGJfZnVsbHdpZHRoX3Bvc3RfY29udGVudCkgLmV0X3BiX3Jvd3twYWRkaW5nOjAhaW1wb3J0YW50fS5ldF9wYl9pbm5lcl9zaGFkb3d7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMCA3cHggcmdiYSgwLDAsMCwuMDcpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDdweCByZ2JhKDAsMCwwLC4wNyl9LmV0X3BiX2JvdHRvbV9pbnNpZGVfZGl2aWRlciwuZXRfcGJfdG9wX2luc2lkZV9kaXZpZGVye2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1yZXBlYXQteTpuby1yZXBlYXQ7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7cG9pbnRlci1ldmVudHM6bm9uZTt3aWR0aDoxMDAlO2xlZnQ6MDtyaWdodDowfS5ldF9wYl9ib3R0b21faW5zaWRlX2RpdmlkZXIuZXQtbm8tdHJhbnNpdGlvbiwuZXRfcGJfdG9wX2luc2lkZV9kaXZpZGVyLmV0LW5vLXRyYW5zaXRpb257LXdlYmtpdC10cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50O3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnR9LmV0X3BiX3RvcF9pbnNpZGVfZGl2aWRlcnttYXJnaW4tdG9wOi0xcHh9LmV0X3BiX2JvdHRvbV9pbnNpZGVfZGl2aWRlcnttYXJnaW4tYm90dG9tOi0xcHh9LmV0LWZiIC5zZWN0aW9uX2hhc19kaXZpZGVyLmV0X2ZiX2VsZW1lbnRfY29udHJvbHNfdmlzaWJsZS0tY2hpbGQ+LmV0X3BiX2JvdHRvbV9pbnNpZGVfZGl2aWRlciwuZXQtZmIgLnNlY3Rpb25faGFzX2RpdmlkZXIuZXRfZmJfZWxlbWVudF9jb250cm9sc192aXNpYmxlLS1jaGlsZD4uZXRfcGJfdG9wX2luc2lkZV9kaXZpZGVye3otaW5kZXg6MX0uZXRfcGJfc2VjdGlvbl92aWRlbzpub3QoLmV0X3BiX3NlY3Rpb24tLXdpdGgtbWVudSl7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9jb2x1bW4+LmV0X3BiX3NlY3Rpb25fdmlkZW9fYmd7ei1pbmRleDotMX0uZXRfcGJfc2VjdGlvbl92aWRlb19iZ3t2aXNpYmlsaXR5OnZpc2libGU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7cG9pbnRlci1ldmVudHM6bm9uZTstd2Via2l0LXRyYW5zaXRpb246ZGlzcGxheSAuM3M7dHJhbnNpdGlvbjpkaXNwbGF5IC4zc30uZXRfcGJfc2VjdGlvbl92aWRlb19iZy5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnX2hvdmVyLC5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmdfcGhvbmUsLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcuZXRfcGJfc2VjdGlvbl92aWRlb19iZ190YWJsZXQsLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcuZXRfcGJfc2VjdGlvbl92aWRlb19iZ190YWJsZXRfb25seXtkaXNwbGF5Om5vbmV9LmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcgLm1lanMtY29udHJvbHMsLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcgLm1lanMtb3ZlcmxheS1wbGF5e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcgZW1iZWQsLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcgaWZyYW1lLC5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnIG9iamVjdCwuZXRfcGJfc2VjdGlvbl92aWRlb19iZyB2aWRlb3ttYXgtd2lkdGg6bm9uZX0uZXRfcGJfc2VjdGlvbl92aWRlb19iZyAubWVqcy12aWRlb3tsZWZ0OjUwJTtwb3NpdGlvbjphYnNvbHV0ZTttYXgtd2lkdGg6bm9uZX0uZXRfcGJfc2VjdGlvbl92aWRlb19iZyAubWVqcy1vdmVybGF5LWxvYWRpbmd7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZXRfcGJfc29jaWFsX25ldHdvcmtfbGluayAuZXRfcGJfc2VjdGlvbl92aWRlb3tvdmVyZmxvdzp2aXNpYmxlfS5ldF9wYl9zZWN0aW9uX3ZpZGVvX29uX2hvdmVyOmhvdmVyPi5ldF9wYl9zZWN0aW9uX3ZpZGVvX2Jne2Rpc3BsYXk6bm9uZX0uZXRfcGJfc2VjdGlvbl92aWRlb19vbl9ob3Zlcjpob3Zlcj4uZXRfcGJfc2VjdGlvbl92aWRlb19iZ19ob3ZlciwuZXRfcGJfc2VjdGlvbl92aWRlb19vbl9ob3Zlcjpob3Zlcj4uZXRfcGJfc2VjdGlvbl92aWRlb19iZ19ob3Zlcl9pbmhlcml0e2Rpc3BsYXk6YmxvY2t9QG1lZGlhIChtaW4td2lkdGg6OTgxcHgpey5ldF9wYl9zZWN0aW9ue3BhZGRpbmc6NCUgMH1ib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5ldF9wYl9zaG93X3RpdGxlIC5wb3N0LXBhc3N3b3JkLXJlcXVpcmVkIC5ldF9wYl9zZWN0aW9uLGJvZHk6bm90KC5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQpIC5wb3N0LXBhc3N3b3JkLXJlcXVpcmVkIC5ldF9wYl9zZWN0aW9ue3BhZGRpbmctdG9wOjB9LmV0X3BiX2Z1bGx3aWR0aF9zZWN0aW9ue3BhZGRpbmc6MH0uZXRfcGJfc2VjdGlvbl92aWRlb19iZy5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnX2Rlc2t0b3Bfb25seXtkaXNwbGF5OmJsb2NrfX1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX3NlY3Rpb257cGFkZGluZzo1MHB4IDB9Ym9keS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQuZXRfcGJfc2hvd190aXRsZSAucG9zdC1wYXNzd29yZC1yZXF1aXJlZCAuZXRfcGJfc2VjdGlvbixib2R5Om5vdCguZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0KSAucG9zdC1wYXNzd29yZC1yZXF1aXJlZCAuZXRfcGJfc2VjdGlvbntwYWRkaW5nLXRvcDowfS5ldF9wYl9mdWxsd2lkdGhfc2VjdGlvbntwYWRkaW5nOjB9LmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcuZXRfcGJfc2VjdGlvbl92aWRlb19iZ190YWJsZXR7ZGlzcGxheTpibG9ja30uZXRfcGJfc2VjdGlvbl92aWRlb19iZy5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnX2Rlc2t0b3Bfb25seXtkaXNwbGF5Om5vbmV9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuZXRfcGJfc2VjdGlvbl92aWRlb19iZy5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnX2Rlc2t0b3BfdGFibGV0e2Rpc3BsYXk6YmxvY2t9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSBhbmQgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcuZXRfcGJfc2VjdGlvbl92aWRlb19iZ190YWJsZXRfb25seXtkaXNwbGF5OmJsb2NrfX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmV0X3BiX3NlY3Rpb25fdmlkZW9fYmcuZXRfcGJfc2VjdGlvbl92aWRlb19iZ19waG9uZXtkaXNwbGF5OmJsb2NrfS5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmdfZGVza3RvcF90YWJsZXR7ZGlzcGxheTpub25lfX0KLmV0X3BiX3Jvd3t3aWR0aDo4MCU7bWF4LXdpZHRoOjEwODBweDttYXJnaW46YXV0bztwb3NpdGlvbjpyZWxhdGl2ZX1ib2R5LnNhZmFyaSAuc2VjdGlvbl9oYXNfZGl2aWRlcixib2R5LnVpd2VidmlldyAuc2VjdGlvbl9oYXNfZGl2aWRlcnstd2Via2l0LXBlcnNwZWN0aXZlOjIwMDBweDtwZXJzcGVjdGl2ZToyMDAwcHh9LnNlY3Rpb25faGFzX2RpdmlkZXIgLmV0X3BiX3Jvd3t6LWluZGV4OjV9LmV0X3BiX3Jvd19pbm5lcnt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9yb3cuZXRfcGJfcm93X2VtcHR5LC5ldF9wYl9yb3dfaW5uZXI6bnRoLW9mLXR5cGUobisyKS5ldF9wYl9yb3dfZW1wdHl7ZGlzcGxheTpub25lfS5ldF9wYl9yb3c6YWZ0ZXIsLmV0X3BiX3Jvd19pbm5lcjphZnRlcntjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7Y2xlYXI6Ym90aDt2aXNpYmlsaXR5OmhpZGRlbjtsaW5lLWhlaWdodDowO2hlaWdodDowO3dpZHRoOjB9LmV0X3BiX3Jvd180Y29sIC5ldC1sYXN0LWNoaWxkLC5ldF9wYl9yb3dfNGNvbCAuZXQtbGFzdC1jaGlsZC0yLC5ldF9wYl9yb3dfNmNvbCAuZXQtbGFzdC1jaGlsZCwuZXRfcGJfcm93XzZjb2wgLmV0LWxhc3QtY2hpbGQtMiwuZXRfcGJfcm93XzZjb2wgLmV0LWxhc3QtY2hpbGQtM3ttYXJnaW4tYm90dG9tOjB9LmV0X3BiX2NvbHVtbntmbG9hdDpsZWZ0O2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7bWluLWhlaWdodDoxcHh9LmV0X3BiX2NvbHVtbi0td2l0aC1tZW51e3otaW5kZXg6M30uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl9lbXB0eXttaW4taGVpZ2h0OjFweH0uZXRfcGJfcm93IC5ldF9wYl9jb2x1bW4uZXQtbGFzdC1jaGlsZCwuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW46bGFzdC1jaGlsZCwuZXRfcGJfcm93X2lubmVyIC5ldF9wYl9jb2x1bW4uZXQtbGFzdC1jaGlsZCwuZXRfcGJfcm93X2lubmVyIC5ldF9wYl9jb2x1bW46bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9LmV0X3BiX2NvbHVtbi5ldF9wYl9zZWN0aW9uX3BhcmFsbGF4e3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9jb2x1bW4sLmV0X3BiX3JvdywuZXRfcGJfcm93X2lubmVye2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9QG1lZGlhIChtaW4td2lkdGg6OTgxcHgpey5ldF9wYl9yb3d7cGFkZGluZzoyJSAwfWJvZHkuZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0LmV0X3BiX3Nob3dfdGl0bGUgLnBvc3QtcGFzc3dvcmQtcmVxdWlyZWQgLmV0X3BiX3Jvdyxib2R5Om5vdCguZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0KSAucG9zdC1wYXNzd29yZC1yZXF1aXJlZCAuZXRfcGJfcm93e3BhZGRpbmc6MDt3aWR0aDoxMDAlfS5ldF9wYl9jb2x1bW5fM180IC5ldF9wYl9yb3dfaW5uZXJ7cGFkZGluZzozLjczNSUgMH0uZXRfcGJfY29sdW1uXzJfMyAuZXRfcGJfcm93X2lubmVye3BhZGRpbmc6NC4yNDE1JSAwfS5ldF9wYl9jb2x1bW5fMV8yIC5ldF9wYl9yb3dfaW5uZXIsLmV0X3BiX2NvbHVtbl8zXzUgLmV0X3BiX3Jvd19pbm5lcntwYWRkaW5nOjUuODIlIDB9LmV0X3NlY3Rpb25fc3BlY2lhbHR5Pi5ldF9wYl9yb3d7cGFkZGluZzowfS5ldF9wYl9yb3dfaW5uZXJ7d2lkdGg6MTAwJX0uZXRfcGJfY29sdW1uX3NpbmdsZXtwYWRkaW5nOjIuODU1JSAwfS5ldF9wYl9jb2x1bW5fc2luZ2xlIC5ldF9wYl9tb2R1bGUuZXQtZmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl9zaW5nbGUgLmV0X3BiX21vZHVsZTpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LmV0X3BiX2NvbHVtbl9zaW5nbGUgLmV0X3BiX21vZHVsZS5ldC1sYXN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fc2luZ2xlIC5ldF9wYl9tb2R1bGU6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uLmV0LWxhc3QtY2hpbGQsLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uOmxhc3QtY2hpbGQsLmV0X3BiX3Jvd19pbm5lciAuZXRfcGJfY29sdW1uLmV0LWxhc3QtY2hpbGQsLmV0X3BiX3Jvd19pbm5lciAuZXRfcGJfY29sdW1uOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjAhaW1wb3J0YW50fS5ldF9wYl9yb3cuZXRfcGJfZXF1YWxfY29sdW1ucywuZXRfcGJfcm93X2lubmVyLmV0X3BiX2VxdWFsX2NvbHVtbnMsLmV0X3BiX3NlY3Rpb24uZXRfcGJfZXF1YWxfY29sdW1ucz4uZXRfcGJfcm93e2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9LnJ0bCAuZXRfcGJfcm93LmV0X3BiX2VxdWFsX2NvbHVtbnMsLnJ0bCAuZXRfcGJfcm93X2lubmVyLmV0X3BiX2VxdWFsX2NvbHVtbnMsLnJ0bCAuZXRfcGJfc2VjdGlvbi5ldF9wYl9lcXVhbF9jb2x1bW5zPi5ldF9wYl9yb3d7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOnJldmVyc2U7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5ldF9wYl9yb3cuZXRfcGJfZXF1YWxfY29sdW1ucz4uZXRfcGJfY29sdW1uLC5ldF9wYl9zZWN0aW9uLmV0X3BiX2VxdWFsX2NvbHVtbnM+LmV0X3BiX3Jvdz4uZXRfcGJfY29sdW1uey13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6MjstbXMtZmxleC1vcmRlcjoxO29yZGVyOjF9fUBtZWRpYSAobWF4LXdpZHRoOjk4MHB4KXsuZXRfcGJfcm93e21heC13aWR0aDoxMDgwcHh9Ym9keS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQuZXRfcGJfc2hvd190aXRsZSAucG9zdC1wYXNzd29yZC1yZXF1aXJlZCAuZXRfcGJfcm93LGJvZHk6bm90KC5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQpIC5wb3N0LXBhc3N3b3JkLXJlcXVpcmVkIC5ldF9wYl9yb3d7cGFkZGluZzowO3dpZHRoOjEwMCV9LmV0X3BiX2NvbHVtbiAuZXRfcGJfcm93X2lubmVyLC5ldF9wYl9yb3d7cGFkZGluZzozMHB4IDB9LmV0X3NlY3Rpb25fc3BlY2lhbHR5Pi5ldF9wYl9yb3d7cGFkZGluZzowfS5ldF9wYl9jb2x1bW57d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjMwcHh9LmV0X3BiX2JvdHRvbV9kaXZpZGVyIC5ldF9wYl9yb3c6bnRoLWxhc3QtY2hpbGQoMikgLmV0X3BiX2NvbHVtbjpsYXN0LWNoaWxkLC5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbi5ldC1sYXN0LWNoaWxkLC5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uZXRfc2VjdGlvbl9zcGVjaWFsdHkgLmV0X3BiX3Jvdz4uZXRfcGJfY29sdW1ue3BhZGRpbmctYm90dG9tOjB9LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fZW1wdHl7ZGlzcGxheTpub25lfS5ldF9wYl9yb3dfMS0yXzEtNF8xLTQsLmV0X3BiX3Jvd18xLTJfMS02XzEtNl8xLTYsLmV0X3BiX3Jvd18xLTRfMS00LC5ldF9wYl9yb3dfMS00XzEtNF8xLTIsLmV0X3BiX3Jvd18xLTVfMS01XzMtNSwuZXRfcGJfcm93XzEtNl8xLTZfMS02LC5ldF9wYl9yb3dfMS02XzEtNl8xLTZfMS0yLC5ldF9wYl9yb3dfMS02XzEtNl8xLTZfMS02LC5ldF9wYl9yb3dfMy01XzEtNV8xLTUsLmV0X3BiX3Jvd180Y29sLC5ldF9wYl9yb3dfNWNvbCwuZXRfcGJfcm93XzZjb2x7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXB9LmV0X3BiX3Jvd18xLTRfMS00Pi5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNCwuZXRfcGJfcm93XzEtNF8xLTRfMS0yPi5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNCwuZXRfcGJfcm93XzRjb2w+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV80e3dpZHRoOjQ3LjI1JTttYXJnaW4tcmlnaHQ6NS41JX0uZXRfcGJfcm93XzEtNF8xLTQ+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV80Om50aC1jaGlsZCgybiksLmV0X3BiX3Jvd18xLTRfMS00XzEtMj4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzQ6bnRoLWNoaWxkKDJuKSwuZXRfcGJfcm93XzRjb2w+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV80Om50aC1jaGlsZCgybil7bWFyZ2luLXJpZ2h0OjB9LmV0X3BiX3Jvd18xLTJfMS00XzEtND4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzR7d2lkdGg6NDcuMjUlO21hcmdpbi1yaWdodDo1LjUlfS5ldF9wYl9yb3dfMS0yXzEtNF8xLTQ+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV8yLC5ldF9wYl9yb3dfMS0yXzEtNF8xLTQ+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV80Om50aC1jaGlsZChvZGQpe21hcmdpbi1yaWdodDowfS5ldF9wYl9yb3dfMS0yXzEtNF8xLTQgLmV0X3BiX2NvbHVtbjpudGgtbGFzdC1jaGlsZCgtbisyKSwuZXRfcGJfcm93XzEtNF8xLTQgLmV0X3BiX2NvbHVtbjpudGgtbGFzdC1jaGlsZCgtbisyKSwuZXRfcGJfcm93XzRjb2wgLmV0X3BiX2NvbHVtbjpudGgtbGFzdC1jaGlsZCgtbisyKXttYXJnaW4tYm90dG9tOjB9LmV0X3BiX3Jvd18xLTVfMS01XzMtNT4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzUsLmV0X3BiX3Jvd181Y29sPi5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNXt3aWR0aDo0Ny4yNSU7bWFyZ2luLXJpZ2h0OjUuNSV9LmV0X3BiX3Jvd18xLTVfMS01XzMtNT4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzU6bnRoLWNoaWxkKDJuKSwuZXRfcGJfcm93XzVjb2w+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV81Om50aC1jaGlsZCgybil7bWFyZ2luLXJpZ2h0OjB9LmV0X3BiX3Jvd18zLTVfMS01XzEtNT4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzV7d2lkdGg6NDcuMjUlO21hcmdpbi1yaWdodDo1LjUlfS5ldF9wYl9yb3dfMy01XzEtNV8xLTU+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV81Om50aC1jaGlsZChvZGQpLC5ldF9wYl9yb3dfMy01XzEtNV8xLTU+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fM181e21hcmdpbi1yaWdodDowfS5ldF9wYl9yb3dfMy01XzEtNV8xLTUgLmV0X3BiX2NvbHVtbjpudGgtbGFzdC1jaGlsZCgtbisyKSwuZXRfcGJfcm93XzVjb2wgLmV0X3BiX2NvbHVtbjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uZXRfcGJfcm93XzEtNl8xLTZfMS02XzEtMj4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzYsLmV0X3BiX3Jvd182Y29sPi5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNnt3aWR0aDoyOS42NjYlO21hcmdpbi1yaWdodDo1LjUlfS5ldF9wYl9yb3dfMS02XzEtNl8xLTZfMS0yPi5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNjpudGgtY2hpbGQoM24pLC5ldF9wYl9yb3dfNmNvbD4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzY6bnRoLWNoaWxkKDNuKXttYXJnaW4tcmlnaHQ6MH0uZXRfcGJfcm93XzEtMl8xLTZfMS02XzEtNj4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzZ7d2lkdGg6MjkuNjY2JTttYXJnaW4tcmlnaHQ6NS41JX0uZXRfcGJfcm93XzEtMl8xLTZfMS02XzEtNj4uZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzIsLmV0X3BiX3Jvd18xLTJfMS02XzEtNl8xLTY+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV82Omxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjB9LmV0X3BiX3Jvd18xLTJfMS0yIC5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfMiwuZXRfcGJfcm93XzEtMl8xLTZfMS02XzEtNiAuZXRfcGJfY29sdW1uOm50aC1sYXN0LWNoaWxkKC1uKzMpLC5ldF9wYl9yb3dfNmNvbCAuZXRfcGJfY29sdW1uOm50aC1sYXN0LWNoaWxkKC1uKzMpe21hcmdpbi1ib3R0b206MH0uZXRfcGJfcm93XzEtMl8xLTIgLmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV8yIC5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNnt3aWR0aDoyOS42NjYlO21hcmdpbi1yaWdodDo1LjUlO21hcmdpbi1ib3R0b206MH0uZXRfcGJfcm93XzEtMl8xLTIgLmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV8yIC5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5ldF9wYl9yb3dfMS02XzEtNl8xLTZfMS02Pi5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNnt3aWR0aDo0Ny4yNSU7bWFyZ2luLXJpZ2h0OjUuNSV9LmV0X3BiX3Jvd18xLTZfMS02XzEtNl8xLTY+LmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV82Om50aC1jaGlsZCgybil7bWFyZ2luLXJpZ2h0OjB9LmV0X3BiX3Jvd18xLTZfMS02XzEtNl8xLTY6bnRoLWxhc3QtY2hpbGQoLW4rMyl7bWFyZ2luLWJvdHRvbTowfX1AbWVkaWEgKG1heC13aWR0aDo0NzlweCl7LmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzQsLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzUsLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzZ7d2lkdGg6MTAwJTttYXJnaW46MCAwIDMwcHh9LmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzQuZXQtbGFzdC1jaGlsZCwuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNDpsYXN0LWNoaWxkLC5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV81LmV0LWxhc3QtY2hpbGQsLmV0X3BiX3JvdyAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzU6bGFzdC1jaGlsZCwuZXRfcGJfcm93IC5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfNi5ldC1sYXN0LWNoaWxkLC5ldF9wYl9yb3cgLmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV82Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5ldF9wYl9yb3dfMS0yXzEtMiAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzIgLmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV82e3dpZHRoOjEwMCU7bWFyZ2luOjAgMCAzMHB4fS5ldF9wYl9yb3dfMS0yXzEtMiAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzIgLmV0X3BiX2NvbHVtbi5ldF9wYl9jb2x1bW5fMV82LmV0LWxhc3QtY2hpbGQsLmV0X3BiX3Jvd18xLTJfMS0yIC5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfY29sdW1uLmV0X3BiX2NvbHVtbl8xXzY6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LmV0X3BiX2NvbHVtbnt3aWR0aDoxMDAlIWltcG9ydGFudH19Ci5ldF9wYl90ZXh0e3dvcmQtd3JhcDpicmVhay13b3JkfS5ldF9wYl90ZXh0IG9sLC5ldF9wYl90ZXh0IHVse3BhZGRpbmctYm90dG9tOjFlbX0uZXRfcGJfdGV4dD46bGFzdC1jaGlsZHtwYWRkaW5nLWJvdHRvbTowfS5ldF9wYl90ZXh0X2lubmVye3Bvc2l0aW9uOnJlbGF0aXZlfQouZXRfcGJfYmdfbGF5b3V0X2xpZ2h0LmV0X3BiX21vZHVsZS5ldF9wYl9idXR0b257Y29sb3I6IzJlYTNmMn0uZXRfcGJfbW9kdWxlLmV0X3BiX2J1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztjb2xvcjppbmhlcml0fS5ldF9wYl9idXR0b25fbW9kdWxlX3dyYXBwZXIuZXRfcGJfYnV0dG9uX2FsaWdubWVudF9sZWZ0e3RleHQtYWxpZ246bGVmdH0uZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyLmV0X3BiX2J1dHRvbl9hbGlnbm1lbnRfcmlnaHR7dGV4dC1hbGlnbjpyaWdodH0uZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyLmV0X3BiX2J1dHRvbl9hbGlnbm1lbnRfY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS5ldF9wYl9idXR0b25fbW9kdWxlX3dyYXBwZXI+YXtkaXNwbGF5OmlubGluZS1ibG9ja31AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX2J1dHRvbl9tb2R1bGVfd3JhcHBlci5ldF9wYl9idXR0b25fYWxpZ25tZW50X3RhYmxldF9sZWZ0e3RleHQtYWxpZ246bGVmdH0uZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyLmV0X3BiX2J1dHRvbl9hbGlnbm1lbnRfdGFibGV0X3JpZ2h0e3RleHQtYWxpZ246cmlnaHR9LmV0X3BiX2J1dHRvbl9tb2R1bGVfd3JhcHBlci5ldF9wYl9idXR0b25fYWxpZ25tZW50X3RhYmxldF9jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyLmV0X3BiX2J1dHRvbl9hbGlnbm1lbnRfcGhvbmVfbGVmdHt0ZXh0LWFsaWduOmxlZnR9LmV0X3BiX2J1dHRvbl9tb2R1bGVfd3JhcHBlci5ldF9wYl9idXR0b25fYWxpZ25tZW50X3Bob25lX3JpZ2h0e3RleHQtYWxpZ246cmlnaHR9LmV0X3BiX2J1dHRvbl9tb2R1bGVfd3JhcHBlci5ldF9wYl9idXR0b25fYWxpZ25tZW50X3Bob25lX2NlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn19Ci5ldF9wYl9idXR0b25bZGF0YS1pY29uXTpub3QoW2RhdGEtaWNvbj0iIl0pOmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWljb24pfUBtZWRpYSAobWF4LXdpZHRoOjk4MHB4KXsuZXRfcGJfYnV0dG9uW2RhdGEtaWNvbi10YWJsZXRdOm5vdChbZGF0YS1pY29uLXRhYmxldD0iIl0pOmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWljb24tdGFibGV0KX19QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey5ldF9wYl9idXR0b25bZGF0YS1pY29uLXBob25lXTpub3QoW2RhdGEtaWNvbi1waG9uZT0iIl0pOmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWljb24tcGhvbmUpfX0KLmV0X3BiX2NvZGVfaW5uZXJ7cG9zaXRpb246cmVsYXRpdmV9Ci5ldF9wYl9zcGFjZXstd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveDtoZWlnaHQ6MjNweH0uZXRfcGJfZGl2aWRlcl9oaWRkZW57bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0uZXRfcGJfZGl2aWRlcl9pbnRlcm5hbHtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMDAlfS5ldF9wYl9kaXZpZGVye21hcmdpbjowIDAgMzBweDtwb3NpdGlvbjpyZWxhdGl2ZX0uZXRfcGJfZGl2aWRlcjpiZWZvcmV7Y29udGVudDoiIjt3aWR0aDoxMDAlO2hlaWdodDoxcHg7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3otaW5kZXg6MTB9LmV0X3BiX2RpdmlkZXI6YWZ0ZXIsLmV0X3BiX3NwYWNlOmFmdGVye2NvbnRlbnQ6IiI7ZGlzcGxheTp0YWJsZX0uZXRfcGJfZGl2aWRlcl9wb3NpdGlvbl9ib3R0b206YmVmb3Jle3RvcDphdXRvIWltcG9ydGFudDtib3R0b206MCFpbXBvcnRhbnR9LmV0X3BiX2RpdmlkZXJfcG9zaXRpb25fY2VudGVyOmJlZm9yZXt0b3A6NTAlIWltcG9ydGFudH1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX2RpdmlkZXJfcG9zaXRpb25fdG9wX3RhYmxldDpiZWZvcmV7dG9wOjAhaW1wb3J0YW50O2JvdHRvbTphdXRvIWltcG9ydGFudH0uZXRfcGJfZGl2aWRlcl9wb3NpdGlvbl9ib3R0b21fdGFibGV0OmJlZm9yZXt0b3A6YXV0byFpbXBvcnRhbnQ7Ym90dG9tOjAhaW1wb3J0YW50fS5ldF9wYl9kaXZpZGVyX3Bvc2l0aW9uX2NlbnRlcl90YWJsZXQ6YmVmb3Jle3RvcDo1MCUhaW1wb3J0YW50fS5ldF9wYl9zcGFjZS5ldC1oaWRlLW1vYmlsZXtkaXNwbGF5Om5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuZXRfcGJfZGl2aWRlcl9wb3NpdGlvbl90b3BfcGhvbmU6YmVmb3Jle3RvcDowIWltcG9ydGFudDtib3R0b206YXV0byFpbXBvcnRhbnR9LmV0X3BiX2RpdmlkZXJfcG9zaXRpb25fYm90dG9tX3Bob25lOmJlZm9yZXt0b3A6YXV0byFpbXBvcnRhbnQ7Ym90dG9tOjAhaW1wb3J0YW50fS5ldF9wYl9kaXZpZGVyX3Bvc2l0aW9uX2NlbnRlcl9waG9uZTpiZWZvcmV7dG9wOjUwJSFpbXBvcnRhbnR9fS5pZSAuZXRfcGJfZGl2aWRlcntvdmVyZmxvdzp2aXNpYmxlfQouZXRfcGJfd2l0aF9ib3JkZXIgLmV0LXBiLWljb24sLmV0X3BiX3dpdGhfYm9yZGVyIC5ldF9wYl9pbWFnZV93cmFwe2JvcmRlcjowIHNvbGlkICMzMzN9LmV0X3BiX2JsdXJiX2NvbnRlbnR7bWF4LXdpZHRoOjU1MHB4O21hcmdpbjowIGF1dG87cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpjZW50ZXI7d29yZC13cmFwOmJyZWFrLXdvcmQ7d2lkdGg6MTAwJX0uZXRfcGJfYmx1cmIuZXRfcGJfdGV4dF9hbGlnbl9sZWZ0IC5ldF9wYl9ibHVyYl9jb250ZW50IC5ldF9wYl9ibHVyYl9jb250YWluZXJ7dGV4dC1hbGlnbjpsZWZ0fS5ldF9wYl9ibHVyYi5ldF9wYl90ZXh0X2FsaWduX3JpZ2h0IC5ldF9wYl9ibHVyYl9jb250ZW50IC5ldF9wYl9ibHVyYl9jb250YWluZXJ7dGV4dC1hbGlnbjpyaWdodH0uZXRfcGJfYmx1cmIuZXRfcGJfdGV4dF9hbGlnbl9qdXN0aWZpZWQgLmV0X3BiX2JsdXJiX2NvbnRlbnQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lcnt0ZXh0LWFsaWduOmp1c3RpZnl9LmV0X3BiX2JsdXJiLmV0X3BiX3RleHRfYWxpZ25fY2VudGVyIC5ldF9wYl9ibHVyYl9jb250ZW50IC5ldF9wYl9ibHVyYl9jb250YWluZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LmV0X3BiX2JsdXJiX2NvbnRlbnQgcDpsYXN0LW9mLXR5cGV7cGFkZGluZy1ib3R0b206MH0uZXRfcGJfYmx1cmIgLmV0X3BiX21vZHVsZV9oZWFkZXIgYSwuZXRfcGJfYmx1cmIgaDQgYXt0ZXh0LWRlY29yYXRpb246bm9uZX0uZXRfcGJfYmx1cmIgLmV0X3BiX2ltYWdlX3dyYXB7ZGlzcGxheTpibG9jazttYXJnaW46YXV0b30uZXRfcGJfbWFpbl9ibHVyYl9pbWFnZSBpbWd7Ym9yZGVyLXJhZGl1czppbmhlcml0fS5ldF9wYl9tYWluX2JsdXJiX2ltYWdlIGltZ1tzcmMqPSIuc3ZnIl17d2lkdGg6YXV0b30uZXRfcGJfc3RpY2t5X21vZHVsZSAuZXRfcGJfbWFpbl9ibHVyYl9pbWFnZSAuZXRfcGJfaW1hZ2Vfd3JhcHt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlfS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0IC5ldF9wYl9ibHVyYl9jb250ZW50LC5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodCAuZXRfcGJfYmx1cmJfY29udGVudHtkaXNwbGF5OnRhYmxlfS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0IC5ldF9wYl9tYWluX2JsdXJiX2ltYWdlLC5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodCAuZXRfcGJfbWFpbl9ibHVyYl9pbWFnZXt3aWR0aDozMnB4O2Rpc3BsYXk6dGFibGUtY2VsbDtsaW5lLWhlaWdodDowfS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0IC5ldF9wYl9tYWluX2JsdXJiX2ltYWdlIGltZywuZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHQgLmV0X3BiX21haW5fYmx1cmJfaW1hZ2UgaW1ne3dpZHRoOmluaGVyaXR9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnQgLmV0LXBiLWljb24sLmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3JpZ2h0IC5ldC1wYi1pY29ue2ZvbnQtc2l6ZTozMnB4fS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodCAuZXQtcGItaWNvbntkaXNwbGF5OnRhYmxlLWNlbGx9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lciwuZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lcntkaXNwbGF5OnRhYmxlLWNlbGw7dmVydGljYWwtYWxpZ246dG9wfS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0IC5ldF9wYl9ibHVyYl9jb250YWluZXJ7cGFkZGluZy1sZWZ0OjE1cHh9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnQgLmV0X3BiX2JsdXJiX2NvbnRlbnR7dGV4dC1hbGlnbjpsZWZ0fS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodCAuZXRfcGJfYmx1cmJfY29udGFpbmVye3BhZGRpbmctcmlnaHQ6MTVweH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHQgLmV0X3BiX2JsdXJiX2NvbnRlbnR7dGV4dC1hbGlnbjpyaWdodH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHQgLmV0X3BiX21haW5fYmx1cmJfaW1hZ2V7bGVmdDphdXRvO3JpZ2h0OjB9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3JpZ2h0IC5ldC1wYi1pY29ue21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjIwcHh9LmV0X3BiX21haW5fYmx1cmJfaW1hZ2V7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWJvdHRvbTozMHB4O2xpbmUtaGVpZ2h0OjA7bWF4LXdpZHRoOjEwMCV9QG1lZGlhIChtYXgtd2lkdGg6OTgwcHgpey5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0X3RhYmxldCAuZXRfcGJfbWFpbl9ibHVyYl9pbWFnZSwuZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfdGFibGV0IC5ldF9wYl9tYWluX2JsdXJiX2ltYWdle3dpZHRoOjMycHg7ZGlzcGxheTp0YWJsZS1jZWxsO2xpbmUtaGVpZ2h0OjB9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnRfdGFibGV0IC5ldF9wYl9tYWluX2JsdXJiX2ltYWdlIGltZywuZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfdGFibGV0IC5ldF9wYl9tYWluX2JsdXJiX2ltYWdlIGltZ3t3aWR0aDppbmhlcml0fS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0X3RhYmxldCAuZXQtcGItaWNvbiwuZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfdGFibGV0IC5ldC1wYi1pY29ue2ZvbnQtc2l6ZTozMnB4O2Rpc3BsYXk6dGFibGUtY2VsbH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fbGVmdF90YWJsZXQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lciwuZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfdGFibGV0IC5ldF9wYl9ibHVyYl9jb250YWluZXJ7ZGlzcGxheTp0YWJsZS1jZWxsO3ZlcnRpY2FsLWFsaWduOnRvcH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fbGVmdF90YWJsZXQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lcntwYWRkaW5nLWxlZnQ6MTVweH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fbGVmdF90YWJsZXQgLmV0X3BiX2JsdXJiX2NvbnRlbnR7dGV4dC1hbGlnbjpsZWZ0fS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodF90YWJsZXQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lcntwYWRkaW5nLXJpZ2h0OjE1cHh9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3JpZ2h0X3RhYmxldCAuZXRfcGJfYmx1cmJfY29udGVudHtwYWRkaW5nLXJpZ2h0OjUycHg7dGV4dC1hbGlnbjpyaWdodH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfdGFibGV0IC5ldF9wYl9tYWluX2JsdXJiX2ltYWdle2xlZnQ6YXV0bztyaWdodDowfS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodF90YWJsZXQgLmV0LXBiLWljb257bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MjBweH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fdG9wX3RhYmxldCAuZXRfcGJfbWFpbl9ibHVyYl9pbWFnZXtkaXNwbGF5OmJsb2NrO3dpZHRoOmF1dG99LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3RvcF90YWJsZXQgLmV0LXBiLWljb257Zm9udC1zaXplOjk2cHg7ZGlzcGxheTppbml0aWFsfS5ldF9wYl9ibHVyYl9wb3NpdGlvbl90b3BfdGFibGV0IC5ldF9wYl9ibHVyYl9jb250YWluZXJ7ZGlzcGxheTpibG9jaztwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjB9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3RvcF90YWJsZXQgLmV0X3BiX2JsdXJiX2NvbnRlbnR7ZGlzcGxheTppbmxpbmUtYmxvY2s7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZy1yaWdodDowfX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnRfcGhvbmUgLmV0X3BiX21haW5fYmx1cmJfaW1hZ2UsLmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3JpZ2h0X3Bob25lIC5ldF9wYl9tYWluX2JsdXJiX2ltYWdle3dpZHRoOjMycHg7ZGlzcGxheTp0YWJsZS1jZWxsO2xpbmUtaGVpZ2h0OjB9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnRfcGhvbmUgLmV0X3BiX21haW5fYmx1cmJfaW1hZ2UgaW1nLC5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodF9waG9uZSAuZXRfcGJfbWFpbl9ibHVyYl9pbWFnZSBpbWd7d2lkdGg6aW5oZXJpdH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fbGVmdF9waG9uZSAuZXQtcGItaWNvbiwuZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfcGhvbmUgLmV0LXBiLWljb257Zm9udC1zaXplOjMycHg7ZGlzcGxheTp0YWJsZS1jZWxsfS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0X3Bob25lIC5ldF9wYl9ibHVyYl9jb250YWluZXIsLmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3JpZ2h0X3Bob25lIC5ldF9wYl9ibHVyYl9jb250YWluZXJ7ZGlzcGxheTp0YWJsZS1jZWxsO3ZlcnRpY2FsLWFsaWduOnRvcH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fbGVmdF9waG9uZSAuZXRfcGJfYmx1cmJfY29udGFpbmVye3BhZGRpbmctbGVmdDoxNXB4fS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0X3Bob25lIC5ldF9wYl9ibHVyYl9jb250ZW50e3RleHQtYWxpZ246bGVmdH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfcGhvbmUgLmV0X3BiX2JsdXJiX2NvbnRhaW5lcntwYWRkaW5nLXJpZ2h0OjE1cHh9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3JpZ2h0X3Bob25lIC5ldF9wYl9ibHVyYl9jb250ZW50e3BhZGRpbmctcmlnaHQ6NTJweDt0ZXh0LWFsaWduOnJpZ2h0fS5ldF9wYl9ibHVyYl9wb3NpdGlvbl9yaWdodF9waG9uZSAuZXRfcGJfbWFpbl9ibHVyYl9pbWFnZXtsZWZ0OmF1dG87cmlnaHQ6MH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fcmlnaHRfcGhvbmUgLmV0LXBiLWljb257bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MjBweH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fdG9wX3Bob25lIC5ldF9wYl9tYWluX2JsdXJiX2ltYWdle2Rpc3BsYXk6YmxvY2s7d2lkdGg6YXV0b30uZXRfcGJfYmx1cmJfcG9zaXRpb25fdG9wX3Bob25lIC5ldC1wYi1pY29ue2ZvbnQtc2l6ZTo5NnB4O2Rpc3BsYXk6aW5pdGlhbH0uZXRfcGJfYmx1cmJfcG9zaXRpb25fdG9wX3Bob25lIC5ldF9wYl9ibHVyYl9jb250YWluZXJ7ZGlzcGxheTpibG9jaztwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjB9LmV0X3BiX2JsdXJiX3Bvc2l0aW9uX3RvcF9waG9uZSAuZXRfcGJfYmx1cmJfY29udGVudHtkaXNwbGF5OmlubGluZS1ibG9jazt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nLXJpZ2h0OjB9fUBtZWRpYSAobWF4LXdpZHRoOjk4MHB4KXsuZXRfcGJfYmx1cmIuZXRfcGJfdGV4dF9hbGlnbl9sZWZ0LXRhYmxldCAuZXRfcGJfYmx1cmJfY29udGVudCAuZXRfcGJfYmx1cmJfY29udGFpbmVye3RleHQtYWxpZ246bGVmdH0uZXRfcGJfYmx1cmIuZXRfcGJfdGV4dF9hbGlnbl9yaWdodC10YWJsZXQgLmV0X3BiX2JsdXJiX2NvbnRlbnQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lcnt0ZXh0LWFsaWduOnJpZ2h0fS5ldF9wYl9ibHVyYi5ldF9wYl90ZXh0X2FsaWduX2p1c3RpZmllZC10YWJsZXQgLmV0X3BiX2JsdXJiX2NvbnRlbnQgLmV0X3BiX2JsdXJiX2NvbnRhaW5lcnt0ZXh0LWFsaWduOmp1c3RpZnl9LmV0X3BiX2JsdXJiLmV0X3BiX3RleHRfYWxpZ25fY2VudGVyLXRhYmxldCAuZXRfcGJfYmx1cmJfY29udGVudCAuZXRfcGJfYmx1cmJfY29udGFpbmVye3RleHQtYWxpZ246Y2VudGVyfX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmV0X3BiX2JsdXJiLmV0X3BiX3RleHRfYWxpZ25fbGVmdC1waG9uZSAuZXRfcGJfYmx1cmJfY29udGVudCAuZXRfcGJfYmx1cmJfY29udGFpbmVye3RleHQtYWxpZ246bGVmdH0uZXRfcGJfYmx1cmIuZXRfcGJfdGV4dF9hbGlnbl9yaWdodC1waG9uZSAuZXRfcGJfYmx1cmJfY29udGVudCAuZXRfcGJfYmx1cmJfY29udGFpbmVye3RleHQtYWxpZ246cmlnaHR9LmV0X3BiX2JsdXJiLmV0X3BiX3RleHRfYWxpZ25fanVzdGlmaWVkLXBob25lIC5ldF9wYl9ibHVyYl9jb250ZW50IC5ldF9wYl9ibHVyYl9jb250YWluZXJ7dGV4dC1hbGlnbjpqdXN0aWZ5fS5ldF9wYl9ibHVyYi5ldF9wYl90ZXh0X2FsaWduX2NlbnRlci1waG9uZSAuZXRfcGJfYmx1cmJfY29udGVudCAuZXRfcGJfYmx1cmJfY29udGFpbmVye3RleHQtYWxpZ246Y2VudGVyfX0KLmV0LXdheXBvaW50LmV0X3BiX2FuaW1hdGlvbl9vZmYsLmV0LXdheXBvaW50Om5vdCguZXRfcGJfY291bnRlcnMpLmV0X3BiX2FuaW1hdGlvbl9vZmYsLmV0X3BiX2FuaW1hdGlvbl9vZmZ7b3BhY2l0eToxfS5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fbGVmdC5ldC1hbmltYXRlZCwuZXRfcGJfYW5pbWF0aW9uX2xlZnQuZXQtYW5pbWF0ZWR7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVMZWZ0IDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDE7YW5pbWF0aW9uOmZhZGVMZWZ0IDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDF9LmV0LXdheXBvaW50LmV0X3BiX2FuaW1hdGlvbl9yaWdodC5ldC1hbmltYXRlZCwuZXRfcGJfYW5pbWF0aW9uX3JpZ2h0LmV0LWFuaW1hdGVke29wYWNpdHk6MTstd2Via2l0LWFuaW1hdGlvbjpmYWRlUmlnaHQgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZVJpZ2h0IDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDF9LmV0LXdheXBvaW50LmV0X3BiX2FuaW1hdGlvbl90b3AuZXQtYW5pbWF0ZWQsLmV0X3BiX2FuaW1hdGlvbl90b3AuZXQtYW5pbWF0ZWR7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVUb3AgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZVRvcCAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxfS5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fYm90dG9tLmV0LWFuaW1hdGVkLC5ldF9wYl9hbmltYXRpb25fYm90dG9tLmV0LWFuaW1hdGVke29wYWNpdHk6MTstd2Via2l0LWFuaW1hdGlvbjpmYWRlQm90dG9tIDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDE7YW5pbWF0aW9uOmZhZGVCb3R0b20gMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMX0uZXQtd2F5cG9pbnQuZXRfcGJfYW5pbWF0aW9uX2ZhZGVfaW4uZXQtYW5pbWF0ZWQsLmV0X3BiX2FuaW1hdGlvbl9mYWRlX2luLmV0LWFuaW1hdGVke29wYWNpdHk6MTstd2Via2l0LWFuaW1hdGlvbjpmYWRlSW4gMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZUluIDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDF9QG1lZGlhIChtYXgtd2lkdGg6OTgwcHgpey5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fb2ZmX3RhYmxldCwuZXQtd2F5cG9pbnQ6bm90KC5ldF9wYl9jb3VudGVycykuZXRfcGJfYW5pbWF0aW9uX29mZl90YWJsZXQsLmV0X3BiX2FuaW1hdGlvbl9vZmZfdGFibGV0e29wYWNpdHk6MTstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfS5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fbGVmdF90YWJsZXQuZXQtYW5pbWF0ZWQsLmV0X3BiX2FuaW1hdGlvbl9sZWZ0X3RhYmxldC5ldC1hbmltYXRlZHtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246ZmFkZUxlZnQgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZUxlZnQgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMX0uZXQtd2F5cG9pbnQuZXRfcGJfYW5pbWF0aW9uX3JpZ2h0X3RhYmxldC5ldC1hbmltYXRlZCwuZXRfcGJfYW5pbWF0aW9uX3JpZ2h0X3RhYmxldC5ldC1hbmltYXRlZHtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246ZmFkZVJpZ2h0IDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDE7YW5pbWF0aW9uOmZhZGVSaWdodCAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxfS5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fdG9wX3RhYmxldC5ldC1hbmltYXRlZCwuZXRfcGJfYW5pbWF0aW9uX3RvcF90YWJsZXQuZXQtYW5pbWF0ZWR7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVUb3AgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZVRvcCAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxfS5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fYm90dG9tX3RhYmxldC5ldC1hbmltYXRlZCwuZXRfcGJfYW5pbWF0aW9uX2JvdHRvbV90YWJsZXQuZXQtYW5pbWF0ZWR7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVCb3R0b20gMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZUJvdHRvbSAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxfS5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fZmFkZV9pbl90YWJsZXQuZXQtYW5pbWF0ZWQsLmV0X3BiX2FuaW1hdGlvbl9mYWRlX2luX3RhYmxldC5ldC1hbmltYXRlZHtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246ZmFkZUluIDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDE7YW5pbWF0aW9uOmZhZGVJbiAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxfX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmV0LXdheXBvaW50LmV0X3BiX2FuaW1hdGlvbl9vZmZfcGhvbmUsLmV0LXdheXBvaW50Om5vdCguZXRfcGJfY291bnRlcnMpLmV0X3BiX2FuaW1hdGlvbl9vZmZfcGhvbmUsLmV0X3BiX2FuaW1hdGlvbl9vZmZfcGhvbmV7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOm5vbmU7YW5pbWF0aW9uOm5vbmV9LmV0LXdheXBvaW50LmV0X3BiX2FuaW1hdGlvbl9sZWZ0X3Bob25lLmV0LWFuaW1hdGVkLC5ldF9wYl9hbmltYXRpb25fbGVmdF9waG9uZS5ldC1hbmltYXRlZHtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246ZmFkZUxlZnQgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZUxlZnQgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMX0uZXQtd2F5cG9pbnQuZXRfcGJfYW5pbWF0aW9uX3JpZ2h0X3Bob25lLmV0LWFuaW1hdGVkLC5ldF9wYl9hbmltYXRpb25fcmlnaHRfcGhvbmUuZXQtYW5pbWF0ZWR7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVSaWdodCAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxO2FuaW1hdGlvbjpmYWRlUmlnaHQgMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMX0uZXQtd2F5cG9pbnQuZXRfcGJfYW5pbWF0aW9uX3RvcF9waG9uZS5ldC1hbmltYXRlZCwuZXRfcGJfYW5pbWF0aW9uX3RvcF9waG9uZS5ldC1hbmltYXRlZHtvcGFjaXR5OjE7LXdlYmtpdC1hbmltYXRpb246ZmFkZVRvcCAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxO2FuaW1hdGlvbjpmYWRlVG9wIDFzIGN1YmljLWJlemllciguNzcsMCwuMTc1LDEpIDF9LmV0LXdheXBvaW50LmV0X3BiX2FuaW1hdGlvbl9ib3R0b21fcGhvbmUuZXQtYW5pbWF0ZWQsLmV0X3BiX2FuaW1hdGlvbl9ib3R0b21fcGhvbmUuZXQtYW5pbWF0ZWR7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVCb3R0b20gMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMTthbmltYXRpb246ZmFkZUJvdHRvbSAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxfS5ldC13YXlwb2ludC5ldF9wYl9hbmltYXRpb25fZmFkZV9pbl9waG9uZS5ldC1hbmltYXRlZCwuZXRfcGJfYW5pbWF0aW9uX2ZhZGVfaW5fcGhvbmUuZXQtYW5pbWF0ZWR7b3BhY2l0eToxOy13ZWJraXQtYW5pbWF0aW9uOmZhZGVJbiAxcyBjdWJpYy1iZXppZXIoLjc3LDAsLjE3NSwxKSAxO2FuaW1hdGlvbjpmYWRlSW4gMXMgY3ViaWMtYmV6aWVyKC43NywwLC4xNzUsMSkgMX19Cjwvc3R5bGU+CjxsaW5rICAgcmVsPSdwcmVsb2FkJyBpZD0nZGl2aS1keW5hbWljLWxhdGUtY3NzJyBocmVmPScvd3AtY29udGVudC9ldC1jYWNoZS80NjI1L2V0LWRpdmktZHluYW1pYy10Yi02NzI4LTQ2MjUtbGF0ZS5jc3M/dmVyPTE2NjIyNzk4NzYnIGFzPSdzdHlsZScgbWVkaWE9J2FsbCcgb25sb2FkPSJ0aGlzLm9ubG9hZD1udWxsO3RoaXMucmVsPSdzdHlsZXNoZWV0JyIgLz4KPGxpbmsgICByZWw9J3ByZWxvYWQnIGlkPSdkaXZpLWR5bmFtaWMtY3NzJyBocmVmPScvd3AtY29udGVudC9ldC1jYWNoZS80NjI1L2V0LWRpdmktZHluYW1pYy10Yi02NzI4LTQ2MjUuY3NzP3Zlcj0xNjYyMjc5ODc2JyBhcz0nc3R5bGUnIG1lZGlhPSdhbGwnIG9ubG9hZD0idGhpcy5vbmxvYWQ9bnVsbDt0aGlzLnJlbD0nc3R5bGVzaGVldCciIC8+CjxsaW5rIHJlbD0nc3R5bGVzaGVldCcgaWQ9J3B3YWZvcndwLXN0eWxlLWNzcycgIGhyZWY9Jy93cC1jb250ZW50L3BsdWdpbnMvcHdhLWZvci13cC9hc3NldHMvY3NzL3B3YWZvcndwLW1haW4ubWluLmNzcz92ZXI9MS43LjQ5JyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nZGl2aS1zdHlsZS1jc3MnICBocmVmPScvd3AtY29udGVudC90aGVtZXMvRGl2aS1jaGlsZC9zdHlsZS5jc3M/dmVyPTQuNC44LjE1OTI3NTgxMzcnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdqZXRwYWNrX2Nzcy1jc3MnICBocmVmPScvd3AtY29udGVudC9wbHVnaW5zL2pldHBhY2svY3NzL2pldHBhY2suY3NzP3Zlcj0xMS4zLjInIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8c2NyaXB0ICAgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9Jy93cC1pbmNsdWRlcy9qcy9qcXVlcnkvanF1ZXJ5Lm1pbi5qcz92ZXI9My42LjAnIGlkPSdqcXVlcnktY29yZS1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgICB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nL3dwLWluY2x1ZGVzL2pzL2pxdWVyeS9qcXVlcnktbWlncmF0ZS5taW4uanM/dmVyPTMuMy4yJyBpZD0nanF1ZXJ5LW1pZ3JhdGUtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgaWQ9J2pxdWVyeS1qcy1hZnRlcic+CmpxdWVyeVBhcmFtcy5sZW5ndGgmJiQuZWFjaChqcXVlcnlQYXJhbXMsZnVuY3Rpb24oZSxyKXtpZigiZnVuY3Rpb24iPT10eXBlb2Ygcil7dmFyIG49U3RyaW5nKHIpO24ucmVwbGFjZSgiJCIsImpRdWVyeSIpO3ZhciBhPW5ldyBGdW5jdGlvbigicmV0dXJuICIrbikoKTskKGRvY3VtZW50KS5yZWFkeShhKX19KTsKPC9zY3JpcHQ+CiAKPHNjcmlwdCAgIHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPScvd3AtY29udGVudC9wbHVnaW5zL2NoYXR5L2pzL2NodC1mcm9udC1zY3JpcHQubWluLmpzP3Zlcj0xNjI3ODM4Nzk0JyBpZD0nY2hhdHktZnJvbnQtZW5kLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIGlkPSdqcXVlcnktY29va2llLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBhZmZ3cF9zY3JpcHRzID0geyJhamF4dXJsIjoiL1wvd3AtYWRtaW5cL2FkbWluLWFqYXgucGhwIn07Ci8qIF1dPiAqLwo8L3NjcmlwdD4KPHNjcmlwdCAgIHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPScvd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlL2Fzc2V0cy9qcy9qcXVlcnktY29va2llL2pxdWVyeS5jb29raWUubWluLmpzP3Zlcj0xLjQuMS13Yy42LjkuNCcgaWQ9J2pxdWVyeS1jb29raWUtanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgaWQ9J2FmZndwLXRyYWNraW5nLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBhZmZ3cF9kZWJ1Z192YXJzID0geyJpbnRlZ3JhdGlvbnMiOnsibmluamEtZm9ybXMiOiJOaW5qYSBGb3JtcyIsIndvb2NvbW1lcmNlIjoiV29vQ29tbWVyY2UifSwidmVyc2lvbiI6IjIuOS42LjEiLCJjdXJyZW5jeSI6IlVTRCIsInJlZl9jb29raWUiOiJhZmZ3cF9yZWYiLCJ2aXNpdF9jb29raWUiOiJhZmZ3cF9yZWZfdmlzaXRfaWQiLCJjYW1wYWlnbl9jb29raWUiOiJhZmZ3cF9jYW1wYWlnbiJ9OwovKiBdXT4gKi8KPC9zY3JpcHQ+CjxzY3JpcHQgICB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nL3dwLWNvbnRlbnQvcGx1Z2lucy9hZmZpbGlhdGUtd3AvYXNzZXRzL2pzL3RyYWNraW5nLm1pbi5qcz92ZXI9Mi45LjYuMScgaWQ9J2FmZndwLXRyYWNraW5nLWpzJz48L3NjcmlwdD4KPHNjcmlwdCAgIGRlZmVyIHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwczovL3N0YXRzLndwLmNvbS9zLTIwMjI0MS5qcycgaWQ9J3dvb2NvbW1lcmNlLWFuYWx5dGljcy1qcyc+PC9zY3JpcHQ+CjxsaW5rIHJlbD0iaHR0cHM6Ly9hcGkudy5vcmcvIiBocmVmPSIvd3AtanNvbi8iIC8+PGxpbmsgcmVsPSJhbHRlcm5hdGUiIHR5cGU9ImFwcGxpY2F0aW9uL2pzb24iIGhyZWY9Ii93cC1qc29uL3dwL3YyL3BhZ2VzLzQ2MjUiIC8+PGxpbmsgcmVsPSJFZGl0VVJJIiB0eXBlPSJhcHBsaWNhdGlvbi9yc2QreG1sIiB0aXRsZT0iUlNEIiBocmVmPSIveG1scnBjLnBocD9yc2QiIC8+CjxsaW5rIHJlbD0id2x3bWFuaWZlc3QiIHR5cGU9ImFwcGxpY2F0aW9uL3dsd21hbmlmZXN0K3htbCIgaHJlZj0iL3dwLWluY2x1ZGVzL3dsd21hbmlmZXN0LnhtbCIgLz4gCjxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iV29yZFByZXNzIDYuMC4yIiAvPgo8bWV0YSBuYW1lPSJnZW5lcmF0b3IiIGNvbnRlbnQ9Ildvb0NvbW1lcmNlIDYuOS40IiAvPgo8bGluayByZWw9J3Nob3J0bGluaycgaHJlZj0nLycgLz4KPGxpbmsgcmVsPSJhbHRlcm5hdGUiIHR5cGU9ImFwcGxpY2F0aW9uL2pzb24rb2VtYmVkIiBocmVmPSIvd3AtanNvbi9vZW1iZWQvMS4wL2VtYmVkP3VybD1odHRwcyUzQSUyRiUyRm15Y3J5cHRvcGFyYWRpc2UuY29tJTJGIiAvPgo8bGluayByZWw9ImFsdGVybmF0ZSIgdHlwZT0idGV4dC94bWwrb2VtYmVkIiBocmVmPSIvd3AtanNvbi9vZW1iZWQvMS4wL2VtYmVkP3VybD1odHRwcyUzQSUyRiUyRm15Y3J5cHRvcGFyYWRpc2UuY29tJTJGJiMwMzg7Zm9ybWF0PXhtbCIgLz4KPG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJXUE1MIHZlcjo0LjUuMTEgc3R0OjksMSw0LDMsMjsiIC8+CgoJCTwhLS0gR0EgR29vZ2xlIEFuYWx5dGljcyBAIGh0dHBzOi8vbTBuLmNvL2dhIC0tPgoJCTxzY3JpcHQ+CgkJCShmdW5jdGlvbihpLHMsbyxnLHIsYSxtKXtpWydHb29nbGVBbmFseXRpY3NPYmplY3QnXT1yO2lbcl09aVtyXXx8ZnVuY3Rpb24oKXsKCQkJKGlbcl0ucT1pW3JdLnF8fFtdKS5wdXNoKGFyZ3VtZW50cyl9LGlbcl0ubD0xKm5ldyBEYXRlKCk7YT1zLmNyZWF0ZUVsZW1lbnQobyksCgkJCW09cy5nZXRFbGVtZW50c0J5VGFnTmFtZShvKVswXTthLmFzeW5jPTE7YS5zcmM9ZzttLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGEsbSkKCQkJfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdodHRwczovL3d3dy5nb29nbGUtYW5hbHl0aWNzLmNvbS9hbmFseXRpY3MuanMnLCdnYScpOwoJCQlnYSgnY3JlYXRlJywgJ1VBLTEzNTAzOTM2MS0xJywgJ2F1dG8nKTsKCQkJZ2EoJ3NlbmQnLCAncGFnZXZpZXcnKTsKCQk8L3NjcmlwdD4KCgk8IS0tIEdsb2JhbCBzaXRlIHRhZyAoZ3RhZy5qcykgLSBHb29nbGUgQWRzOiAxMDk1MTg0MzcyNiAtLT4KPHNjcmlwdCBhc3luYyBzcmM9Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL2d0YWcvanM/aWQ9QVctMTA5NTE4NDM3MjYiPjwvc2NyaXB0Pgo8c2NyaXB0PgogIHdpbmRvdy5kYXRhTGF5ZXIgPSB3aW5kb3cuZGF0YUxheWVyIHx8IFtdOwogIGZ1bmN0aW9uIGd0YWcoKXtkYXRhTGF5ZXIucHVzaChhcmd1bWVudHMpO30KICBndGFnKCdqcycsIG5ldyBEYXRlKCkpOwoKICBndGFnKCdjb25maWcnLCAnQVctMTA5NTE4NDM3MjYnKTsKPC9zY3JpcHQ+Cgo8bWV0YSBuYW1lPSJwOmRvbWFpbl92ZXJpZnkiIGNvbnRlbnQ9ImE1NWM1MzkyZTgxMTE0MDEwOTY1MjkzY2ExODY2YjE5Ii8+Cgo8bWV0YSBuYW1lPSJmYWNlYm9vay1kb21haW4tdmVyaWZpY2F0aW9uIiBjb250ZW50PSIwdXZkZDc3anBjeml1M3JrYnc2Z3R1OHlvb3k5YjYiIC8+Cgo8c2NyaXB0PgohZnVuY3Rpb24oZSx0LG4scyx1LGEpe2UudHdxfHwocz1lLnR3cT1mdW5jdGlvbigpe3MuZXhlP3MuZXhlLmFwcGx5KHMsYXJndW1lbnRzKTpzLnF1ZXVlLnB1c2goYXJndW1lbnRzKTsKfSxzLnZlcnNpb249JzEuMScscy5xdWV1ZT1bXSx1PXQuY3JlYXRlRWxlbWVudChuKSx1LmFzeW5jPSEwLHUuc3JjPScvL3N0YXRpYy5hZHMtdHdpdHRlci5jb20vdXd0LmpzJywKYT10LmdldEVsZW1lbnRzQnlUYWdOYW1lKG4pWzBdLGEucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodSxhKSl9KHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0Jyk7Ci8vIEluc2VydCBUd2l0dGVyIFBpeGVsIElEIGFuZCBTdGFuZGFyZCBFdmVudCBkYXRhIGJlbG93CnR3cSgnaW5pdCcsJ285ZGo5Jyk7CnR3cSgndHJhY2snLCdQYWdlVmlldycpOwo8L3NjcmlwdD4KPCEtLSBFbmQgVHdpdHRlciB1bml2ZXJzYWwgd2Vic2l0ZSB0YWcgY29kZSAtLT4KCjwhLS0gTWV0YSBQaXhlbCBDb2RlIC0tPgo8c2NyaXB0PgohZnVuY3Rpb24oZixiLGUsdixuLHQscykKe2lmKGYuZmJxKXJldHVybjtuPWYuZmJxPWZ1bmN0aW9uKCl7bi5jYWxsTWV0aG9kPwpuLmNhbGxNZXRob2QuYXBwbHkobixhcmd1bWVudHMpOm4ucXVldWUucHVzaChhcmd1bWVudHMpfTsKaWYoIWYuX2ZicSlmLl9mYnE9bjtuLnB1c2g9bjtuLmxvYWRlZD0hMDtuLnZlcnNpb249JzIuMCc7Cm4ucXVldWU9W107dD1iLmNyZWF0ZUVsZW1lbnQoZSk7dC5hc3luYz0hMDsKdC5zcmM9djtzPWIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSlbMF07CnMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodCxzKX0od2luZG93LCBkb2N1bWVudCwnc2NyaXB0JywKJ2h0dHBzOi8vY29ubmVjdC5mYWNlYm9vay5uZXQvZW5fVVMvZmJldmVudHMuanMnKTsKZmJxKCdpbml0JywgJzUyOTg0MzMzODQ1NDIzMScpOwpmYnEoJ3RyYWNrJywgJ1BhZ2VWaWV3Jyk7Cjwvc2NyaXB0Pgo8bm9zY3JpcHQ+PGltZyBoZWlnaHQ9IjEiIHdpZHRoPSIxIiBzdHlsZT0iZGlzcGxheTpub25lIgpzcmM9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS90cj9pZD01Mjk4NDMzMzg0NTQyMzEmZXY9UGFnZVZpZXcmbm9zY3JpcHQ9MSIKLz48L25vc2NyaXB0Pgo8IS0tIEVuZCBNZXRhIFBpeGVsIENvZGUgLS0+CgoKCgkJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgoJCXZhciBBRkZXUCA9IEFGRldQIHx8IHt9OwoJCUFGRldQLnJlZmVycmFsX3ZhciA9ICdyZWYnOwoJCUFGRldQLmV4cGlyYXRpb24gPSAyMDsKCQlBRkZXUC5kZWJ1ZyA9IDA7CgoKCQlBRkZXUC5yZWZlcnJhbF9jcmVkaXRfbGFzdCA9IDA7CgkJPC9zY3JpcHQ+CjxzdHlsZT5pbWcjd3BzdGF0c3tkaXNwbGF5Om5vbmV9PC9zdHlsZT4KCTxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCBtYXhpbXVtLXNjYWxlPTEuMCwgdXNlci1zY2FsYWJsZT0wIiAvPgk8bm9zY3JpcHQ+PHN0eWxlPi53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnl7IG9wYWNpdHk6IDEgIWltcG9ydGFudDsgfTwvc3R5bGU+PC9ub3NjcmlwdD4KCTxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L2Nyb3BwZWQtY3JvcHBlZC1Mb2dvLXN5bWJvbC1iZXotcG96YWRpLTQtMzJ4MzIucG5nIiBzaXplcz0iMzJ4MzIiIC8+CjxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L2Nyb3BwZWQtY3JvcHBlZC1Mb2dvLXN5bWJvbC1iZXotcG96YWRpLTQtMTkyeDE5Mi5wbmciIHNpemVzPSIxOTJ4MTkyIiAvPgo8bWV0YSBuYW1lPSJtc2FwcGxpY2F0aW9uLVRpbGVJbWFnZSIgY29udGVudD0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L2Nyb3BwZWQtY3JvcHBlZC1Mb2dvLXN5bWJvbC1iZXotcG96YWRpLTQtMjcweDI3MC5wbmciIC8+CjxtZXRhIG5hbWU9InB3YWZvcndwIiBjb250ZW50PSJ3b3JkcHJlc3MtcGx1Z2luIi8+CiAgICAgICAgPG1ldGEgbmFtZT0idGhlbWUtY29sb3IiIGNvbnRlbnQ9IiNENUUwRUIiPgogICAgICAgIDxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLXRpdGxlIiBjb250ZW50PSJFcXVpbnV4Z2xvYmFsYXNzZXQiPgogICAgICAgIDxtZXRhIG5hbWU9ImFwcGxpY2F0aW9uLW5hbWUiIGNvbnRlbnQ9IkVxdWludXhnbG9iYWxhc3NldCI+CiAgICAgICAgPG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIj4KICAgICAgICA8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC1zdGF0dXMtYmFyLXN0eWxlIiBjb250ZW50PSJkZWZhdWx0Ij4KICAgICAgICA8bWV0YSBuYW1lPSJtb2JpbGUtd2ViLWFwcC1jYXBhYmxlIiBjb250ZW50PSJ5ZXMiPgogICAgICAgIDxtZXRhIG5hbWU9ImFwcGxlLXRvdWNoLWZ1bGxzY3JlZW4iIGNvbnRlbnQ9IllFUyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtc3RhcnR1cC1pbWFnZSIgaHJlZj0iL3dwLWNvbnRlbnQvcGx1Z2lucy9wd2EtZm9yLXdwL2ltYWdlcy9sb2dvLnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjE5MngxOTIiIGhyZWY9Ii93cC1jb250ZW50L3BsdWdpbnMvcHdhLWZvci13cC9pbWFnZXMvbG9nby5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI1MTJ4NTEyIiBocmVmPSIvd3AtY29udGVudC9wbHVnaW5zL3B3YS1mb3Itd3AvaW1hZ2VzL2xvZ28tNTEyeDUxMi5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLXN0YXJ0dXAtaW1hZ2UiIGhyZWY9Ii93cC1jb250ZW50L3BsdWdpbnMvcHdhLWZvci13cC9pbWFnZXMvbG9nby01MTJ4NTEyLnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjUxMng1MTIiIGhyZWY9Ii93cC1jb250ZW50L3BsdWdpbnMvcHdhLWZvci13cC9pbWFnZXMvbG9nby01MTJ4NTEyLnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtc3RhcnR1cC1pbWFnZSIgaHJlZj0iL3dwLWNvbnRlbnQvcGx1Z2lucy9wd2EtZm9yLXdwL2ltYWdlcy9sb2dvLTUxMng1MTIucG5nIi8+CjxzdHlsZSBpZD0iZXQtY3JpdGljYWwtaW5saW5lLWNzcyI+Ym9keSwuZXRfcGJfY29sdW1uXzFfMiAuZXRfcXVvdGVfY29udGVudCBibG9ja3F1b3RlIGNpdGUsLmV0X3BiX2NvbHVtbl8xXzIgLmV0X2xpbmtfY29udGVudCBhLmV0X2xpbmtfbWFpbl91cmwsLmV0X3BiX2NvbHVtbl8xXzMgLmV0X3F1b3RlX2NvbnRlbnQgYmxvY2txdW90ZSBjaXRlLC5ldF9wYl9jb2x1bW5fM184IC5ldF9xdW90ZV9jb250ZW50IGJsb2NrcXVvdGUgY2l0ZSwuZXRfcGJfY29sdW1uXzFfNCAuZXRfcXVvdGVfY29udGVudCBibG9ja3F1b3RlIGNpdGUsLmV0X3BiX2Jsb2dfZ3JpZCAuZXRfcXVvdGVfY29udGVudCBibG9ja3F1b3RlIGNpdGUsLmV0X3BiX2NvbHVtbl8xXzMgLmV0X2xpbmtfY29udGVudCBhLmV0X2xpbmtfbWFpbl91cmwsLmV0X3BiX2NvbHVtbl8zXzggLmV0X2xpbmtfY29udGVudCBhLmV0X2xpbmtfbWFpbl91cmwsLmV0X3BiX2NvbHVtbl8xXzQgLmV0X2xpbmtfY29udGVudCBhLmV0X2xpbmtfbWFpbl91cmwsLmV0X3BiX2Jsb2dfZ3JpZCAuZXRfbGlua19jb250ZW50IGEuZXRfbGlua19tYWluX3VybCxib2R5IC5ldF9wYl9iZ19sYXlvdXRfbGlnaHQgLmV0X3BiX3Bvc3QgcCxib2R5IC5ldF9wYl9iZ19sYXlvdXRfZGFyayAuZXRfcGJfcG9zdCBwe2ZvbnQtc2l6ZToxNnB4fS5ldF9wYl9zbGlkZV9jb250ZW50LC5ldF9wYl9iZXN0X3ZhbHVle2ZvbnQtc2l6ZToxOHB4fS53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsLndvb2NvbW1lcmNlLXBhZ2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LC53b29jb21tZXJjZSAjY29udGVudCBpbnB1dC5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLC53b29jb21tZXJjZS1tZXNzYWdlLC53b29jb21tZXJjZS1lcnJvciwud29vY29tbWVyY2UtaW5mb3tiYWNrZ3JvdW5kOiMzNDY5YTkhaW1wb3J0YW50fSNldF9zZWFyY2hfaWNvbjpob3ZlciwubW9iaWxlX21lbnVfYmFyOmJlZm9yZSwubW9iaWxlX21lbnVfYmFyOmFmdGVyLC5ldF90b2dnbGVfc2xpZGVfbWVudTphZnRlciwuZXQtc29jaWFsLWljb24gYTpob3ZlciwuZXRfcGJfc3VtLC5ldF9wYl9wcmljaW5nIGxpIGEsLmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uLC5ldF9vdmVybGF5OmJlZm9yZSwuZW50cnktc3VtbWFyeSBwLnByaWNlIGlucywud29vY29tbWVyY2UgZGl2LnByb2R1Y3Qgc3Bhbi5wcmljZSwud29vY29tbWVyY2UtcGFnZSBkaXYucHJvZHVjdCBzcGFuLnByaWNlLC53b29jb21tZXJjZSAjY29udGVudCBkaXYucHJvZHVjdCBzcGFuLnByaWNlLC53b29jb21tZXJjZS1wYWdlICNjb250ZW50IGRpdi5wcm9kdWN0IHNwYW4ucHJpY2UsLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHAucHJpY2UsLndvb2NvbW1lcmNlLXBhZ2UgZGl2LnByb2R1Y3QgcC5wcmljZSwud29vY29tbWVyY2UgI2NvbnRlbnQgZGl2LnByb2R1Y3QgcC5wcmljZSwud29vY29tbWVyY2UtcGFnZSAjY29udGVudCBkaXYucHJvZHVjdCBwLnByaWNlLC5ldF9wYl9tZW1iZXJfc29jaWFsX2xpbmtzIGE6aG92ZXIsLndvb2NvbW1lcmNlIC5zdGFyLXJhdGluZyBzcGFuOmJlZm9yZSwud29vY29tbWVyY2UtcGFnZSAuc3Rhci1yYXRpbmcgc3BhbjpiZWZvcmUsLmV0X3BiX3dpZGdldCBsaSBhOmhvdmVyLC5ldF9wYl9maWx0ZXJhYmxlX3BvcnRmb2xpbyAuZXRfcGJfcG9ydGZvbGlvX2ZpbHRlcnMgbGkgYS5hY3RpdmUsLmV0X3BiX2ZpbHRlcmFibGVfcG9ydGZvbGlvIC5ldF9wYl9wb3J0b2ZvbGlvX3BhZ2luYXRpb24gdWwgbGkgYS5hY3RpdmUsLmV0X3BiX2dhbGxlcnkgLmV0X3BiX2dhbGxlcnlfcGFnaW5hdGlvbiB1bCBsaSBhLmFjdGl2ZSwud3AtcGFnZW5hdmkgc3Bhbi5jdXJyZW50LC53cC1wYWdlbmF2aSBhOmhvdmVyLC5uYXYtc2luZ2xlIGEsLnRhZ2dlZF9hcyBhLC5wb3N0ZWRfaW4gYXtjb2xvcjojMzQ2OWE5fS5ldF9wYl9jb250YWN0X3N1Ym1pdCwuZXRfcGFzc3dvcmRfcHJvdGVjdGVkX2Zvcm0gLmV0X3N1Ym1pdF9idXR0b24sLmV0X3BiX2JnX2xheW91dF9saWdodCAuZXRfcGJfbmV3c2xldHRlcl9idXR0b24sLmNvbW1lbnQtcmVwbHktbGluaywuZm9ybS1zdWJtaXQgLmV0X3BiX2J1dHRvbiwuZXRfcGJfYmdfbGF5b3V0X2xpZ2h0IC5ldF9wYl9wcm9tb19idXR0b24sLmV0X3BiX2JnX2xheW91dF9saWdodCAuZXRfcGJfbW9yZV9idXR0b24sLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdCwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZCwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdCwud29vY29tbWVyY2UtcGFnZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZCwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdCwud29vY29tbWVyY2UtcGFnZSBpbnB1dC5idXR0b24uYWx0LC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LC53b29jb21tZXJjZS1wYWdlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQsLndvb2NvbW1lcmNlICNjb250ZW50IGlucHV0LmJ1dHRvbi5hbHQsLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgaW5wdXQuYnV0dG9uLmFsdCwud29vY29tbWVyY2UgYS5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgYS5idXR0b24sLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sLndvb2NvbW1lcmNlLXBhZ2UgYnV0dG9uLmJ1dHRvbiwud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLC53b29jb21tZXJjZS1wYWdlIGlucHV0LmJ1dHRvbiwuZXRfcGJfY29udGFjdCBwIGlucHV0W3R5cGU9ImNoZWNrYm94Il06Y2hlY2tlZCtsYWJlbCBpOmJlZm9yZSwuZXRfcGJfYmdfbGF5b3V0X2xpZ2h0LmV0X3BiX21vZHVsZS5ldF9wYl9idXR0b257Y29sb3I6IzM0NjlhOX0uZm9vdGVyLXdpZGdldCBoNHtjb2xvcjojMzQ2OWE5fS5ldC1zZWFyY2gtZm9ybSwubmF2IGxpIHVsLC5ldF9tb2JpbGVfbWVudSwuZm9vdGVyLXdpZGdldCBsaTpiZWZvcmUsLmV0X3BiX3ByaWNpbmcgbGk6YmVmb3JlLGJsb2NrcXVvdGV7Ym9yZGVyLWNvbG9yOiMzNDY5YTl9LmV0X3BiX2NvdW50ZXJfYW1vdW50LC5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nLC5ldF9xdW90ZV9jb250ZW50LC5ldF9saW5rX2NvbnRlbnQsLmV0X2F1ZGlvX2NvbnRlbnQsLmV0X3BiX3Bvc3Rfc2xpZGVyLmV0X3BiX2JnX2xheW91dF9kYXJrLC5ldF9zbGlkZV9pbl9tZW51X2NvbnRhaW5lciwuZXRfcGJfY29udGFjdCBwIGlucHV0W3R5cGU9InJhZGlvIl06Y2hlY2tlZCtsYWJlbCBpOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiMzNDY5YTl9YXtjb2xvcjojMzQ2OWE5fSNtYWluLWhlYWRlciwjbWFpbi1oZWFkZXIgLm5hdiBsaSB1bCwuZXQtc2VhcmNoLWZvcm0sI21haW4taGVhZGVyIC5ldF9tb2JpbGVfbWVudXtiYWNrZ3JvdW5kLWNvbG9yOiMyMTBmNTZ9Lm5hdiBsaSB1bHtib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwKX0jdG9wLWhlYWRlciwjZXQtc2Vjb25kYXJ5LW5hdiBsaSB1bHtiYWNrZ3JvdW5kLWNvbG9yOiMzNDY5YTl9I2V0LXNlY29uZGFyeS1uYXYgbGkgdWwgYXtjb2xvcjojMDAwMDAwfS5ldF9oZWFkZXJfc3R5bGVfY2VudGVyZWQgLm1vYmlsZV9uYXYgLnNlbGVjdF9wYWdlLC5ldF9oZWFkZXJfc3R5bGVfc3BsaXQgLm1vYmlsZV9uYXYgLnNlbGVjdF9wYWdlLC5ldF9uYXZfdGV4dF9jb2xvcl9saWdodCAjdG9wLW1lbnU+bGk+YSwuZXRfbmF2X3RleHRfY29sb3JfZGFyayAjdG9wLW1lbnU+bGk+YSwjdG9wLW1lbnUgYSwuZXRfbW9iaWxlX21lbnUgbGkgYSwuZXRfbmF2X3RleHRfY29sb3JfbGlnaHQgLmV0X21vYmlsZV9tZW51IGxpIGEsLmV0X25hdl90ZXh0X2NvbG9yX2RhcmsgLmV0X21vYmlsZV9tZW51IGxpIGEsI2V0X3NlYXJjaF9pY29uOmJlZm9yZSwuZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyIGlucHV0LHNwYW4uZXRfY2xvc2Vfc2VhcmNoX2ZpZWxkOmFmdGVyLCNldC10b3AtbmF2aWdhdGlvbiAuZXQtY2FydC1pbmZve2NvbG9yOiNmZmZmZmZ9LmV0X3NlYXJjaF9mb3JtX2NvbnRhaW5lciBpbnB1dDo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjojZmZmZmZmfS5ldF9zZWFyY2hfZm9ybV9jb250YWluZXIgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6I2ZmZmZmZn0uZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjojZmZmZmZmfSN0b3AtbWVudSBsaSBhLC5ldF9zZWFyY2hfZm9ybV9jb250YWluZXIgaW5wdXR7bGV0dGVyLXNwYWNpbmc6MXB4fS5ldF9zZWFyY2hfZm9ybV9jb250YWluZXIgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXJ7bGV0dGVyLXNwYWNpbmc6MXB4fS5ldF9zZWFyY2hfZm9ybV9jb250YWluZXIgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXJ7bGV0dGVyLXNwYWNpbmc6MXB4fS5ldF9zZWFyY2hfZm9ybV9jb250YWluZXIgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVye2xldHRlci1zcGFjaW5nOjFweH0jdG9wLW1lbnUgbGkuY3VycmVudC1tZW51LWFuY2VzdG9yPmEsI3RvcC1tZW51IGxpLmN1cnJlbnQtbWVudS1pdGVtPmEsI3RvcC1tZW51IGxpLmN1cnJlbnRfcGFnZV9pdGVtPmF7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjg3KX0jbWFpbi1mb290ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDAwMDAwfSNtYWluLWZvb3RlciAuZm9vdGVyLXdpZGdldCBoNCwjbWFpbi1mb290ZXIgLndpZGdldF9ibG9jayBoMSwjbWFpbi1mb290ZXIgLndpZGdldF9ibG9jayBoMiwjbWFpbi1mb290ZXIgLndpZGdldF9ibG9jayBoMywjbWFpbi1mb290ZXIgLndpZGdldF9ibG9jayBoNCwjbWFpbi1mb290ZXIgLndpZGdldF9ibG9jayBoNSwjbWFpbi1mb290ZXIgLndpZGdldF9ibG9jayBoNntjb2xvcjojZmZmZmZmfS5mb290ZXItd2lkZ2V0IGxpOmJlZm9yZXtib3JkZXItY29sb3I6I2ZmZmZmZn0uZm9vdGVyLXdpZGdldCwuZm9vdGVyLXdpZGdldCBsaSwuZm9vdGVyLXdpZGdldCBsaSBhLCNmb290ZXItaW5mb3tmb250LXNpemU6MTRweH0uZm9vdGVyLXdpZGdldCAuZXRfcGJfd2lkZ2V0IGRpdiwuZm9vdGVyLXdpZGdldCAuZXRfcGJfd2lkZ2V0IHVsLC5mb290ZXItd2lkZ2V0IC5ldF9wYl93aWRnZXQgb2wsLmZvb3Rlci13aWRnZXQgLmV0X3BiX3dpZGdldCBsYWJlbHtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHlsZTpub3JtYWw7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtZGVjb3JhdGlvbjpub25lfS5mb290ZXItd2lkZ2V0IC5ldF9wYl93aWRnZXQgZGl2LC5mb290ZXItd2lkZ2V0IC5ldF9wYl93aWRnZXQgdWwsLmZvb3Rlci13aWRnZXQgLmV0X3BiX3dpZGdldCBvbCwuZm9vdGVyLXdpZGdldCAuZXRfcGJfd2lkZ2V0IGxhYmVse2xpbmUtaGVpZ2h0OjEuN2VtfSNldC1mb290ZXItbmF2IC5ib3R0b20tbmF2IGxpLmN1cnJlbnQtbWVudS1pdGVtIGF7Y29sb3I6IzM0NjlhOX0jZm9vdGVyLWluZm8sI2Zvb3Rlci1pbmZvIGF7Y29sb3I6I2ZmZmZmZn0jZm9vdGVyLWluZm97Zm9udC1zaXplOjEycHh9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk4MXB4KXsjbWFpbi1mb290ZXIgLmZvb3Rlci13aWRnZXQgaDQsI21haW4tZm9vdGVyIC53aWRnZXRfYmxvY2sgaDEsI21haW4tZm9vdGVyIC53aWRnZXRfYmxvY2sgaDIsI21haW4tZm9vdGVyIC53aWRnZXRfYmxvY2sgaDMsI21haW4tZm9vdGVyIC53aWRnZXRfYmxvY2sgaDQsI21haW4tZm9vdGVyIC53aWRnZXRfYmxvY2sgaDUsI21haW4tZm9vdGVyIC53aWRnZXRfYmxvY2sgaDZ7Zm9udC1zaXplOjIycHh9I2xvZ297bWF4LWhlaWdodDo4MCV9LmV0X3BiX3N2Z19sb2dvICNsb2dve2hlaWdodDo4MCV9LmV0X2hlYWRlcl9zdHlsZV9sZWZ0IC5ldC1maXhlZC1oZWFkZXIgI2V0LXRvcC1uYXZpZ2F0aW9uLC5ldF9oZWFkZXJfc3R5bGVfc3BsaXQgLmV0LWZpeGVkLWhlYWRlciAjZXQtdG9wLW5hdmlnYXRpb257cGFkZGluZzoyOXB4IDAgMCAwfS5ldF9oZWFkZXJfc3R5bGVfbGVmdCAuZXQtZml4ZWQtaGVhZGVyICNldC10b3AtbmF2aWdhdGlvbiBuYXY+dWw+bGk+YSwuZXRfaGVhZGVyX3N0eWxlX3NwbGl0IC5ldC1maXhlZC1oZWFkZXIgI2V0LXRvcC1uYXZpZ2F0aW9uIG5hdj51bD5saT5he3BhZGRpbmctYm90dG9tOjI5cHh9LmV0X2hlYWRlcl9zdHlsZV9jZW50ZXJlZCBoZWFkZXIjbWFpbi1oZWFkZXIuZXQtZml4ZWQtaGVhZGVyIC5sb2dvX2NvbnRhaW5lcntoZWlnaHQ6NThweH0uZXRfaGVhZGVyX3N0eWxlX3NwbGl0ICNtYWluLWhlYWRlci5ldC1maXhlZC1oZWFkZXIgLmNlbnRlcmVkLWlubGluZS1sb2dvLXdyYXB7d2lkdGg6NThweDttYXJnaW46LTU4cHggMH0uZXRfaGVhZGVyX3N0eWxlX3NwbGl0IC5ldC1maXhlZC1oZWFkZXIgLmNlbnRlcmVkLWlubGluZS1sb2dvLXdyYXAgI2xvZ297bWF4LWhlaWdodDo1OHB4fS5ldF9wYl9zdmdfbG9nby5ldF9oZWFkZXJfc3R5bGVfc3BsaXQgLmV0LWZpeGVkLWhlYWRlciAuY2VudGVyZWQtaW5saW5lLWxvZ28td3JhcCAjbG9nb3toZWlnaHQ6NThweH0uZXRfaGVhZGVyX3N0eWxlX3NsaWRlIC5ldC1maXhlZC1oZWFkZXIgI2V0LXRvcC1uYXZpZ2F0aW9uLC5ldF9oZWFkZXJfc3R5bGVfZnVsbHNjcmVlbiAuZXQtZml4ZWQtaGVhZGVyICNldC10b3AtbmF2aWdhdGlvbntwYWRkaW5nOjIwcHggMCAyMHB4IDAhaW1wb3J0YW50fS5ldC1maXhlZC1oZWFkZXIgI3RvcC1tZW51IGEsLmV0LWZpeGVkLWhlYWRlciAjZXRfc2VhcmNoX2ljb246YmVmb3JlLC5ldC1maXhlZC1oZWFkZXIgI2V0X3RvcF9zZWFyY2ggLmV0LXNlYXJjaC1mb3JtIGlucHV0LC5ldC1maXhlZC1oZWFkZXIgLmV0X3NlYXJjaF9mb3JtX2NvbnRhaW5lciBpbnB1dCwuZXQtZml4ZWQtaGVhZGVyIC5ldF9jbG9zZV9zZWFyY2hfZmllbGQ6YWZ0ZXIsLmV0LWZpeGVkLWhlYWRlciAjZXQtdG9wLW5hdmlnYXRpb24gLmV0LWNhcnQtaW5mb3tjb2xvcjojZmZmZmZmIWltcG9ydGFudH0uZXQtZml4ZWQtaGVhZGVyIC5ldF9zZWFyY2hfZm9ybV9jb250YWluZXIgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6I2ZmZmZmZiFpbXBvcnRhbnR9LmV0LWZpeGVkLWhlYWRlciAuZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50fS5ldC1maXhlZC1oZWFkZXIgLmV0X3NlYXJjaF9mb3JtX2NvbnRhaW5lciBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6I2ZmZmZmZiFpbXBvcnRhbnR9LmV0LWZpeGVkLWhlYWRlciAjdG9wLW1lbnUgbGkuY3VycmVudC1tZW51LWFuY2VzdG9yPmEsLmV0LWZpeGVkLWhlYWRlciAjdG9wLW1lbnUgbGkuY3VycmVudC1tZW51LWl0ZW0+YSwuZXQtZml4ZWQtaGVhZGVyICN0b3AtbWVudSBsaS5jdXJyZW50X3BhZ2VfaXRlbT5he2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC44NykhaW1wb3J0YW50fS5ldC1maXhlZC1oZWFkZXIjdG9wLWhlYWRlciBhe2NvbG9yOiMwMDAwMDB9fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMzUwcHgpey5ldF9wYl9yb3d7cGFkZGluZzoyN3B4IDB9LmV0X3BiX3NlY3Rpb257cGFkZGluZzo1NHB4IDB9LnNpbmdsZS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQuZXRfZnVsbF93aWR0aF9wYWdlIC5ldF9wb3N0X21ldGFfd3JhcHBlcntwYWRkaW5nLXRvcDo4MXB4fS5ldF9wYl9mdWxsd2lkdGhfc2VjdGlvbntwYWRkaW5nOjB9fWgxLGgxLmV0X3BiX2NvbnRhY3RfbWFpbl90aXRsZSwuZXRfcGJfdGl0bGVfY29udGFpbmVyIGgxe2ZvbnQtc2l6ZTozNnB4fWgyLC5wcm9kdWN0IC5yZWxhdGVkIGgyLC5ldF9wYl9jb2x1bW5fMV8yIC5ldF9xdW90ZV9jb250ZW50IGJsb2NrcXVvdGUgcHtmb250LXNpemU6MzBweH1oM3tmb250LXNpemU6MjZweH1oNCwuZXRfcGJfY2lyY2xlX2NvdW50ZXIgaDMsLmV0X3BiX251bWJlcl9jb3VudGVyIGgzLC5ldF9wYl9jb2x1bW5fMV8zIC5ldF9wYl9wb3N0IGgyLC5ldF9wYl9jb2x1bW5fMV80IC5ldF9wYl9wb3N0IGgyLC5ldF9wYl9ibG9nX2dyaWQgaDIsLmV0X3BiX2NvbHVtbl8xXzMgLmV0X3F1b3RlX2NvbnRlbnQgYmxvY2txdW90ZSBwLC5ldF9wYl9jb2x1bW5fM184IC5ldF9xdW90ZV9jb250ZW50IGJsb2NrcXVvdGUgcCwuZXRfcGJfY29sdW1uXzFfNCAuZXRfcXVvdGVfY29udGVudCBibG9ja3F1b3RlIHAsLmV0X3BiX2Jsb2dfZ3JpZCAuZXRfcXVvdGVfY29udGVudCBibG9ja3F1b3RlIHAsLmV0X3BiX2NvbHVtbl8xXzMgLmV0X2xpbmtfY29udGVudCBoMiwuZXRfcGJfY29sdW1uXzNfOCAuZXRfbGlua19jb250ZW50IGgyLC5ldF9wYl9jb2x1bW5fMV80IC5ldF9saW5rX2NvbnRlbnQgaDIsLmV0X3BiX2Jsb2dfZ3JpZCAuZXRfbGlua19jb250ZW50IGgyLC5ldF9wYl9jb2x1bW5fMV8zIC5ldF9hdWRpb19jb250ZW50IGgyLC5ldF9wYl9jb2x1bW5fM184IC5ldF9hdWRpb19jb250ZW50IGgyLC5ldF9wYl9jb2x1bW5fMV80IC5ldF9hdWRpb19jb250ZW50IGgyLC5ldF9wYl9ibG9nX2dyaWQgLmV0X2F1ZGlvX2NvbnRlbnQgaDIsLmV0X3BiX2NvbHVtbl8zXzggLmV0X3BiX2F1ZGlvX21vZHVsZV9jb250ZW50IGgyLC5ldF9wYl9jb2x1bW5fMV8zIC5ldF9wYl9hdWRpb19tb2R1bGVfY29udGVudCBoMiwuZXRfcGJfZ2FsbGVyeV9ncmlkIC5ldF9wYl9nYWxsZXJ5X2l0ZW0gaDMsLmV0X3BiX3BvcnRmb2xpb19ncmlkIC5ldF9wYl9wb3J0Zm9saW9faXRlbSBoMiwuZXRfcGJfZmlsdGVyYWJsZV9wb3J0Zm9saW9fZ3JpZCAuZXRfcGJfcG9ydGZvbGlvX2l0ZW0gaDJ7Zm9udC1zaXplOjIxcHh9aDV7Zm9udC1zaXplOjE5cHh9aDZ7Zm9udC1zaXplOjE2cHh9LmV0X3BiX3NsaWRlX2Rlc2NyaXB0aW9uIC5ldF9wYl9zbGlkZV90aXRsZXtmb250LXNpemU6NTVweH0ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMywud29vY29tbWVyY2UtcGFnZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgzLC5ldF9wYl9nYWxsZXJ5X2dyaWQgLmV0X3BiX2dhbGxlcnlfaXRlbSBoMywuZXRfcGJfcG9ydGZvbGlvX2dyaWQgLmV0X3BiX3BvcnRmb2xpb19pdGVtIGgyLC5ldF9wYl9maWx0ZXJhYmxlX3BvcnRmb2xpb19ncmlkIC5ldF9wYl9wb3J0Zm9saW9faXRlbSBoMiwuZXRfcGJfY29sdW1uXzFfNCAuZXRfcGJfYXVkaW9fbW9kdWxlX2NvbnRlbnQgaDJ7Zm9udC1zaXplOjE5cHh9CWgxLGgyLGgzLGg0LGg1LGg2e2ZvbnQtZmFtaWx5OidSb2JvdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZn1ib2R5LGlucHV0LHRleHRhcmVhLHNlbGVjdHtmb250LWZhbWlseTonUm9ib3RvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWZ9I21haW4taGVhZGVyLCNldC10b3AtbmF2aWdhdGlvbntmb250LWZhbWlseTonTW9udHNlcnJhdCcsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmfS5wYS1pbmxpbmUtYnV0dG9ucyAuZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrfWRpdi5ldF9wYl9zZWN0aW9uLmV0X3BiX3NlY3Rpb25fMHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxMzBkZWcsIzIxMGY1NiAyNSUsIzIxMGY1NiAxMDAlKSFpbXBvcnRhbnR9LmV0X3BiX3NlY3Rpb25fMC5ldF9wYl9zZWN0aW9ue3BhZGRpbmctdG9wOjBweDtwYWRkaW5nLXJpZ2h0OjBweDtwYWRkaW5nLWJvdHRvbTowcHg7cGFkZGluZy1sZWZ0OjBweDttYXJnaW4tdG9wOjBweDttYXJnaW4tcmlnaHQ6MHB4O21hcmdpbi1ib3R0b206MHB4O21hcmdpbi1sZWZ0OjBweH0uZXRfcGJfc2VjdGlvbl8wLnNlY3Rpb25faGFzX2RpdmlkZXIuZXRfcGJfYm90dG9tX2RpdmlkZXIgLmV0X3BiX2JvdHRvbV9pbnNpZGVfZGl2aWRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVEF3SlNJZ2FHVnBaMmgwUFNJeU5UQndlQ0lnZG1sbGQwSnZlRDBpTUNBd0lERXlPREFnTVRRd0lpQndjbVZ6WlhKMlpVRnpjR1ZqZEZKaGRHbHZQU0p1YjI1bElpQjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaVBqeG5JR1pwYkd3OUlpTm1abVptWm1ZaVBqeHdZWFJvSUdROUlrMHdJREUwTUdneE1qZ3dRelUzTXk0d09DQXhOREFnTUNBd0lEQWdNSG9pSUdacGJHd3RiM0JoWTJsMGVUMGlMak1pTHo0OGNHRjBhQ0JrUFNKTk1DQXhOREJvTVRJNE1FTTFOek11TURnZ01UUXdJREFnTXpBZ01DQXpNSG9pSUdacGJHd3RiM0JoWTJsMGVUMGlMalVpTHo0OGNHRjBhQ0JrUFNKTk1DQXhOREJvTVRJNE1FTTFOek11TURnZ01UUXdJREFnTmpBZ01DQTJNSG9pTHo0OEwyYytQQzl6ZG1jKyk7YmFja2dyb3VuZC1zaXplOjEwMCUgMjUwcHg7Ym90dG9tOjA7aGVpZ2h0OjI1MHB4O3otaW5kZXg6MTt0cmFuc2Zvcm06c2NhbGUoLTEsMSl9LmV0X3BiX3Jvd18wLmV0X3BiX3Jvd3twYWRkaW5nLXRvcDo1dnchaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjV2dyFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjBweCFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O3BhZGRpbmctdG9wOjV2dztwYWRkaW5nLWJvdHRvbTo1dnc7cGFkZGluZy1sZWZ0OjBweH0uZXRfcGJfcm93XzAsYm9keSAjcGFnZS1jb250YWluZXIgLmV0LWRiICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd18wLmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUgI3BhZ2UtY29udGFpbmVyICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd18wLmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUuZXRfZnVsbF93aWR0aF9wYWdlICNwYWdlLWNvbnRhaW5lciAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfMC5ldF9wYl9yb3d7d2lkdGg6OTklO21heC13aWR0aDoxMzA0cHh9LmV0X3BiX3RleHRfMHtsaW5lLWhlaWdodDoxLjhlbTtmb250LWZhbWlseTonUm9ib3RvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7bGluZS1oZWlnaHQ6MS44ZW07bWFyZ2luLWJvdHRvbTo0cHghaW1wb3J0YW50fS5ldF9wYl90ZXh0XzAgaDF7Zm9udC1mYW1pbHk6J01vbnRzZXJyYXQnLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6MXB4O2xpbmUtaGVpZ2h0OjEuNWVtO3RleHQtYWxpZ246bGVmdH0uZXRfcGJfdGV4dF8wIGgye2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjEuNmVtO3RleHQtYWxpZ246bGVmdH0uZXRfcGJfdGV4dF8wIGgze2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LXNpemU6MjZweDtjb2xvcjojZmZmZmZmIWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzoycHg7bGluZS1oZWlnaHQ6MS42ZW07dGV4dC1hbGlnbjpsZWZ0fWJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzEgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfMCBoMyxib2R5LmlwaG9uZSAuZXRfcGJfdGV4dF8wIGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzIgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfMyBoM3tmb250LXZhcmlhbnQtbGlnYXR1cmVzOm5vLWNvbW1vbi1saWdhdHVyZXN9LmV0X3BiX3RleHRfMS5ldF9wYl90ZXh0e2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50fS5ldF9wYl90ZXh0XzF7bGluZS1oZWlnaHQ6MS41ZW07Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXNpemU6MjBweDtsaW5lLWhlaWdodDoxLjVlbTttYXgtd2lkdGg6ODAwcHh9LmV0X3BiX3RleHRfMSBoMSwuZXRfcGJfdGV4dF8zIGgxe2ZvbnQtZmFtaWx5OidSb2JvdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOjgwcHg7bGluZS1oZWlnaHQ6MS4yZW07dGV4dC1hbGlnbjpjZW50ZXJ9LmV0X3BiX3RleHRfMSBoMywuZXRfcGJfdGV4dF8zIGgze2ZvbnQtZmFtaWx5OidSb2JvdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2ZvbnQtc2l6ZToyNHB4O2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOjEwcHg7bGluZS1oZWlnaHQ6MmVtO3RleHQtYWxpZ246Y2VudGVyfS5ldF9wYl9idXR0b25fMF93cmFwcGVyIC5ldF9wYl9idXR0b25fMCwuZXRfcGJfYnV0dG9uXzBfd3JhcHBlciAuZXRfcGJfYnV0dG9uXzA6aG92ZXIsLmV0X3BiX2J1dHRvbl8yX3dyYXBwZXIgLmV0X3BiX2J1dHRvbl8yLC5ldF9wYl9idXR0b25fMl93cmFwcGVyIC5ldF9wYl9idXR0b25fMjpob3ZlcntwYWRkaW5nLXRvcDoxOHB4IWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjM0cHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjE4cHghaW1wb3J0YW50O3BhZGRpbmctbGVmdDozNHB4IWltcG9ydGFudH0uZXRfcGJfYnV0dG9uXzBfd3JhcHBlcnttYXJnaW4tcmlnaHQ6ODBweCFpbXBvcnRhbnR9Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl8yLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fMSxib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzB7Ym9yZGVyLXdpZHRoOjBweCFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMCk7Ym9yZGVyLXJhZGl1czo0cHg7bGV0dGVyLXNwYWNpbmc6MnB4O2ZvbnQtc2l6ZToxMnB4O2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWYhaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjYwMCFpbXBvcnRhbnQ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudDtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjMjg0Njg1IDAlLCMzZjdjYmMgMTAwJSl9Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl8wOmhvdmVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fMjpob3Zlcixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzE6aG92ZXJ7bGV0dGVyLXNwYWNpbmc6MnB4IWltcG9ydGFudH1ib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzE6YmVmb3JlLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fMTphZnRlcixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzI6YmVmb3JlLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fMjphZnRlcixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzA6YmVmb3JlLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fMDphZnRlcntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5ldF9wYl9idXR0b25fMCwuZXRfcGJfYnV0dG9uXzIsLmV0X3BiX2J1dHRvbl8xe2JveC1zaGFkb3c6OHB4IDEycHggMzBweCAtMTBweCByZ2JhKDQwLDcwLDEzMywwKTt0cmFuc2l0aW9uOmxldHRlci1zcGFjaW5nIDMwMG1zIGVhc2UgMG1zfS5ldF9wYl9idXR0b25fMCwuZXRfcGJfYnV0dG9uXzA6YWZ0ZXIsLmV0X3BiX2J1dHRvbl8yLC5ldF9wYl9idXR0b25fMjphZnRlciwuZXRfcGJfYnV0dG9uXzEsLmV0X3BiX2J1dHRvbl8xOmFmdGVye3RyYW5zaXRpb246YWxsIDMwMG1zIGVhc2UgMG1zfS5ldF9wYl9idXR0b25fMV93cmFwcGVyIC5ldF9wYl9idXR0b25fMSwuZXRfcGJfYnV0dG9uXzFfd3JhcHBlciAuZXRfcGJfYnV0dG9uXzE6aG92ZXJ7cGFkZGluZy10b3A6MThweCFpbXBvcnRhbnQ7cGFkZGluZy1yaWdodDo1MHB4IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxOHB4IWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6NTBweCFpbXBvcnRhbnR9LmV0X3BiX2NvZGVfMHttYXJnaW4tdG9wOjUwcHghaW1wb3J0YW50fS5ldF9wYl90ZXh0XzJ7bGluZS1oZWlnaHQ6MmVtO2xpbmUtaGVpZ2h0OjJlbTttYXJnaW4tYm90dG9tOjlweCFpbXBvcnRhbnQ7bWF4LXdpZHRoOjgwMHB4fS5ldF9wYl90ZXh0XzIgaDJ7Zm9udC1mYW1pbHk6J01vbnRzZXJyYXQnLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjM2cHg7Y29sb3I6IzIxMGY1NiFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4zZW19LmV0X3BiX2RpdmlkZXJfMHt3aWR0aDoxMCV9LmV0X3BiX2RpdmlkZXJfMDpiZWZvcmV7Ym9yZGVyLXRvcC1jb2xvcjojMjEwZjU2O2JvcmRlci10b3Atd2lkdGg6M3B4fS5ldF9wYl90ZXh0XzMuZXRfcGJfdGV4dHtjb2xvcjojMDAwMDAwIWltcG9ydGFudH0uZXRfcGJfdGV4dF8ze2xpbmUtaGVpZ2h0OjEuNWVtO2ZvbnQtZmFtaWx5OidMYXRvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MS41ZW07bWF4LXdpZHRoOjgwMHB4fS5ldF9wYl9yb3dfMntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmZ9LmV0X3BiX3Jvd18yLmV0X3BiX3Jvd3twYWRkaW5nLXRvcDoyN3B4IWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjBweCFpbXBvcnRhbnQ7cGFkZGluZy1ib3R0b206MHB4IWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6MHB4IWltcG9ydGFudDtwYWRkaW5nLXRvcDoyN3B4O3BhZGRpbmctcmlnaHQ6MHB4O3BhZGRpbmctYm90dG9tOjA7cGFkZGluZy1sZWZ0OjBweH0uZXRfcGJfYmx1cmJfMS5ldF9wYl9ibHVyYiAuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfYmx1cmJfMS5ldF9wYl9ibHVyYiAuZXRfcGJfbW9kdWxlX2hlYWRlciBhLC5ldF9wYl9ibHVyYl8yLmV0X3BiX2JsdXJiIC5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9ibHVyYl8yLmV0X3BiX2JsdXJiIC5ldF9wYl9tb2R1bGVfaGVhZGVyIGEsLmV0X3BiX2JsdXJiXzMuZXRfcGJfYmx1cmIgLmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2JsdXJiXzMuZXRfcGJfYmx1cmIgLmV0X3BiX21vZHVsZV9oZWFkZXIgYSwuZXRfcGJfYmx1cmJfMC5ldF9wYl9ibHVyYiAuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfYmx1cmJfMC5ldF9wYl9ibHVyYiAuZXRfcGJfbW9kdWxlX2hlYWRlciBhe2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToyMHB4O2NvbG9yOiMwMDAwMDAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuNWVtfS5ldF9wYl9ibHVyYl8xLmV0X3BiX2JsdXJiIHAsLmV0X3BiX2JsdXJiXzIuZXRfcGJfYmx1cmIgcCwuZXRfcGJfYmx1cmJfMC5ldF9wYl9ibHVyYiBwLC5ldF9wYl9ibHVyYl8zLmV0X3BiX2JsdXJiIHB7bGluZS1oZWlnaHQ6MS42ZW19LmV0X3BiX2JsdXJiXzEuZXRfcGJfYmx1cmIsLmV0X3BiX2JsdXJiXzIuZXRfcGJfYmx1cmIsLmV0X3BiX2JsdXJiXzAuZXRfcGJfYmx1cmIsLmV0X3BiX2JsdXJiXzMuZXRfcGJfYmx1cmJ7Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtjb2xvcjojMDAwMDAwIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjZlbTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7Ym9yZGVyLXJhZGl1czoxMHB4IDEwcHggMTBweCAxMHB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLXRvcDozMHB4IWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjIwcHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjQwcHghaW1wb3J0YW50O3BhZGRpbmctbGVmdDoyMHB4IWltcG9ydGFudDttYXJnaW4tYm90dG9tOjBweCFpbXBvcnRhbnR9LmV0X3BiX2JsdXJiXzMsLmV0X3BiX2JsdXJiXzEsLmV0X3BiX2JsdXJiXzAsLmV0X3BiX2JsdXJiXzJ7Ym94LXNoYWRvdzowcHggMnB4IDcwcHggMHB4IHJnYmEoMTEwLDEzMCwyMDgsMC4xOCl9LmV0X3BiX2JsdXJiXzAgLmV0LXBiLWljb24sLmV0X3BiX2JsdXJiXzMgLmV0LXBiLWljb24sLmV0X3BiX2JsdXJiXzIgLmV0LXBiLWljb24sLmV0X3BiX2JsdXJiXzEgLmV0LXBiLWljb257Zm9udC1zaXplOjM2cHg7Y29sb3I6IzIxMGY1Njtmb250LWZhbWlseTpFVG1vZHVsZXMhaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMCFpbXBvcnRhbnR9LmV0X3BiX2J1dHRvbl8yX3dyYXBwZXJ7bWFyZ2luLXRvcDoyMHB4IWltcG9ydGFudH0uZXRfcGJfZGl2aWRlcl8wLmV0X3BiX21vZHVsZSwuZXRfcGJfdGV4dF8yLmV0X3BiX21vZHVsZSwuZXRfcGJfdGV4dF8xLmV0X3BiX21vZHVsZSwuZXRfcGJfdGV4dF8zLmV0X3BiX21vZHVsZXttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk4MXB4KXsuZXRfcGJfcm93XzIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0LWRiICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd18yLmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUgI3BhZ2UtY29udGFpbmVyICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd18yLmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUuZXRfZnVsbF93aWR0aF9wYWdlICNwYWdlLWNvbnRhaW5lciAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfMi5ldF9wYl9yb3d7d2lkdGg6OTklO21heC13aWR0aDoxMTgycHh9LmV0X3BiX2JsdXJiXzAuZXRfcGJfYmx1cmIsLmV0X3BiX2JsdXJiXzEuZXRfcGJfYmx1cmIsLmV0X3BiX2JsdXJiXzIuZXRfcGJfYmx1cmIsLmV0X3BiX2JsdXJiXzMuZXRfcGJfYmx1cmJ7d2lkdGg6MTAwJX19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk4MHB4KXsuZXRfcGJfc2VjdGlvbl8wLmV0X3BiX3NlY3Rpb257cGFkZGluZy10b3A6NTBweDtwYWRkaW5nLWJvdHRvbTo1MHB4O21hcmdpbi10b3A6MHB4O21hcmdpbi1ib3R0b206MHB4fS5ldF9wYl9zZWN0aW9uXzAuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl9ib3R0b21fZGl2aWRlciAuZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l4TlRCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxNTBweDtib3R0b206MDtoZWlnaHQ6MTUwcHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgtMSwxKX0uZXRfcGJfdGV4dF8wIGgxLC5ldF9wYl90ZXh0XzEgaDEsLmV0X3BiX3RleHRfMyBoMXtmb250LXNpemU6NDBweH0uZXRfcGJfdGV4dF8wIGgzLC5ldF9wYl90ZXh0XzEgaDMsLmV0X3BiX3RleHRfMyBoM3tmb250LXNpemU6MTZweDtsZXR0ZXItc3BhY2luZzo1cHh9LmV0X3BiX3RleHRfMiBoMntmb250LXNpemU6MzVweH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2N3B4KXsuZXRfcGJfc2VjdGlvbl8wLmV0X3BiX3NlY3Rpb257cGFkZGluZy10b3A6MTAwcHg7cGFkZGluZy1ib3R0b206MTAwcHh9LmV0X3BiX3NlY3Rpb25fMC5zZWN0aW9uX2hhc19kaXZpZGVyLmV0X3BiX2JvdHRvbV9kaXZpZGVyIC5ldF9wYl9ib3R0b21faW5zaWRlX2RpdmlkZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTVRBd0pTSWdhR1ZwWjJoMFBTSXhNVEJ3ZUNJZ2RtbGxkMEp2ZUQwaU1DQXdJREV5T0RBZ01UUXdJaUJ3Y21WelpYSjJaVUZ6Y0dWamRGSmhkR2x2UFNKdWIyNWxJaUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lQanhuSUdacGJHdzlJaU5tWm1abVptWWlQanh3WVhSb0lHUTlJazB3SURFME1HZ3hNamd3UXpVM015NHdPQ0F4TkRBZ01DQXdJREFnTUhvaUlHWnBiR3d0YjNCaFkybDBlVDBpTGpNaUx6NDhjR0YwYUNCa1BTSk5NQ0F4TkRCb01USTRNRU0xTnpNdU1EZ2dNVFF3SURBZ016QWdNQ0F6TUhvaUlHWnBiR3d0YjNCaFkybDBlVDBpTGpVaUx6NDhjR0YwYUNCa1BTSk5NQ0F4TkRCb01USTRNRU0xTnpNdU1EZ2dNVFF3SURBZ05qQWdNQ0EyTUhvaUx6NDhMMmMrUEM5emRtYyspO2JhY2tncm91bmQtc2l6ZToxMDAlIDExMHB4O2JvdHRvbTowO2hlaWdodDoxMTBweDt6LWluZGV4OjE7dHJhbnNmb3JtOnNjYWxlKC0xLDEpfS5ldF9wYl9yb3dfMC5ldF9wYl9yb3d7cGFkZGluZy1yaWdodDozMHB4IWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6MzBweCFpbXBvcnRhbnQ7bWFyZ2luLXRvcDotNjVweCFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O3BhZGRpbmctcmlnaHQ6MzBweCFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjMwcHghaW1wb3J0YW50fS5ldF9wYl90ZXh0XzAgaDF7Zm9udC1zaXplOjI2cHh9LmV0X3BiX3RleHRfMCBoM3tmb250LXNpemU6MTRweDtsZXR0ZXItc3BhY2luZzoycHh9LmV0X3BiX3RleHRfMSBoMSwuZXRfcGJfdGV4dF8zIGgxe2ZvbnQtc2l6ZTozMnB4fS5ldF9wYl90ZXh0XzEgaDMsLmV0X3BiX3RleHRfMyBoM3tmb250LXNpemU6MTRweH0uZXRfcGJfdGV4dF8yIGgye2ZvbnQtc2l6ZToyM3B4fS5ldF9wYl9yb3dfMixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXQtZGIgI2V0LWJvYyAuZXQtbCAuZXRfcGJfcm93XzIuZXRfcGJfcm93LGJvZHkuZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0LnNpbmdsZSAjcGFnZS1jb250YWluZXIgI2V0LWJvYyAuZXQtbCAuZXRfcGJfcm93XzIuZXRfcGJfcm93LGJvZHkuZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0LnNpbmdsZS5ldF9mdWxsX3dpZHRoX3BhZ2UgI3BhZ2UtY29udGFpbmVyICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd18yLmV0X3BiX3Jvd3t3aWR0aDoxMDAlfS5ldF9wYl9ibHVyYl8zLmV0X3BiX2JsdXJiLC5ldF9wYl9ibHVyYl8yLmV0X3BiX2JsdXJiLC5ldF9wYl9ibHVyYl8xLmV0X3BiX2JsdXJiLC5ldF9wYl9ibHVyYl8wLmV0X3BiX2JsdXJie3dpZHRoOjgwJX0uZXRfcGJfYmx1cmJfMy5ldF9wYl9ibHVyYi5ldF9wYl9tb2R1bGUsLmV0X3BiX2JsdXJiXzIuZXRfcGJfYmx1cmIuZXRfcGJfbW9kdWxlLC5ldF9wYl9ibHVyYl8xLmV0X3BiX2JsdXJiLmV0X3BiX21vZHVsZSwuZXRfcGJfYmx1cmJfMC5ldF9wYl9ibHVyYi5ldF9wYl9tb2R1bGV7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fX08L3N0eWxlPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGlkPSJldC1jb3JlLXVuaWZpZWQtNDYyNS1jYWNoZWQtaW5saW5lLXN0eWxlcyIgaHJlZj0iL3dwLWNvbnRlbnQvZXQtY2FjaGUvNDYyNS9ldC1jb3JlLXVuaWZpZWQtNDYyNS5taW4uY3NzP3Zlcj0xNjYyMjc5ODc2IiAvPjxsaW5rIHJlbD0icHJlbG9hZCIgYXM9InN0eWxlIiBpZD0iZXQtY29yZS11bmlmaWVkLXRiLTY3MjgtZGVmZXJyZWQtNDYyNS1jYWNoZWQtaW5saW5lLXN0eWxlcyIgaHJlZj0iL3dwLWNvbnRlbnQvZXQtY2FjaGUvNDYyNS9ldC1jb3JlLXVuaWZpZWQtdGItNjcyOC1kZWZlcnJlZC00NjI1Lm1pbi5jc3M/dmVyPTE2NjIyNzk4NzciIG9ubG9hZD0idGhpcy5vbmxvYWQ9bnVsbDt0aGlzLnJlbD0nc3R5bGVzaGVldCc7IiAvPjwvaGVhZD4KPGJvZHkgZGF0YS1yc3NzbD0xIGNsYXNzPSJob21lIHBhZ2UtdGVtcGxhdGUtZGVmYXVsdCBwYWdlIHBhZ2UtaWQtNDYyNSB0aGVtZS1EaXZpIGV0LXRiLWhhcy10ZW1wbGF0ZSBldC10Yi1oYXMtZm9vdGVyIHdvb2NvbW1lcmNlLW5vLWpzIGV0X2Jsb29tIGV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudSBldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMgZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTEgZXRfcGJfYnV0dG9uX2hlbHBlcl9jbGFzcyBldF9mdWxsd2lkdGhfbmF2IGV0X2ZpeGVkX25hdiBldF9zaG93X25hdiBldF9wcmltYXJ5X25hdl9kcm9wZG93bl9hbmltYXRpb25fZXhwYW5kIGV0X3NlY29uZGFyeV9uYXZfZHJvcGRvd25fYW5pbWF0aW9uX2ZhZGUgZXRfaGVhZGVyX3N0eWxlX2xlZnQgZXRfY292ZXJfYmFja2dyb3VuZCBldF9wYl9ndXR0ZXIgbGludXggZXRfcGJfZ3V0dGVyczMgZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0IGV0X25vX3NpZGViYXIgZXRfZGl2aV90aGVtZSBldC1kYiI+Cgk8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDAgMCIgd2lkdGg9IjAiIGhlaWdodD0iMCIgZm9jdXNhYmxlPSJmYWxzZSIgcm9sZT0ibm9uZSIgc3R5bGU9InZpc2liaWxpdHk6IGhpZGRlbjsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAtOTk5OXB4OyBvdmVyZmxvdzogaGlkZGVuOyIgPjxkZWZzPjxmaWx0ZXIgaWQ9IndwLWR1b3RvbmUtZGFyay1ncmF5c2NhbGUiPjxmZUNvbG9yTWF0cml4IGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IiAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgIiAvPjxmZUNvbXBvbmVudFRyYW5zZmVyIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgPjxmZUZ1bmNSIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAwLjQ5ODAzOTIxNTY4NjI3IiAvPjxmZUZ1bmNHIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAwLjQ5ODAzOTIxNTY4NjI3IiAvPjxmZUZ1bmNCIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAwLjQ5ODAzOTIxNTY4NjI3IiAvPjxmZUZ1bmNBIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMSAxIiAvPjwvZmVDb21wb25lbnRUcmFuc2Zlcj48ZmVDb21wb3NpdGUgaW4yPSJTb3VyY2VHcmFwaGljIiBvcGVyYXRvcj0iaW4iIC8+PC9maWx0ZXI+PC9kZWZzPjwvc3ZnPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMCAwIiB3aWR0aD0iMCIgaGVpZ2h0PSIwIiBmb2N1c2FibGU9ImZhbHNlIiByb2xlPSJub25lIiBzdHlsZT0idmlzaWJpbGl0eTogaGlkZGVuOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5cHg7IG92ZXJmbG93OiBoaWRkZW47IiA+PGRlZnM+PGZpbHRlciBpZD0id3AtZHVvdG9uZS1ncmF5c2NhbGUiPjxmZUNvbG9yTWF0cml4IGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IiAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgIiAvPjxmZUNvbXBvbmVudFRyYW5zZmVyIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgPjxmZUZ1bmNSIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAxIiAvPjxmZUZ1bmNHIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAxIiAvPjxmZUZ1bmNCIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAxIiAvPjxmZUZ1bmNBIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMSAxIiAvPjwvZmVDb21wb25lbnRUcmFuc2Zlcj48ZmVDb21wb3NpdGUgaW4yPSJTb3VyY2VHcmFwaGljIiBvcGVyYXRvcj0iaW4iIC8+PC9maWx0ZXI+PC9kZWZzPjwvc3ZnPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMCAwIiB3aWR0aD0iMCIgaGVpZ2h0PSIwIiBmb2N1c2FibGU9ImZhbHNlIiByb2xlPSJub25lIiBzdHlsZT0idmlzaWJpbGl0eTogaGlkZGVuOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5cHg7IG92ZXJmbG93OiBoaWRkZW47IiA+PGRlZnM+PGZpbHRlciBpZD0id3AtZHVvdG9uZS1wdXJwbGUteWVsbG93Ij48ZmVDb2xvck1hdHJpeCBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwICIgLz48ZmVDb21wb25lbnRUcmFuc2ZlciBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiID48ZmVGdW5jUiB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjAuNTQ5MDE5NjA3ODQzMTQgMC45ODgyMzUyOTQxMTc2NSIgLz48ZmVGdW5jRyB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjAgMSIgLz48ZmVGdW5jQiB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjAuNzE3NjQ3MDU4ODIzNTMgMC4yNTQ5MDE5NjA3ODQzMSIgLz48ZmVGdW5jQSB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjEgMSIgLz48L2ZlQ29tcG9uZW50VHJhbnNmZXI+PGZlQ29tcG9zaXRlIGluMj0iU291cmNlR3JhcGhpYyIgb3BlcmF0b3I9ImluIiAvPjwvZmlsdGVyPjwvZGVmcz48L3N2Zz48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDAgMCIgd2lkdGg9IjAiIGhlaWdodD0iMCIgZm9jdXNhYmxlPSJmYWxzZSIgcm9sZT0ibm9uZSIgc3R5bGU9InZpc2liaWxpdHk6IGhpZGRlbjsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAtOTk5OXB4OyBvdmVyZmxvdzogaGlkZGVuOyIgPjxkZWZzPjxmaWx0ZXIgaWQ9IndwLWR1b3RvbmUtYmx1ZS1yZWQiPjxmZUNvbG9yTWF0cml4IGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IiAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgIiAvPjxmZUNvbXBvbmVudFRyYW5zZmVyIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgPjxmZUZ1bmNSIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAxIiAvPjxmZUZ1bmNHIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAwLjI3ODQzMTM3MjU0OTAyIiAvPjxmZUZ1bmNCIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMC41OTIxNTY4NjI3NDUxIDAuMjc4NDMxMzcyNTQ5MDIiIC8+PGZlRnVuY0EgdHlwZT0idGFibGUiIHRhYmxlVmFsdWVzPSIxIDEiIC8+PC9mZUNvbXBvbmVudFRyYW5zZmVyPjxmZUNvbXBvc2l0ZSBpbjI9IlNvdXJjZUdyYXBoaWMiIG9wZXJhdG9yPSJpbiIgLz48L2ZpbHRlcj48L2RlZnM+PC9zdmc+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAwIDAiIHdpZHRoPSIwIiBoZWlnaHQ9IjAiIGZvY3VzYWJsZT0iZmFsc2UiIHJvbGU9Im5vbmUiIHN0eWxlPSJ2aXNpYmlsaXR5OiBoaWRkZW47IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTk5OTlweDsgb3ZlcmZsb3c6IGhpZGRlbjsiID48ZGVmcz48ZmlsdGVyIGlkPSJ3cC1kdW90b25lLW1pZG5pZ2h0Ij48ZmVDb2xvck1hdHJpeCBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwICIgLz48ZmVDb21wb25lbnRUcmFuc2ZlciBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiID48ZmVGdW5jUiB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjAgMCIgLz48ZmVGdW5jRyB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjAgMC42NDcwNTg4MjM1Mjk0MSIgLz48ZmVGdW5jQiB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjAgMSIgLz48ZmVGdW5jQSB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjEgMSIgLz48L2ZlQ29tcG9uZW50VHJhbnNmZXI+PGZlQ29tcG9zaXRlIGluMj0iU291cmNlR3JhcGhpYyIgb3BlcmF0b3I9ImluIiAvPjwvZmlsdGVyPjwvZGVmcz48L3N2Zz48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDAgMCIgd2lkdGg9IjAiIGhlaWdodD0iMCIgZm9jdXNhYmxlPSJmYWxzZSIgcm9sZT0ibm9uZSIgc3R5bGU9InZpc2liaWxpdHk6IGhpZGRlbjsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAtOTk5OXB4OyBvdmVyZmxvdzogaGlkZGVuOyIgPjxkZWZzPjxmaWx0ZXIgaWQ9IndwLWR1b3RvbmUtbWFnZW50YS15ZWxsb3ciPjxmZUNvbG9yTWF0cml4IGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IiAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgIiAvPjxmZUNvbXBvbmVudFRyYW5zZmVyIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgPjxmZUZ1bmNSIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMC43ODAzOTIxNTY4NjI3NSAxIiAvPjxmZUZ1bmNHIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAwLjk0OTAxOTYwNzg0MzE0IiAvPjxmZUZ1bmNCIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMC4zNTI5NDExNzY0NzA1OSAwLjQ3MDU4ODIzNTI5NDEyIiAvPjxmZUZ1bmNBIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMSAxIiAvPjwvZmVDb21wb25lbnRUcmFuc2Zlcj48ZmVDb21wb3NpdGUgaW4yPSJTb3VyY2VHcmFwaGljIiBvcGVyYXRvcj0iaW4iIC8+PC9maWx0ZXI+PC9kZWZzPjwvc3ZnPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMCAwIiB3aWR0aD0iMCIgaGVpZ2h0PSIwIiBmb2N1c2FibGU9ImZhbHNlIiByb2xlPSJub25lIiBzdHlsZT0idmlzaWJpbGl0eTogaGlkZGVuOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5cHg7IG92ZXJmbG93OiBoaWRkZW47IiA+PGRlZnM+PGZpbHRlciBpZD0id3AtZHVvdG9uZS1wdXJwbGUtZ3JlZW4iPjxmZUNvbG9yTWF0cml4IGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IiAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgIiAvPjxmZUNvbXBvbmVudFRyYW5zZmVyIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgPjxmZUZ1bmNSIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMC42NTA5ODAzOTIxNTY4NiAwLjQwMzkyMTU2ODYyNzQ1IiAvPjxmZUZ1bmNHIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMCAxIiAvPjxmZUZ1bmNCIHR5cGU9InRhYmxlIiB0YWJsZVZhbHVlcz0iMC40NDcwNTg4MjM1Mjk0MSAwLjQiIC8+PGZlRnVuY0EgdHlwZT0idGFibGUiIHRhYmxlVmFsdWVzPSIxIDEiIC8+PC9mZUNvbXBvbmVudFRyYW5zZmVyPjxmZUNvbXBvc2l0ZSBpbjI9IlNvdXJjZUdyYXBoaWMiIG9wZXJhdG9yPSJpbiIgLz48L2ZpbHRlcj48L2RlZnM+PC9zdmc+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAwIDAiIHdpZHRoPSIwIiBoZWlnaHQ9IjAiIGZvY3VzYWJsZT0iZmFsc2UiIHJvbGU9Im5vbmUiIHN0eWxlPSJ2aXNpYmlsaXR5OiBoaWRkZW47IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTk5OTlweDsgb3ZlcmZsb3c6IGhpZGRlbjsiID48ZGVmcz48ZmlsdGVyIGlkPSJ3cC1kdW90b25lLWJsdWUtb3JhbmdlIj48ZmVDb2xvck1hdHJpeCBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIgLjI5OSAuNTg3IC4xMTQgMCAwIC4yOTkgLjU4NyAuMTE0IDAgMCAuMjk5IC41ODcgLjExNCAwIDAgLjI5OSAuNTg3IC4xMTQgMCAwICIgLz48ZmVDb21wb25lbnRUcmFuc2ZlciBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiID48ZmVGdW5jUiB0eXBlPSJ0YWJsZSIgdGFibGVWYWx1ZXM9IjAuMDk4MDM5MjE1Njg2Mjc1IDEiIC8+PGZlRnVuY0cgdHlwZT0idGFibGUiIHRhYmxlVmFsdWVzPSIwIDAuNjYyNzQ1MDk4MDM5MjIiIC8+PGZlRnVuY0IgdHlwZT0idGFibGUiIHRhYmxlVmFsdWVzPSIwLjg0NzA1ODgyMzUyOTQxIDAuNDE5NjA3ODQzMTM3MjUiIC8+PGZlRnVuY0EgdHlwZT0idGFibGUiIHRhYmxlVmFsdWVzPSIxIDEiIC8+PC9mZUNvbXBvbmVudFRyYW5zZmVyPjxmZUNvbXBvc2l0ZSBpbjI9IlNvdXJjZUdyYXBoaWMiIG9wZXJhdG9yPSJpbiIgLz48L2ZpbHRlcj48L2RlZnM+PC9zdmc+PGRpdiBpZD0icGFnZS1jb250YWluZXIiPgo8ZGl2IGlkPSJldC1ib2MiIGNsYXNzPSJldC1ib2MiPgoJCQkKCjxoZWFkZXIgaWQ9Im1haW4taGVhZGVyIiBkYXRhLWhlaWdodC1vbmxvYWQ9IjY2Ij4KCQk8ZGl2IGNsYXNzPSJjb250YWluZXIgY2xlYXJmaXggZXRfbWVudV9jb250YWluZXIiPgoJCQkJCTxkaXYgY2xhc3M9ImxvZ29fY29udGFpbmVyIj4KCQkJCTxzcGFuIGNsYXNzPSJsb2dvX2hlbHBlciI+PC9zcGFuPgoJCQkJPGEgaHJlZj0iLyI+CgkJCQk8aW1nIHNyYz0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L2ZpbmFsLWFnYWluLTEtZTE1OTM2MDg3NDg2OTAucG5nIiB3aWR0aD0iNzAwIiBoZWlnaHQ9IjE2MCIgYWx0PSJFcXVpbnV4Z2xvYmFsYXNzZXQiIGlkPSJsb2dvIiBkYXRhLWhlaWdodC1wZXJjZW50YWdlPSI4MCIgLz4KCQkJCTwvYT4KCQkJPC9kaXY+CgkJCQkJPGRpdiBpZD0iZXQtdG9wLW5hdmlnYXRpb24iIGRhdGEtaGVpZ2h0PSI2NiIgZGF0YS1maXhlZC1oZWlnaHQ9IjU4Ij4KCQkJCQkgICAgCgkJCQkJCQkJCTxuYXYgaWQ9InRvcC1tZW51LW5hdiI+CgkJCQkJPHVsIGlkPSJ0b3AtbWVudSIgY2xhc3M9Im5hdiI+ICAgCgkJCQkJICAgIDxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLWhvbWUgbWVudS1pdGVtLTYzOTQiPjxhIGhyZWY9Ii8/YT1ob21lIj5Ib21lPC9hPjwvbGk+CjxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIG1lbnUtaXRlbS03Mzg3Ij48YSBocmVmPSIjIj5SZXN1bHRzPC9hPgo8dWwgY2xhc3M9InN1Yi1tZW51Ij4KPCEtLQk8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS03NzU2Ij48YSBocmVmPSIvP2E9aGFwcHktY2xpZW50cyI+SGFwcHkgY2xpZW50czwvYT48L2xpPiAtLT4KCTxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIG1lbnUtaXRlbS03MzkxIj48YSBocmVmPSIjIj5FcXVpbnV4Z2xvYmFsYXNzZXQgUmVzdWx0IENoYW5uZWxzPC9hPgoJPHVsIGNsYXNzPSJzdWItbWVudSI+CgkJPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS03MzkzIj48YSB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgaHJlZj0iaHR0cHM6Ly93YS5saW5rLzc1OHdnOCI+QmluYW5jZSBFcXVpbnV4Z2xvYmFsYXNzZXQgRmFtaWx5VklQPC9hPjwvbGk+CgkJPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS03MzkyIj48YSB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgaHJlZj0iaHR0cHM6Ly93YS5saW5rLzc1OHdnOCI+S3VDb2luIEVxdWludXhnbG9iYWxhc3NldCBGYW1pbHlWSVA8L2E+PC9saT4KCQk8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1jdXN0b20gbWVudS1pdGVtLW9iamVjdC1jdXN0b20gbWVudS1pdGVtLTIwOTkzIj48YSBocmVmPSJodHRwczovL3dhLmxpbmsvNzU4d2c4Ij5CVEMmIzAzODtFVEggZXhjbHVzaXZlIHRyYWRpbmcgZXh0cmEgVklQPC9hPjwvbGk+Cgk8L3VsPgo8L2xpPgo8IS0tCTxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIG1lbnUtaXRlbS03Mzg4Ij48YSBocmVmPSIjIj5CaXRjZW50cmFsdHJhZGVWSVAgUmVzdWx0IFNoZWV0czwvYT4KCTx1bCBjbGFzcz0ic3ViLW1lbnUiPgoJCTxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTczOTAiPjxhIGhyZWY9Ii8/YT1iaW5hbmNlLXJlc3VsdC1zaGVldHMiPkJpbmFuY2UgVklQIFJlc3VsdCBTaGVldHM8L2E+PC9saT4KCQk8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS0xMjk0NiI+PGEgaHJlZj0iLz9hPWJ0Yy1ldGgtdmlwLXJlc3VsdC1zaGVldHMiPkJUQyAmIzAzODsgRVRIIFZJUCBSZXN1bHQgU2hlZXRzPC9hPjwvbGk+CgkJPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tMjQzOTAiPjxhIGhyZWY9Ii8/YT1ieWJpdC12aXAtcmVzdWx0LXNoZWV0cyI+QnliaXQgVklQIFJlc3VsdCBTaGVldHM8L2E+PC9saT4KCQk8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS0yNDU3MiI+PGEgaHJlZj0iLz9hPWt1Y29pbi12aXAtcmVzdWx0LXNoZWV0cyI+S3Vjb2luIFZJUCBSZXN1bHQgU2hlZXRzPC9hPjwvbGk+Cgk8L3VsPgo8L2xpPiAtLT4KPC91bD4KPC9saT4KPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0taGFzLWNoaWxkcmVuIG1lbnUtaXRlbS02Mzk3Ij48YSBocmVmPSIvP2E9bWVtYmVyc2hpcCI+TWVtYmVyc2hpcDwvYT4KPHVsIGNsYXNzPSJzdWItbWVudSI+CjxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0tNzYwMSI+PGEgaHJlZj0iLz9hPWxvZ2luIj5Mb2dpbjwvYT48L2xpPgoKPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS03NjAxIj48YSBocmVmPSIvP2E9c2lnbnVwIj5TaWdudXA8L2E+PC9saT4KPCEtLQo8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1jdXN0b20gbWVudS1pdGVtLW9iamVjdC1jdXN0b20gbWVudS1pdGVtLTc2MDEiPjxhIGhyZWY9Imh0dHBzOi8vdC5tZS8iPkt1Q29pbiBGcmVlPC9hPjwvbGk+CgoJPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtY3VzdG9tIG1lbnUtaXRlbS1vYmplY3QtY3VzdG9tIG1lbnUtaXRlbS03NjAxIj48YSBocmVmPSJodHRwczovL3QubWUvIj5LdUNvaW4gRnJlZTwvYT48L2xpPgoJPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcHJvZHVjdCBtZW51LWl0ZW0tNzU2MiI+PGEgaHJlZj0iLz9hPWJ0Yy1ldGgtdmlwIj5CVEMgJiMwMzg7IEVUSCBWSVA8L2E+PC9saT4KCTxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLWN1c3RvbSBtZW51LWl0ZW0tb2JqZWN0LWN1c3RvbSBtZW51LWl0ZW0tNzYwMiI+PGEgaHJlZj0iaHR0cHM6Ly90Lm1lLyI+QmluYW5jZSBGcmVlPC9hPjwvbGk+Cgk8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1jdXN0b20gbWVudS1pdGVtLW9iamVjdC1jdXN0b20gbWVudS1pdGVtLTE3Mjk1Ij48YSBocmVmPSIvP2E9a3Vjb2luLXZpLyI+S3Vjb2luIFZJUDwvYT48L2xpPgoJPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcHJvZHVjdCBtZW51LWl0ZW0tNzU2MSI+PGEgaHJlZj0iLz9hPWJpbmFuY2UtdmlwIj5CaW5hbmNlIFZJUDwvYT48L2xpPgoJPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcHJvZHVjdCBtZW51LWl0ZW0tNzU2MCI+PGEgaHJlZj0iP2E9YWNjb3VudC1tYW5hZ2VtZW50Ij5BY2NvdW50IE1hbmFnZW1lbnQ8L2E+PC9saT4KCS0tPgo8L3VsPgo8L2xpPgo8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS0xNjcyMiI+PGEgaHJlZj0iLz9hPWFmZmlsaWF0ZS1wcm9ncmFtIj5BZmZpbGlhdGUtUHJvZ3JhbTwvYT48L2xpPgo8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS02Mzk1Ij48YSBocmVmPSIvP2E9YWJvdXQtdXMiPkFib3V0IHVzPC9hPjwvbGk+CjwhLS08bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS05NDQ2Ij48YSBocmVmPSIvP2E9YWZmaWxpYXRlLXByb2dyYW0iPlJlZmVycmFsPC9hPjwvbGk+LS0+CjxsaSBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTk0NDYiPjxhIGhyZWY9Ii8/YT1sb2dpbiI+TG9naW48L2E+PC9saT4KPGxpIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tNzgxOCI+PGEgaHJlZj0iLz9hPW5ld3MiPkJ1eSBCVEMvRVRIL0xUQzwvYT48L2xpPgo8bGkgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS02Mzk2Ij48YSBocmVmPSIvP2E9c3VwcG9ydCI+Q29udGFjdDwvYT48L2xpPgo8bGkgY2xhc3M9Im1lbnUtaXRlbSB3cG1sLWxzLXNsb3QtNTggd3BtbC1scy1pdGVtIHdwbWwtbHMtaXRlbS1lbiB3cG1sLWxzLWN1cnJlbnQtbGFuZ3VhZ2Ugd3BtbC1scy1tZW51LWl0ZW0gd3BtbC1scy1maXJzdC1pdGVtIHdwbWwtbHMtbGFzdC1pdGVtIG1lbnUtaXRlbS10eXBlLXdwbWxfbHNfbWVudV9pdGVtIG1lbnUtaXRlbS1vYmplY3Qtd3BtbF9sc19tZW51X2l0ZW0gbWVudS1pdGVtLXdwbWwtbHMtNTgtZW4iPjxhIGhyZWY9Ii8/YT1ydWxlcyI+PGltZwogICAgICAgICAgICBjbGFzcz0id3BtbC1scy1mbGFnIgogICAgICAgICAgICBzcmM9Ii93cC1jb250ZW50L3BsdWdpbnMvc2l0ZXByZXNzLW11bHRpbGluZ3VhbC1jbXMvcmVzL2ZsYWdzL2VuLnBuZyIgd2lkdGg9IjMwIiBoZWlnaHQ9IjQwIgogICAgICAgICAgICBhbHQ9IkVuZ2xpc2giCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgIC8+PC9hPjwvbGk+CjwvdWw+CQkJCQk8L25hdj4KCQkJCQoJCQkJPGEgaHJlZj0iLz9hPWxvZ2luIiBjbGFzcz0iZXQtY2FydC1pbmZvIj4KCQkJCTxzcGFuPjwvc3Bhbj4KCQkJPC9hPgoJCQkJCgkJCQkKCQkJCTxkaXYgaWQ9ImV0X21vYmlsZV9uYXZfbWVudSI+CgkJCQk8ZGl2IGNsYXNzPSJtb2JpbGVfbmF2IGNsb3NlZCI+CgkJCQkJPHNwYW4gY2xhc3M9InNlbGVjdF9wYWdlIj5TZWxlY3QgUGFnZTwvc3Bhbj4KCQkJCQk8c3BhbiBjbGFzcz0ibW9iaWxlX21lbnVfYmFyIG1vYmlsZV9tZW51X2Jhcl90b2dnbGUiPjwvc3Bhbj4KCQkJCTwvZGl2PgoJCQk8L2Rpdj4JCQk8L2Rpdj4gPCEtLSAjZXQtdG9wLW5hdmlnYXRpb24gLS0+CgkJPC9kaXY+IDwhLS0gLmNvbnRhaW5lciAtLT4KCQkJPC9oZWFkZXI+IDwhLS0gI21haW4taGVhZGVyIC0tPgo8ZGl2IGlkPSJldC1tYWluLWFyZWEiPgoJCjxkaXYgaWQ9Im1haW4tY29udGVudCI+CiAgICAKICAgIAogICA8IS0tIDxkaXYgaWQ9Imdvb2dsZV90cmFuc2xhdGVfZWxlbWVudCI+PC9kaXY+CiAgICAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly93aWRnZXRzLmNvaW5nZWNrby5jb20vY29pbmdlY2tvLWNvaW4tcHJpY2UtbWFycXVlZS13aWRnZXQuanMiPjwvc2NyaXB0Pgo8Y29pbmdlY2tvLWNvaW4tcHJpY2UtbWFycXVlZS13aWRnZXQgIGNvaW4taWRzPSJiaXRjb2luLGV0aGVyZXVtLGVvcyxyaXBwbGUsbGl0ZWNvaW4iIGN1cnJlbmN5PSJ1c2QiIGJhY2tncm91bmQtY29sb3I9IiNmZmZmZmYiIGxvY2FsZT0iZW4iPjwvY29pbmdlY2tvLWNvaW4tcHJpY2UtbWFycXVlZS13aWRnZXQ+IC0tPgoKCgo8IS0tIFRyYWRpbmdWaWV3IFdpZGdldCBCRUdJTiAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Ij48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3MzLnRyYWRpbmd2aWV3LmNvbS9leHRlcm5hbC1lbWJlZGRpbmcvZW1iZWQtd2lkZ2V0LXRpY2tlci10YXBlLmpzIiBhc3luYz4KICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgInN5bWJvbHMiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aXRsZSI6ICJTJlAgNTAwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInByb05hbWUiOiAiSU5ERVg6U1BYIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRpdGxlIjogIlNoYW5naGFpIENvbXBvc2l0ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwcm9OYW1lIjogIklOREVYOlhMWTAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGl0bGUiOiAiRVVSL1VTRCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwcm9OYW1lIjogIkZYX0lEQzpFVVJVU0QiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGl0bGUiOiAiQlRDL1VTRCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwcm9OYW1lIjogIkJJVEZJTkVYOkJUQ1VTRCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aXRsZSI6ICJFVEgvVVNEIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInByb05hbWUiOiAiQklURklORVg6RVRIVVNEIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgInRoZW1lIjogImRhcmsiLAogICAgICAgICAgICAgICAgICAgICAgICAgICJpc1RyYW5zcGFyZW50IjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzcGxheU1vZGUiOiAiY29tcGFjdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2FsZSI6ICJlbiIKICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zY3JpcHQ+IAogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgRU5EIC0tPgoKCiAgICAJPCEtLSAjbWFpbi1oZWFkZXIgLS0+Cgo8ZGl2IGlkPSJldC1tYWluLWFyZWEiPgoJCjxkaXYgaWQ9Im1haW4tY29udGVudCI+CgoJCQkKCQkJCTxhcnRpY2xlIGlkPSJwb3N0LTQ2MjUiIGNsYXNzPSJwb3N0LTQ2MjUgcGFnZSB0eXBlLXBhZ2Ugc3RhdHVzLXB1Ymxpc2ggaGVudHJ5Ij4KCgkJCQkKCQkJCQk8ZGl2IGNsYXNzPSJlbnRyeS1jb250ZW50Ij4KCQkJCQk8ZGl2IGNsYXNzPSJldC1sIGV0LWwtLXBvc3QiPgoJCQk8ZGl2IGNsYXNzPSJldF9idWlsZGVyX2lubmVyX2NvbnRlbnQgZXRfcGJfZ3V0dGVyczMiPgoJCTxkaXYgY2xhc3M9ImV0X3BiX3NlY3Rpb24gZXRfcGJfc2VjdGlvbl8wIGV0X3BiX3NlY3Rpb25fcGFyYWxsYXggZXRfcGJfd2l0aF9iYWNrZ3JvdW5kIGV0X3NlY3Rpb25fcmVndWxhciBzZWN0aW9uX2hhc19kaXZpZGVyIGV0X3BiX2JvdHRvbV9kaXZpZGVyIiA+CgkJCQkKCQkJCTxzcGFuIGNsYXNzPSJldF9wYXJhbGxheF9iZ193cmFwIj48c3BhbgoJCQkJCQljbGFzcz0iZXRfcGFyYWxsYXhfYmciCgkJCQkJCXN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA2L21hcmtldGluZy1iZzYucG5nKTsiCgkJCQkJPjwvc3Bhbj48L3NwYW4+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfMCI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfMiBldF9wYl9jb2x1bW5fMCBwYS1pbmxpbmUtYnV0dG9ucyAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgo8IS0tIFNsaWRlc2hvdyBjb250YWluZXIgLS0+CjxkaXYgY2xhc3M9InNsaWRlc2hvdy1jb250YWluZXIiPgoKICA8IS0tIEZ1bGwtd2lkdGggaW1hZ2VzIHdpdGggbnVtYmVyIGFuZCBjYXB0aW9uIHRleHQgLS0+CiAgPGRpdiBjbGFzcz0ibXlTbGlkZXMgZmFkZSI+CiAgICA8ZGl2IGNsYXNzPSJudW1iZXJ0ZXh0Ij4xIC8gMzwvZGl2PgogICAgPGltZyBzcmM9ImltZzEuanBnIiBzdHlsZT0id2lkdGg6MTAwJSI+CiAgICA8ZGl2IGNsYXNzPSJ0ZXh0IiBzdHlsZT0iY29sb3I6ICNmZmY7Ij4gQXMgYSBnbG9iYWwgaW52ZXN0bWVudCBmaXJtLCB3ZSBmb3N0ZXIgZGl2ZXJzZSBwZXJzcGVjdGl2ZXMgYW5kIGVtYnJhY2UKaW5ub3ZhdGlvbiB0byBoZWxwIG91ciBjbGllbnRzIG5hdmlnYXRlIHRoZSB1bmNlcnRhaW50eSBvZiBjYXBpdGFsIG1hcmtldHMgIDwvZGl2PgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJteVNsaWRlcyBmYWRlIj4KICAgIDxkaXYgY2xhc3M9Im51bWJlcnRleHQiPjIgLyAzPC9kaXY+CiAgICA8aW1nIHNyYz0iaW1nMi5qcGciIHN0eWxlPSJ3aWR0aDoxMDAlIj4KICAgIDxkaXYgY2xhc3M9InRleHQiIHN0eWxlPSJjb2xvcjogI2ZmZjsiPiBXZSBhcmUgY29tbWl0dGVkIHRvIGJ1aWxkaW5nIHN1c3RhaW5hYmxlIHdlYWx0aCBmb3IgaW52ZXN0b3JzLiA8L2Rpdj4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0ibXlTbGlkZXMgZmFkZSI+CiAgICA8ZGl2IGNsYXNzPSJudW1iZXJ0ZXh0Ij4zIC8gMzwvZGl2PgogICAgPGltZyBzcmM9ImltZzMuanBnIiBzdHlsZT0id2lkdGg6MTAwJSI+CiAgICA8ZGl2IGNsYXNzPSJ0ZXh0IiBzdHlsZT0iY29sb3I6ICNmZmY7Ij4gSW52ZXN0IGFuZCBwcm9maXQgZnJvbSBvdXIgZ3Jvd2luZyB2YXJpZXR5IG9mIGFzc2V0cyA8L2Rpdj4KICA8L2Rpdj4KCiAgPCEtLSBOZXh0IGFuZCBwcmV2aW91cyBidXR0b25zIC0tPgogIDxhIGNsYXNzPSJwcmV2IiBvbmNsaWNrPSJwbHVzU2xpZGVzKC0xKSI+JiMxMDA5NDs8L2E+CiAgPGEgY2xhc3M9Im5leHQiIG9uY2xpY2s9InBsdXNTbGlkZXMoMSkiPiYjMTAwOTU7PC9hPgo8L2Rpdj4KPGJyPgoKPCEtLSBUaGUgZG90cy9jaXJjbGVzIC0tPgo8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlciI+CiAgPHNwYW4gY2xhc3M9ImRvdCIgb25jbGljaz0iY3VycmVudFNsaWRlKDEpIj48L3NwYW4+CiAgPHNwYW4gY2xhc3M9ImRvdCIgb25jbGljaz0iY3VycmVudFNsaWRlKDIpIj48L3NwYW4+CiAgPHNwYW4gY2xhc3M9ImRvdCIgb25jbGljaz0iY3VycmVudFNsaWRlKDMpIj48L3NwYW4+CjwvZGl2PgoKCgoKCjxzdHlsZT4KICAgIAogICAgCiAgICAKICAgICoge2JveC1zaXppbmc6Ym9yZGVyLWJveH0KCi8qIFNsaWRlc2hvdyBjb250YWluZXIgKi8KLnNsaWRlc2hvdy1jb250YWluZXIgewogIG1heC13aWR0aDogMTAwMHB4OwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICBtYXJnaW46IGF1dG87Cn0KCi8qIEhpZGUgdGhlIGltYWdlcyBieSBkZWZhdWx0ICovCi5teVNsaWRlcyB7CiAgZGlzcGxheTogbm9uZTsKfQoKLyogTmV4dCAmIHByZXZpb3VzIGJ1dHRvbnMgKi8KLnByZXYsIC5uZXh0IHsKICBjdXJzb3I6IHBvaW50ZXI7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRvcDogNTAlOwogIHdpZHRoOiBhdXRvOwogIG1hcmdpbi10b3A6IC0yMnB4OwogIHBhZGRpbmc6IDE2cHg7CiAgY29sb3I6IHdoaXRlOwogIGZvbnQtd2VpZ2h0OiBib2xkOwogIGZvbnQtc2l6ZTogMThweDsKICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7CiAgYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7CiAgdXNlci1zZWxlY3Q6IG5vbmU7Cn0KCi8qIFBvc2l0aW9uIHRoZSAibmV4dCBidXR0b24iIHRvIHRoZSByaWdodCAqLwoubmV4dCB7CiAgcmlnaHQ6IDA7CiAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7Cn0KCi8qIE9uIGhvdmVyLCBhZGQgYSBibGFjayBiYWNrZ3JvdW5kIGNvbG9yIHdpdGggYSBsaXR0bGUgYml0IHNlZS10aHJvdWdoICovCi5wcmV2OmhvdmVyLCAubmV4dDpob3ZlciB7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjgpOwp9CgovKiBDYXB0aW9uIHRleHQgKi8KLnRleHQgewogIGNvbG9yOiAjZjJmMmYyOwogIGZvbnQtc2l6ZTogMTVweDsKICBwYWRkaW5nOiA4cHggMTJweDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgYm90dG9tOiA4cHg7CiAgd2lkdGg6IDEwMCU7CiAgdGV4dC1hbGlnbjogY2VudGVyOwp9CgovKiBOdW1iZXIgdGV4dCAoMS8zIGV0YykgKi8KLm51bWJlcnRleHQgewogIGNvbG9yOiAjZjJmMmYyOwogIGZvbnQtc2l6ZTogMTJweDsKICBwYWRkaW5nOiA4cHggMTJweDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdG9wOiAwOwp9CgovKiBUaGUgZG90cy9idWxsZXRzL2luZGljYXRvcnMgKi8KLmRvdCB7CiAgY3Vyc29yOiBwb2ludGVyOwogIGhlaWdodDogMTVweDsKICB3aWR0aDogMTVweDsKICBtYXJnaW46IDAgMnB4OwogIGJhY2tncm91bmQtY29sb3I6ICNiYmI7CiAgYm9yZGVyLXJhZGl1czogNTAlOwogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNnMgZWFzZTsKfQoKLmFjdGl2ZSwgLmRvdDpob3ZlciB7CiAgYmFja2dyb3VuZC1jb2xvcjogIzcxNzE3MTsKfQoKLyogRmFkaW5nIGFuaW1hdGlvbiAqLwouZmFkZSB7CiAgYW5pbWF0aW9uLW5hbWU6IGZhZGU7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzOwp9CgpAa2V5ZnJhbWVzIGZhZGUgewogIGZyb20ge29wYWNpdHk6IC40fQogIHRvIHtvcGFjaXR5OiAxfQp9CiAgICAKICAgIAo8L3N0eWxlPgoKCgoKCjxzY3JpcHQ+CiAgICAKICAgIGxldCBzbGlkZUluZGV4ID0gMTsKc2hvd1NsaWRlcyhzbGlkZUluZGV4KTsKCi8vIE5leHQvcHJldmlvdXMgY29udHJvbHMKZnVuY3Rpb24gcGx1c1NsaWRlcyhuKSB7CiAgc2hvd1NsaWRlcyhzbGlkZUluZGV4ICs9IG4pOwp9CgovLyBUaHVtYm5haWwgaW1hZ2UgY29udHJvbHMKZnVuY3Rpb24gY3VycmVudFNsaWRlKG4pIHsKICBzaG93U2xpZGVzKHNsaWRlSW5kZXggPSBuKTsKfQoKZnVuY3Rpb24gc2hvd1NsaWRlcyhuKSB7CiAgbGV0IGk7CiAgbGV0IHNsaWRlcyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoIm15U2xpZGVzIik7CiAgbGV0IGRvdHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJkb3QiKTsKICBpZiAobiA+IHNsaWRlcy5sZW5ndGgpIHtzbGlkZUluZGV4ID0gMX0KICBpZiAobiA8IDEpIHtzbGlkZUluZGV4ID0gc2xpZGVzLmxlbmd0aH0KICBmb3IgKGkgPSAwOyBpIDwgc2xpZGVzLmxlbmd0aDsgaSsrKSB7CiAgICBzbGlkZXNbaV0uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKICB9CiAgZm9yIChpID0gMDsgaSA8IGRvdHMubGVuZ3RoOyBpKyspIHsKICAgIGRvdHNbaV0uY2xhc3NOYW1lID0gZG90c1tpXS5jbGFzc05hbWUucmVwbGFjZSgiIGFjdGl2ZSIsICIiKTsKICB9CiAgc2xpZGVzW3NsaWRlSW5kZXgtMV0uc3R5bGUuZGlzcGxheSA9ICJibG9jayI7CiAgZG90c1tzbGlkZUluZGV4LTFdLmNsYXNzTmFtZSArPSAiIGFjdGl2ZSI7Cn0KICAgIAo8L3NjcmlwdD4KCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdGV4dCBldF9wYl90ZXh0XzEgIGV0X3BiX3RleHRfYWxpZ25fbGVmdCBldF9wYl9iZ19sYXlvdXRfZGFyayI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxwPldlbGNvbWUgdG8gRXF1aW51eCBHbG9iYWwgQXNzZXQgTExDLiBHZXQgdGhlIGJlc3QgY3J5cHRvIHNpZ25hbHMsIHRyYWRlIGFuZCBpbnZlc3QgaW4gcmVhbCBlc3RhdGUsIG9pbC9nYXMsIGdvbGQsIHN0b2NrcyBhbmQgRVRGcy4gVHJhZGUgY3VycmVuY3kgcGFpcnMsIGNyeXB0b2N1cnJlbmNpZXMsIGluZGljZXMgYW5kIGNvbW1vZGl0aWVzIHZpYSBDRkRzLiBJbnZlc3RpbmcgaW4gdGhlIGZpbmFuY2lhbCBtYXJrZXRzIGhhcyBuZXZlciBiZWVuIGVhc2llci48L3A+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90ZXh0IGV0X3BiX3RleHRfMSAgZXRfcGJfdGV4dF9hbGlnbl9sZWZ0IGV0X3BiX2JnX2xheW91dF9kYXJrIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdGV4dF9pbm5lciI+PHA+V2UgYXJlIGhlbHBpbmcgbWFueSA8c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij5wZW9wbGUgPC9zcGFuPnRocm91Z2ggdGhlIGN1cnJlbnQgc2l0dWF0aW9uIGluIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij5jcnlwdG88L3NwYW4+IG1hcmtldCwgYW5kIHdlIGFyZSBoZWxwaW5nIHRoZW0gIDxzcGFuIHN0eWxlPSJjb2xvcjogIzAwY2NmZjsiPmFjaGlldmU8L3NwYW4+IGZpbmFuY2lhbCBmcmVlZG9tLiBHaXZlIHVzIGEgdHJ5IGFuZCB5b3Ugd2lsbCA8c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij5zb29uPC9zcGFuPiBiZSB0aGUgbW9zdCA8c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij5zdWNjZXNzZnVsIDwvc3Bhbj50cmFkZXIgaW4gdGhlIHJvb20uPC9wPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fbW9kdWxlX3dyYXBwZXIgZXRfcGJfYnV0dG9uXzBfd3JhcHBlciBldF9wYl9idXR0b25fYWxpZ25tZW50X2xlZnQgZXRfcGJfYnV0dG9uX2FsaWdubWVudF9waG9uZV9jZW50ZXIgZXRfcGJfbW9kdWxlICI+CgkJCQk8YSBjbGFzcz0iZXRfcGJfYnV0dG9uIGV0X3BiX2J1dHRvbl8wIGV0X3BiX2JnX2xheW91dF9kYXJrIiBocmVmPSI/YT1zaWdudXAiPlNpZ251cDwvYT4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyIGV0X3BiX2J1dHRvbl8xX3dyYXBwZXIgZXRfcGJfYnV0dG9uX2FsaWdubWVudF9sZWZ0IGV0X3BiX21vZHVsZSAiPgoJCQkJPGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9idXR0b25fMSBldF9wYl9iZ19sYXlvdXRfZGFyayIgaHJlZj0iP2E9bG9naW4iPkxvZ2luPC9hPgoJCQk8L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzIgZXRfcGJfY29sdW1uXzEgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX2NvZGUgZXRfcGJfY29kZV8wICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2NvZGVfaW5uZXIiPjxkaXYgY2xhc3M9J3lvdXR1YmUtcGxheWVyJyBkYXRhLWlkPSdTMEpQTlplMXdMRSc+PC9kaXY+PC9kaXY+CgkJCTwvZGl2PgoJCQk8L2Rpdj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQk8L2Rpdj4KCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVyIGV0LW5vLXRyYW5zaXRpb24iPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9zZWN0aW9uIGV0X3BiX3NlY3Rpb25fMSBldF9zZWN0aW9uX3JlZ3VsYXIiID4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfMSI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fMiAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIGV0LWxhc3QtY2hpbGQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdGV4dCBldF9wYl90ZXh0XzIgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxoMj5DcnlwdG8gU2lnbmFscyAmIzgyMTE7IEhvdyBkb2VzIGl0IHdvcms/PC9oMj48L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX2RpdmlkZXIgZXRfcGJfZGl2aWRlcl8wIGV0X3BiX2RpdmlkZXJfcG9zaXRpb25fIGV0X3BiX3NwYWNlIj48ZGl2IGNsYXNzPSJldF9wYl9kaXZpZGVyX2ludGVybmFsIj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdGV4dCBldF9wYl90ZXh0XzMgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9kYXJrIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdGV4dF9pbm5lciI+TWFrZSBhcyBtdWNoIG1vbmV5IGFzIHBvc3NpYmxlIGluIHRoZSBjcnlwdG8gd29ybGQhIEpvaW4gb3VyIEVxdWludXhnbG9iYWxhc3NldCBGYW1pbHkgVklQIG1lbWJlcnMgbm93ISBHZXQgdXAgdG8gOSBjcnlwdG8gc2lnbmFscyBvbiBCaW5hbmNlIG9yIEJpdG1leCBhbmQgQnliaXQgcGVyIGRheSwgZGFpbHkgaW5zaWdodHMgb24gdGhlIGNyeXB0byBtYXJrZXQsIGRhaWx5IHVwZGF0ZXMsIGNyeXB0byBhbmFseXNpcyBhbmQgbXVjaCBtb3JlITwvZGl2PgoJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfcm93IGV0X3BiX3Jvd18yIGV0X3BiX2VxdWFsX2NvbHVtbnMgZXRfcGJfZ3V0dGVyczIiPgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzQgZXRfcGJfY29sdW1uXzMgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9ibHVyYiBldF9wYl9ibHVyYl8wIGV0X2FuaW1hdGVkICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciAgZXRfcGJfYmx1cmJfcG9zaXRpb25fdG9wIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2NvbnRlbnQiPgoJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21haW5fYmx1cmJfaW1hZ2UiPjxzcGFuIGNsYXNzPSJldF9wYl9pbWFnZV93cmFwIj48c3BhbiBjbGFzcz0iZXQtd2F5cG9pbnQgZXRfcGJfYW5pbWF0aW9uX29mZiBldF9wYl9hbmltYXRpb25fb2ZmX3RhYmxldCBldF9wYl9hbmltYXRpb25fb2ZmX3Bob25lIGV0LXBiLWljb24iPu6DrDwvc3Bhbj48L3NwYW4+PC9kaXY+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGFpbmVyIj4KCQkJCQkJPGg0IGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj48c3Bhbj5BbmFseXNpczwvc3Bhbj48L2g0PgoJCQkJCQk8ZGl2IGNsYXNzPSJldF9wYl9ibHVyYl9kZXNjcmlwdGlvbiI+PHA+T3VyIGh5YnJpZCBzZXQgb2YgbWFya2V0IGluZGljYXRvcnMgYW5kIHJpc2sgc3RyYXRlZ2llcyBlbnN1cmUgaGlnaCBwcm9maXRzIHdpdGggbG93IHJpc2suIE91ciB0cmFkZXJzIHRyYWRlIHJldmlldyBlYWNoIGNyeXB0byBzaWduYWwgZm9yIGFjY3VyYWN5IGJlZm9yZSBzaGFyaW5nIGl0IHdpdGggb3VyIFZJUCBNZW1iZXJzLjwvcD48L2Rpdj4KCQkJCQk8L2Rpdj4KCQkJCTwvZGl2PgoJCQk8L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzQgZXRfcGJfY29sdW1uXzQgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9ibHVyYiBldF9wYl9ibHVyYl8xIGV0X2FuaW1hdGVkICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciAgZXRfcGJfYmx1cmJfcG9zaXRpb25fdG9wIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2NvbnRlbnQiPgoJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21haW5fYmx1cmJfaW1hZ2UiPjxzcGFuIGNsYXNzPSJldF9wYl9pbWFnZV93cmFwIj48c3BhbiBjbGFzcz0iZXQtd2F5cG9pbnQgZXRfcGJfYW5pbWF0aW9uX29mZiBldF9wYl9hbmltYXRpb25fb2ZmX3RhYmxldCBldF9wYl9hbmltYXRpb25fb2ZmX3Bob25lIGV0LXBiLWljb24iPlU8L3NwYW4+PC9zcGFuPjwvZGl2PgoJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2NvbnRhaW5lciI+CgkJCQkJCTxoNCBjbGFzcz0iZXRfcGJfbW9kdWxlX2hlYWRlciI+PHNwYW4+UmVzZWFyY2g8L3NwYW4+PC9oND4KCQkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfZGVzY3JpcHRpb24iPjxwPjxzcGFuPk91ciBjcnlwdG8gdHJhZGluZyBzaWduYWxzIGFyZSBiYXNlZCBvbiBkZWVwIGFuYWx5c2lzIHdpdGggYSB1bmlxdWUgY29tYmluYXRpb24gb2YgYW5hbHl0aWNzIHRoYXQgcHJvdmlkZXMgd2VsbC10aW1lZCB0cmFkaW5nIHNpZ25hbHMganVzdCBiZWZvcmUgbWFqb3IgcHJpY2UgYWN0aW9uIG9uIGJlc3QgY3J5cHRvY3VycmVuY2llcy48L3NwYW4+PC9wPjwvZGl2PgoJCQkJCTwvZGl2PgoJCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfNCBldF9wYl9jb2x1bW5fNSAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX2JsdXJiIGV0X3BiX2JsdXJiXzIgZXRfYW5pbWF0ZWQgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyICBldF9wYl9ibHVyYl9wb3NpdGlvbl90b3AgZXRfcGJfYmdfbGF5b3V0X2xpZ2h0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGVudCI+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbWFpbl9ibHVyYl9pbWFnZSI+PHNwYW4gY2xhc3M9ImV0X3BiX2ltYWdlX3dyYXAiPjxzcGFuIGNsYXNzPSJldC13YXlwb2ludCBldF9wYl9hbmltYXRpb25fb2ZmIGV0X3BiX2FuaW1hdGlvbl9vZmZfdGFibGV0IGV0X3BiX2FuaW1hdGlvbl9vZmZfcGhvbmUgZXQtcGItaWNvbiI+dzwvc3Bhbj48L3NwYW4+PC9kaXY+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGFpbmVyIj4KCQkJCQkJPGg0IGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj48c3Bhbj5UZWxlZ3JhbTwvc3Bhbj48L2g0PgoJCQkJCQk8ZGl2IGNsYXNzPSJldF9wYl9ibHVyYl9kZXNjcmlwdGlvbiI+PHNwYW4+T3VyIGNyeXB0byB0cmFkaW5nIHNpZ25hbHMgYW5kIGNvYWNoaW5nIHdpbGwgYmUgcG9zdGVkIG9uIHRlbGVncmFtIGJlY2F1c2Ugb2YgaXRzIHByb3ZlbiBhY2Nlc3NpYmlsaXR5IGFuZCByZWxpYWJpbGl0eS48L3NwYW4+PC9wPgo8cD48c3Bhbj48L3NwYW4+PC9wPgo8cD48c3Bhbj48L3NwYW4+PC9wPgo8cD48c3Bhbj48L3NwYW4+PC9kaXY+CgkJCQkJPC9kaXY+CgkJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX2NvbHVtbiBldF9wYl9jb2x1bW5fMV80IGV0X3BiX2NvbHVtbl82ICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2ggZXQtbGFzdC1jaGlsZCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9ibHVyYiBldF9wYl9ibHVyYl8zIGV0X2FuaW1hdGVkICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciAgZXRfcGJfYmx1cmJfcG9zaXRpb25fdG9wIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2NvbnRlbnQiPgoJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21haW5fYmx1cmJfaW1hZ2UiPjxzcGFuIGNsYXNzPSJldF9wYl9pbWFnZV93cmFwIj48c3BhbiBjbGFzcz0iZXQtd2F5cG9pbnQgZXRfcGJfYW5pbWF0aW9uX29mZiBldF9wYl9hbmltYXRpb25fb2ZmX3RhYmxldCBldF9wYl9hbmltYXRpb25fb2ZmX3Bob25lIGV0LXBiLWljb24iPu6Ehjwvc3Bhbj48L3NwYW4+PC9kaXY+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGFpbmVyIj4KCQkJCQkJPGg0IGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj48c3Bhbj5HdWFyYW50ZWU8L3NwYW4+PC9oND4KCQkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfZGVzY3JpcHRpb24iPjxwPjxzcGFuPk91ciBjb21tdW5pdHkgb2YgaGFwcHkgVklQIGNsaWVudHMgaGFzIGdyb3duIHNvIHF1aWNrbHksIGFuZCBzbyBoYXZlIHRoZWlyIHdhbGxldHMuIFdlIGFyZSBzbyBjb25maWRlbnQgaW4gb3VyIHByb2R1Y3QgdGhhdCB3ZSBjYW4gZ3VhcmFudGVlIHlvdXIgc2F0aXNmYWN0aW9uLjwvc3Bhbj48L3A+CjxwPjxzcGFuPjwvc3Bhbj48L3A+PC9kaXY+CgkJCQkJPC9kaXY+CgkJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfMyI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fNyAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIGV0LWxhc3QtY2hpbGQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fbW9kdWxlX3dyYXBwZXIgZXRfcGJfYnV0dG9uXzJfd3JhcHBlciBldF9wYl9idXR0b25fYWxpZ25tZW50X2NlbnRlciBldF9wYl9tb2R1bGUgIj4KCQkJCTxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfYnV0dG9uXzIgZXRfcGJfYmdfbGF5b3V0X2RhcmsiIGhyZWY9Ij9hPXNpZ251cCI+R2V0IE1lbWJlcnNoaXAgTm93PC9hPgoJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJPC9kaXY+CgkJCQkKCQkJCQoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9zZWN0aW9uIGV0X3BiX3NlY3Rpb25fMiBldF9wYl93aXRoX2JhY2tncm91bmQgZXRfc2VjdGlvbl9yZWd1bGFyIHNlY3Rpb25faGFzX2RpdmlkZXIgZXRfcGJfYm90dG9tX2RpdmlkZXIiID4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfNCI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fOCAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIGV0LWxhc3QtY2hpbGQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdGV4dCBldF9wYl90ZXh0XzQgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LWViYjNjMmYgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LWhlYWRpbmciIGRhdGEtaWQ9ImViYjNjMmYiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtd2lkZ2V0X3R5cGU9ImhlYWRpbmcuZGVmYXVsdCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci13aWRnZXQtY29udGFpbmVyIj4KPGgyIGNsYXNzPSJlbGVtZW50b3ItaGVhZGluZy10aXRsZSBlbGVtZW50b3Itc2l6ZS1kZWZhdWx0Ij5XaHkgY2hvb3NlICBFcXVpbnV4Z2xvYmFsYXNzZXQ8L2gyPgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LWQyYjZkMGMgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LXNwYWNlciIgZGF0YS1pZD0iZDJiNmQwYyIgZGF0YS1lbGVtZW50X3R5cGU9IndpZGdldCIgZGF0YS13aWRnZXRfdHlwZT0ic3BhY2VyLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1zcGFjZXIiPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9kaXZpZGVyIGV0X3BiX2RpdmlkZXJfMSBldF9wYl9kaXZpZGVyX3Bvc2l0aW9uXyBldF9wYl9zcGFjZSI+PGRpdiBjbGFzcz0iZXRfcGJfZGl2aWRlcl9pbnRlcm5hbCI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF81ICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfZGFyayI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPkNoZWNrIG91ciBTZXJ2aWNlcyAgJiM4MjExOwpCdWlsZGluZyB0cnVzdCBpcyBpbXBvcnRhbnQgYW5kIHRvIGVuc3VyZSB5b3Uga25vdyB5b3UgYXJlIHByb3RlY3RlZCwgRXF1aW51eGdsb2JhbGFzc2V0IGhhcyBlbXBsb3llZCByZWd1bGF0aW9uIGFuZCBzdGF0ZS1vZi10aGUtYXJ0IHRlY2hub2xvZ3kgZm9yIHlvdSB0byB0cmFkZS9pbnZlc3Qgd2l0aCBjb25maWRlbmNlLgpBcyBhIHJlZ3VsYXRlZCBicm9rZXIgd2UgbXVzdCBtYWludGFpbiBoaWdoIGxldmVscyBvZiBjYXBpdGFsaXphdGlvbiwgdHJhbnNwYXJlbmN5IGFuZCByZXBvcnRpbmcuIE91ciBjbGllbnRzIGZ1bmRzIGFyZSBzZWdyZWdhdGVkIGZyb20gb3VyIG93biBpbiBUaWVyIDEgYmFua3MuPC9kaXY+CgkJCTwvZGl2PgoJCQk8L2Rpdj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQk8L2Rpdj4KCQkJCgkJCQoJCQk8ZGl2IGNsYXNzPSJldF9wYl9yb3cgZXRfcGJfcm93XzUiPgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzIgZXRfcGJfY29sdW1uXzkgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9ibHVyYiBldF9wYl9ibHVyYl80ICBldF9wYl90ZXh0X2FsaWduX2xlZnQgIGV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnQgZXRfcGJfYmdfbGF5b3V0X2xpZ2h0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGVudCI+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbWFpbl9ibHVyYl9pbWFnZSI+PHNwYW4gY2xhc3M9ImV0X3BiX2ltYWdlX3dyYXAiPjxzcGFuIGNsYXNzPSJldC13YXlwb2ludCBldF9wYl9hbmltYXRpb25fdG9wIGV0X3BiX2FuaW1hdGlvbl90b3BfdGFibGV0IGV0X3BiX2FuaW1hdGlvbl90b3BfcGhvbmUgZXQtcGItaWNvbiI+IDwvc3Bhbj48L3NwYW4+PC9kaXY+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGFpbmVyIj4KCQkJCQkJPGg0IGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj48c3Bhbj5CZSBUaGUgRmlyc3Q8L3NwYW4+PC9oND4KCQkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfZGVzY3JpcHRpb24iPjxwPkJ1eSB0aGUgZGlwLCBzZWxsIHRoZSB0b3AuIEVhc3kgdG8gc2F5LCBoYXJkZXIgdG8gZG8uIFRoYXQmIzgyMTc7cyB3aHkgd2UgYXJlIGhlcmU6IHRvIHNhdGlzZnkgdGhlIG5lZWRzIG9mIG91ciBjbGllbnRzLiAgQXMgb3VyIEVxdWludXhnbG9iYWxhc3NldFZJUCBtZW1iZXIgeW91IHdpbGwgZ2V0IG91ciB0cmFkaW5nIHNpZ25hbHMgZXZlcnlkYXksIHdlIHdpbGwgc2hhcmUgb3VyIGJ1eSB6b25lICYjODIxMTsgdGhhdCBpcyB3aGVyZSB3ZSBhcmUgYWNjdW11bGF0aW5nIHRoZSBjb2luLCBzZWxsIHRhcmdldHMgJiM4MjExOyB3aGVyZSB3ZSBhcmUgc3RhcnRpbmcgdG8gc2VsbCBvdXIgcG9zaXRpb24gYW5kIG91ciBzdG9wIGxvc3MgaW4gY2FzZSB0aGUgdHJhZGUgdHVybnMgYWdhaW5zdCB1cywgd2UgYXJlIHNlY3VyaW5nIG91ciBtb25leSBieSB0aWdodCBzdG9wIGxvc3MuIExvdyByaXNrIGFuZCBoaWdoIHJld2FyZCBzdHJhdGVneS48L3A+PC9kaXY+CgkJCQkJPC9kaXY+CgkJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCQoJCQkKCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX2JsdXJiIGV0X3BiX2JsdXJiXzUgIGV0X3BiX3RleHRfYWxpZ25fbGVmdCAgZXRfcGJfYmx1cmJfcG9zaXRpb25fbGVmdCBldF9wYl9iZ19sYXlvdXRfbGlnaHQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9ibHVyYl9jb250ZW50Ij4KCQkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tYWluX2JsdXJiX2ltYWdlIj48c3BhbiBjbGFzcz0iZXRfcGJfaW1hZ2Vfd3JhcCI+PHNwYW4gY2xhc3M9ImV0LXdheXBvaW50IGV0X3BiX2FuaW1hdGlvbl90b3AgZXRfcGJfYW5pbWF0aW9uX3RvcF90YWJsZXQgZXRfcGJfYW5pbWF0aW9uX3RvcF9waG9uZSBldC1wYi1pY29uIj7ugZI8L3NwYW4+PC9zcGFuPjwvZGl2PgoJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2NvbnRhaW5lciI+CgkJCQkJCTxoNCBjbGFzcz0iZXRfcGJfbW9kdWxlX2hlYWRlciI+PHNwYW4+UGVyc29uYWwgQ29hY2g8L3NwYW4+PC9oND4KCQkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfZGVzY3JpcHRpb24iPldlIGxvdmUgdGFsa2luZyBhYm91dCBmaW5hbmNlLCBiaXRjb2luIGFuZCBhbnkgbmV3IGNyeXB0b2N1cnJlbmN5IHRyYWRpbmcgc3RyYXRlZ2llcy4gWW91IHdpbGwgYWxzbyBnZXQgeW91ciBvd24gY29hY2gsIHdobyB3aWxsIGJlIGF2YWlsYWJsZSAyNC83IG9uIGNoYXQuIEFzIG91ciBWSVAgbWVtYmVyIHlvdSB3aWxsIGFsc28gZ2V0IGEgMzAtbWludXRlIGludHJvZHVjdGlvbiBjYWxsIHdpdGggb25lIG9mIG91ciBjcnlwdG8gZXhwZXJ0cy48L2Rpdj4KCQkJCQk8L2Rpdj4KCQkJCTwvZGl2PgoJCQk8L2Rpdj4KCQkJCgkJCTwvZGl2PgoJCQkKCQkJCgkJCTxkaXYgY2xhc3M9ImV0X3BiX2NvbHVtbiBldF9wYl9jb2x1bW5fMV8yIGV0X3BiX2NvbHVtbl8xMCAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIGV0LWxhc3QtY2hpbGQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfYmx1cmIgZXRfcGJfYmx1cmJfNiAgZXRfcGJfdGV4dF9hbGlnbl9sZWZ0ICBldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0IGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2NvbnRlbnQiPgoJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21haW5fYmx1cmJfaW1hZ2UiPjxzcGFuIGNsYXNzPSJldF9wYl9pbWFnZV93cmFwIj48c3BhbiBjbGFzcz0iZXQtd2F5cG9pbnQgZXRfcGJfYW5pbWF0aW9uX3RvcCBldF9wYl9hbmltYXRpb25fdG9wX3RhYmxldCBldF9wYl9hbmltYXRpb25fdG9wX3Bob25lIGV0LXBiLWljb24iPu6Bkjwvc3Bhbj48L3NwYW4+PC9kaXY+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGFpbmVyIj4KCQkJCQkJPGg0IGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj48c3Bhbj5GcmllbmRseSBTdXBwb3J0PC9zcGFuPjwvaDQ+CgkJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2Rlc2NyaXB0aW9uIj48cD48c3Bhbj5PdXIgdGVhbSBhcmUgY29tbWl0dGVkIHRvIGRlbGl2ZXJpbmcgdGhlIGJlc3Qgc3VwcG9ydCBmb3IgYWxsIHlvdXIgdHJhZGluZyBuZWVkcy4gRXF1aW51eGdsb2JhbGFzc2V0IGFpbXMgdG8gc2V0IGEgbmV3IHN0YW5kYXJkIG9mIGV4Y2VsbGVuY2UgaW4gQ3J5cHRvY3VycmVuY3kgVHJhZGluZywgeW91ciBjb2FjaCBpcyBhbHdheXMgcmVhZHkgdG8gYW5zd2VyIGFsbCB5b3VyIHF1ZXN0aW9ucyBvbiBvdXIgMjQvNyBjaGF0IGFueXRpbWUuPC9zcGFuPjwvcD48L2Rpdj4KCQkJCQk8L2Rpdj4KCQkJCTwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfYmx1cmIgZXRfcGJfYmx1cmJfNyAgZXRfcGJfdGV4dF9hbGlnbl9sZWZ0ICBldF9wYl9ibHVyYl9wb3NpdGlvbl9sZWZ0IGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2JsdXJiX2NvbnRlbnQiPgoJCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21haW5fYmx1cmJfaW1hZ2UiPjxzcGFuIGNsYXNzPSJldF9wYl9pbWFnZV93cmFwIj48c3BhbiBjbGFzcz0iZXQtd2F5cG9pbnQgZXRfcGJfYW5pbWF0aW9uX3RvcCBldF9wYl9hbmltYXRpb25fdG9wX3RhYmxldCBldF9wYl9hbmltYXRpb25fdG9wX3Bob25lIGV0LXBiLWljb24iPu6Bkjwvc3Bhbj48L3NwYW4+PC9kaXY+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGFpbmVyIj4KCQkJCQkJPGg0IGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj48c3Bhbj5WSVAgQ2hhdHJvb208L3NwYW4+PC9oND4KCQkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfZGVzY3JpcHRpb24iPjxwPlRoZSBFcXVpbnV4Z2xvYmFsYXNzZXQgVGVhbSBhbmQgVklQIG1lbWJlcnMgYXJlIGhlcmUgdG8gaGVscCBhbmQgc2hhcmUgaW5mb3JtYXRpb24gd2l0aCBlYWNoIG90aGVyLiBKb2luIHRoZSBFcXVpbnV4Z2xvYmFsYXNzZXQgRmFtaWx5IENoYXQgdG8gZW5qb3kgb25lIG9mIHRoZSBiZXN0IGNyeXB0byBjb21tdW5pdGllcyBvbiB0aGUgcGxhbmV0LjwvcD4KPHA+Jm5ic3A7PC9wPjwvZGl2PgoJCQkJCTwvZGl2PgoJCQkJPC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9ibHVyYiBldF9wYl9ibHVyYl84ICBldF9wYl90ZXh0X2FsaWduX2xlZnQgIGV0X3BiX2JsdXJiX3Bvc2l0aW9uX2xlZnQgZXRfcGJfYmdfbGF5b3V0X2xpZ2h0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYmx1cmJfY29udGVudCI+CgkJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbWFpbl9ibHVyYl9pbWFnZSI+PHNwYW4gY2xhc3M9ImV0X3BiX2ltYWdlX3dyYXAiPjxzcGFuIGNsYXNzPSJldC13YXlwb2ludCBldF9wYl9hbmltYXRpb25fdG9wIGV0X3BiX2FuaW1hdGlvbl90b3BfdGFibGV0IGV0X3BiX2FuaW1hdGlvbl90b3BfcGhvbmUgZXQtcGItaWNvbiI+7oGSPC9zcGFuPjwvc3Bhbj48L2Rpdj4KCQkJCQk8ZGl2IGNsYXNzPSJldF9wYl9ibHVyYl9jb250YWluZXIiPgoJCQkJCQk8aDQgY2xhc3M9ImV0X3BiX21vZHVsZV9oZWFkZXIiPjxzcGFuPk1hcmtldCBBbmFseXNpczwvc3Bhbj48L2g0PgoJCQkJCQk8ZGl2IGNsYXNzPSJldF9wYl9ibHVyYl9kZXNjcmlwdGlvbiI+PHA+PHNwYW4+T3VyIEVxdWludXhnbG9iYWxhc3NldCBUZWFtIGFyZSBwcm9mZXNzaW9uYWxzIHdpdGggbWFueSB5ZWFycyBvZiBleHBlcmllbmNlIGFuZCB0aGV5IGtlZXAgYW4gZXllIG9uIHRoZSBtYXJrZXQgZXZlcnkgZGF5IGZvciB5b3UuIFdlIHJlc2VhcmNoIHRoZSBuZXdzIGFuZCB0aGUgY29pbnMgZm9yIHlvdSwgdGhlbiB1cGRhdGUgeW91IHdpdGggdGhlIGJyaWVmIG9mIHRoZSBpbXBvcnRhbnQgYW5kIHJlbGV2YW50IG5ld3MsIGNoYXJ0cyBhbmQgZ3JhcGhzLjwvc3Bhbj48L3A+PC9kaXY+CgkJCQkJPC9kaXY+CgkJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PgoJCQkKCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQkKCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVyIGV0LW5vLXRyYW5zaXRpb24iPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9zZWN0aW9uIGV0X3BiX3NlY3Rpb25fMyBldF9zZWN0aW9uX3JlZ3VsYXIiID4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfNiI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fMTEgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF82ICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfbGlnaHQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8YnI+PGJyPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8Y2VudGVyPiA8aDIgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGl0bGUiIHN0eWxlPSJjb2xvcjogIzAwMDsiPiBJTlZFU1RNRU5UIFBMQU5TPC9oMj4gPC9jZW50ZXI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfMTAiPgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl80XzQgZXRfcGJfY29sdW1uXzE4ICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2ggZXQtbGFzdC1jaGlsZCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3dpdGhfYm9yZGVyIGV0X3BiX21vZHVsZSBldF9wYl9wcmljaW5nX3RhYmxlc18wIGV0X2FuaW1hdGVkIGV0X2hvdmVyX2VuYWJsZWQgZXRfcGJfcHJpY2luZyBjbGVhcmZpeCBldF9wYl9wcmljaW5nXzMgZXRfcGJfc2Vjb25kX2ZlYXR1cmVkIGV0X3BiX3ByaWNpbmdfbm9fYnVsbGV0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ190YWJsZV93cmFwIj4KCQkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX3RhYmxlIGV0X3BiX3ByaWNpbmdfdGFibGVfMCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfaGVhZGluZyI+CgkJCQkgICAgPGEgaHJlZj0iLz9hPXNpZ251cCIgY2xhc3M9ImludmVzdC1saW5rIj4gPGRpdiBjbGFzcz0iaW52ZXN0LWltYWdlIj48aW1nIHNyYz0iLi4vaW1hZ2VzL3BsYW4xLmpwZyIgd2lkdGg9IjIxMCIgaGVpZ2h0PSIxMCI+PC9kaXY+CgkJCQkJPGgyIGNsYXNzPSJldF9wYl9wcmljaW5nX3RpdGxlIj4gQkVHSU5ORVJTIEdVSURFPC9oMj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfYmVzdF92YWx1ZSI+PC9zcGFuPgoJCQkJCTwvYT4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50X3RvcCI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2V0X3ByaWNlIj48c3BhbiBjbGFzcz0iZXRfcGJfc3VtIj5EYWlseSBSZXR1cm5zOiA0JTwvc3Bhbj48L3NwYW4+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudF90b3AiPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9ldF9wcmljZSI+PHNwYW4gY2xhc3M9ImV0X3BiX3N1bSI+Q29udHJhY3QgUGVyaW9kOiAyIGRheXM8L3NwYW4+PC9zcGFuPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2NvbnRlbnQiPgoJCQkJCTx1bCBjbGFzcz0iZXRfcGJfcHJpY2luZyI+PGxpPjxzcGFuPjxzdHJvbmc+PC9zdHJvbmc+IE1JTklNVU0gJiM4MjExOyA8c3Ryb25nPiQyMDAgPC9zdHJvbmc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuPjxzdHJvbmc+PC9zdHJvbmc+IE1BWElNVU0gJiM4MjExOyA8c3Ryb25nPiQ0LDk5OTwvc3Ryb25nPjwvc3Bhbj48L2xpPjwvdWw+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2J1dHRvbl93cmFwcGVyIj48YSBjbGFzcz0iZXRfcGJfYnV0dG9uIGV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uIiBocmVmPSI/YT1zaWdudXAiIHRhcmdldD0iX2JsYW5rIj5HZXQgU3RhcnRlZDwvYT48L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ190YWJsZSBldF9wYl9wcmljaW5nX3RhYmxlXzEgZXRfcGJfZmVhdHVyZWRfdGFibGUiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2hlYWRpbmciPgoJCQkJICAgIDxhIGhyZWY9Ii8/YT1zaWdudXAiIGNsYXNzPSJpbnZlc3QtbGluayI+IDxkaXYgY2xhc3M9ImludmVzdC1pbWFnZSI+PGltZyBzcmM9Ii4uL2ltYWdlcy9wbGFuMi5qcGciIHdpZHRoPSIyMTAiIGhlaWdodD0iNTAiPjwvZGl2PgoJCQkJCTxoMiBjbGFzcz0iZXRfcGJfcHJpY2luZ190aXRsZSI+RVhQRVJUIE1JTk5FUlMgPC9oMj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfYmVzdF92YWx1ZSI+IDwvc3Bhbj4KCQkJCQk8L2E+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudF90b3AiPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9ldF9wcmljZSI+PHNwYW4gY2xhc3M9ImV0X3BiX3N1bSI+RGFpbHkgUmV0dXJuczogNiU8L3NwYW4+PC9zcGFuPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2NvbnRlbnRfdG9wIj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfZXRfcHJpY2UiPjxzcGFuIGNsYXNzPSJldF9wYl9zdW0iPkNvbnRyYWN0IFBlcmlvZDogNCBkYXlzPC9zcGFuPjwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50Ij4KCQkJCQk8dWwgY2xhc3M9ImV0X3BiX3ByaWNpbmciPjxsaT48c3Bhbj48c3Ryb25nPjwvc3Ryb25nPiBNSU5JTVVNICYjODIxMTsgPHN0cm9uZz4kNSwwMDAgPC9zdHJvbmc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuPjxzdHJvbmc+PC9zdHJvbmc+IE1BWElNVU0gJiM4MjExOyA8c3Ryb25nPiQxNCw5OTk8L3N0cm9uZz48L3NwYW4+PC9saT48L3VsPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fd3JhcHBlciI+PGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbiIgaHJlZj0iP2E9c2lnbnVwIiB0YXJnZXQ9Il9ibGFuayI+R2V0IFN0YXJ0ZWQ8L2E+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGFibGUgZXRfcGJfcHJpY2luZ190YWJsZV8yIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19oZWFkaW5nIj4KCQkJCSAgICA8YSBocmVmPSIvP2E9c2lnbnVwIiBjbGFzcz0iaW52ZXN0LWxpbmsiPiA8ZGl2IGNsYXNzPSJpbnZlc3QtaW1hZ2UiPjxpbWcgc3JjPSIuLi9pbWFnZXMvcGxhbjMuanBnIiB3aWR0aD0iMjEwIiBoZWlnaHQ9IjIwIj48L2Rpdj4KCQkJCQk8aDIgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGl0bGUiPiBFUVVJTlVYIEFTU0VUUzwvaDI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2Jlc3RfdmFsdWUiPjwvc3Bhbj4KCQkJCQk8L2E+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudF90b3AiPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9ldF9wcmljZSI+PHNwYW4gY2xhc3M9ImV0X3BiX3N1bSI+RGFpbHkgUmV0dXJuczogOCU8L3NwYW4+PC9zcGFuPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2NvbnRlbnRfdG9wIj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfZXRfcHJpY2UiPjxzcGFuIGNsYXNzPSJldF9wYl9zdW0iPkNvbnRyYWN0IFBlcmlvZDogNiBkYXlzPC9zcGFuPjwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50Ij4KCQkJCQk8dWwgY2xhc3M9ImV0X3BiX3ByaWNpbmciPjxsaT48c3Bhbj48c3Ryb25nPjwvc3Ryb25nPiBNSU5JTVVNICYjODIxMTsgPHN0cm9uZz4kMTUsMDAwIDwvc3Ryb25nPjwvc3Bhbj48L2xpPjxsaT48c3Bhbj48c3Ryb25nPjwvc3Ryb25nPiBNQVhJTVVNICYjODIxMTsgPHN0cm9uZz4kNDksOTk5PC9zdHJvbmc+PC9zcGFuPjwvbGk+PC91bD4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX3dyYXBwZXIiPjxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfcHJpY2luZ190YWJsZV9idXR0b24iIGhyZWY9Ij9hPXNpZ251cCIgdGFyZ2V0PSJfYmxhbmsiPkdldCBTdGFydGVkPC9hPjwvZGl2PgoJCQk8L2Rpdj4KCQkJCgkJCQoJCQkKCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ190YWJsZSBldF9wYl9wcmljaW5nX3RhYmxlXzIiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2hlYWRpbmciPgoJCQkJICAgIDxhIGhyZWY9Ii8/YT1zaWdudXAiIGNsYXNzPSJpbnZlc3QtbGluayI+IDxkaXYgY2xhc3M9ImludmVzdC1pbWFnZSI+PGltZyBzcmM9Ii4uL2ltYWdlcy9wbGFuNC5qcGciIHdpZHRoPSIyMTAiIGhlaWdodD0iMjAiPjwvZGl2PgoJCQkJCTxoMiBjbGFzcz0iZXRfcGJfcHJpY2luZ190aXRsZSI+IEVRVUlOVVggQ09NUExFWDwvaDI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2Jlc3RfdmFsdWUiPjwvc3Bhbj4KCQkJCQk8L2E+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudF90b3AiPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9ldF9wcmljZSI+PHNwYW4gY2xhc3M9ImV0X3BiX3N1bSI+RGFpbHkgUmV0dXJuczogOSU8L3NwYW4+PC9zcGFuPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2NvbnRlbnRfdG9wIj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfZXRfcHJpY2UiPjxzcGFuIGNsYXNzPSJldF9wYl9zdW0iPkNvbnRyYWN0IFBlcmlvZDogMTAgZGF5czwvc3Bhbj48L3NwYW4+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudCI+CgkJCQkJPHVsIGNsYXNzPSJldF9wYl9wcmljaW5nIj48bGk+PHNwYW4+PHN0cm9uZz48L3N0cm9uZz4gTUlOSU1VTSAmIzgyMTE7IDxzdHJvbmc+JDUwLDAwMCA8L3N0cm9uZz48L3NwYW4+PC9saT48bGk+PHNwYW4+PHN0cm9uZz48L3N0cm9uZz4gTUFYSU1VTSAmIzgyMTE7IDxzdHJvbmc+JDE0OSw5OTk8L3N0cm9uZz48L3NwYW4+PC9saT48L3VsPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fd3JhcHBlciI+PGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbiIgaHJlZj0iP2E9c2lnbnVwIiB0YXJnZXQ9Il9ibGFuayI+R2V0IFN0YXJ0ZWQ8L2E+PC9kaXY+CgkJCTwvZGl2PgoJCQkKCQkJCgkJCQoJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX3RhYmxlIGV0X3BiX3ByaWNpbmdfdGFibGVfMiI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfaGVhZGluZyI+CgkJCQkgICAgPGEgaHJlZj0iLz9hPXNpZ251cCIgY2xhc3M9ImludmVzdC1saW5rIj4gPGRpdiBjbGFzcz0iaW52ZXN0LWltYWdlIj48aW1nIHNyYz0iLi4vaW1hZ2VzL3BsYW41LmpwZyIgd2lkdGg9IjIxMCIgaGVpZ2h0PSIyMCI+PC9kaXY+CgkJCQkJPGgyIGNsYXNzPSJldF9wYl9wcmljaW5nX3RpdGxlIj4gRVFVSU5VWCBQUk8tWDwvaDI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2Jlc3RfdmFsdWUiPiA8L3NwYW4+CgkJCQkJPC9hPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2NvbnRlbnRfdG9wIj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfZXRfcHJpY2UiPjxzcGFuIGNsYXNzPSJldF9wYl9zdW0iPkRhaWx5IFJldHVybnM6IDE1JTwvc3Bhbj48L3NwYW4+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudF90b3AiPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9ldF9wcmljZSI+PHNwYW4gY2xhc3M9ImV0X3BiX3N1bSI+Q29udHJhY3QgUGVyaW9kOiAxNCBkYXlzPC9zcGFuPjwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50Ij4KCQkJCQk8dWwgY2xhc3M9ImV0X3BiX3ByaWNpbmciPjxsaT48c3Bhbj48c3Ryb25nPjwvc3Ryb25nPiBNSU5JTVVNICYjODIxMTsgPHN0cm9uZz4kMTUwLDAwMCA8L3N0cm9uZz48L3NwYW4+PC9saT48bGk+PHNwYW4+PHN0cm9uZz48L3N0cm9uZz4gTUFYSU1VTSAmIzgyMTE7IDxzdHJvbmc+JFVubGltaXRlZDwvc3Ryb25nPjwvc3Bhbj48L2xpPjwvdWw+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2J1dHRvbl93cmFwcGVyIj48YSBjbGFzcz0iZXRfcGJfYnV0dG9uIGV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uIiBocmVmPSI/YT1zaWdudXAiIHRhcmdldD0iX2JsYW5rIj5HZXQgU3RhcnRlZDwvYT48L2Rpdj4KCQkJPC9kaXY+CgkJCQoJCQkKCQkJCgkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGFibGUgZXRfcGJfcHJpY2luZ190YWJsZV8yIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19oZWFkaW5nIj4KCQkJCSAgICA8YSBocmVmPSIvP2E9c2lnbnVwIiBjbGFzcz0iaW52ZXN0LWxpbmsiPiA8ZGl2IGNsYXNzPSJpbnZlc3QtaW1hZ2UiPjxpbWcgc3JjPSIuLi9pbWFnZXMvcGxhbjYuanBnIiB3aWR0aD0iMjEwIiBoZWlnaHQ9IjIwIj48L2Rpdj4KCQkJCQk8aDIgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGl0bGUiPjxzcGFuIHN0eWxlPSJjb2xvcjogIzAwY2NmZjsiPiBTUEVDSUFMIERBSUxZIFBMQU48L3NwYW4+PC9oMj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfYmVzdF92YWx1ZSI+PC9zcGFuPgoJCQkJCTwvYT4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50X3RvcCI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2V0X3ByaWNlIj48c3BhbiBjbGFzcz0iZXRfcGJfc3VtIj48c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij5EYWlseSBSZXR1cm5zOiAzMCU8L3NwYW4+PC9zcGFuPjwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50X3RvcCI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2V0X3ByaWNlIj48c3BhbiBjbGFzcz0iZXRfcGJfc3VtIj48c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij5Db250cmFjdCBQZXJpb2Q6IDI0IGhvdXJzPC9zcGFuPjwvc3Bhbj48L3NwYW4+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudCI+CgkJCQkJPHVsIGNsYXNzPSJldF9wYl9wcmljaW5nIj48bGk+PHNwYW4+PHN0cm9uZz48L3N0cm9uZz48c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij4gTUlOSU1VTSAmIzgyMTE7IDxzdHJvbmc+JDcsMDAwIDwvc3Ryb25nPjwvc3Bhbj48L3NwYW4+PC9saT48bGk+PHNwYW4+PHN0cm9uZz48L3N0cm9uZz48c3BhbiBzdHlsZT0iY29sb3I6ICMwMGNjZmY7Ij4gTUFYSU1VTSAmIzgyMTE7IDxzdHJvbmc+JDEyLDAwMDwvc3Bhbj48L3N0cm9uZz48L3NwYW4+PC9saT48L3VsPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fd3JhcHBlciI+PGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbiIgaHJlZj0iP2E9c2lnbnVwIiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gc3R5bGU9ImNvbG9yOiAjMDBjY2ZmOyI+R2V0IFN0YXJ0ZWQ8L3NwYW4+PC9hPjwvZGl2PgoJCQk8L2Rpdj4KCQkJCgkJCQoJCTwhLS0JPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ190YWJsZSBldF9wYl9wcmljaW5nX3RhYmxlXzIiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2hlYWRpbmciPgoJCQkJCTxoMiBjbGFzcz0iZXRfcGJfcHJpY2luZ190aXRsZSI+SE9VUkxZIFBMQU48L2gyPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9iZXN0X3ZhbHVlIj48L3NwYW4+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudF90b3AiPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9ldF9wcmljZSI+PHNwYW4gY2xhc3M9ImV0X3BiX3N1bSI+MjUlIEFmdGVyIDEyIEhvdXJzPC9zcGFuPjwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50Ij4KCQkJCQk8dWwgY2xhc3M9ImV0X3BiX3ByaWNpbmciPjxsaT48c3Bhbj48c3Ryb25nPjwvc3Ryb25nPiBNSU5JTVVNICYjODIxMTsgPHN0cm9uZz4kNCwwMDAgPC9zdHJvbmc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuPjxzdHJvbmc+PC9zdHJvbmc+IE1BWElNVU0gJiM4MjExOyA8c3Ryb25nPiQxMiwwMDA8L3N0cm9uZz48L3NwYW4+PC9saT48L3VsPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2NvbnRlbnQiPgoJCQkJCTx1bCBjbGFzcz0iZXRfcGJfcHJpY2luZyI+PGxpPjxzcGFuPjxzdHJvbmc+PC9zdHJvbmc+PHN0cm9uZz48L3N0cm9uZz48L3NwYW4+PC9saT48bGk+PHNwYW4+PHN0cm9uZz48L3N0cm9uZz4geDIgJiM4MjExOyA8c3Ryb25nPlR3aWNlIE1vbnRobHk8L3N0cm9uZz48L3NwYW4+PC9saT48L3VsPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fd3JhcHBlciI+PGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbiIgaHJlZj0iP2E9c2lnbnVwIiB0YXJnZXQ9Il9ibGFuayI+R2V0IFN0YXJ0ZWQ8L2E+PC9kaXY+CgkJCTwvZGl2PiAtLT4KCQkJCgkJCQoJCQkKCQkJCgkJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJPCEtLQkJPGRpdiBjbGFzcz0iZXRfcGJfdGV4dF9pbm5lciI+PGgyPlBhcmFkaXNlVklQIFJlc3VsdHM8L2gyPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfZGl2aWRlciBldF9wYl9kaXZpZGVyXzIgZXRfcGJfZGl2aWRlcl9wb3NpdGlvbl8gZXRfcGJfc3BhY2UiPjxkaXYgY2xhc3M9ImV0X3BiX2RpdmlkZXJfaW50ZXJuYWwiPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90ZXh0IGV0X3BiX3RleHRfNyAgZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXIgZXRfcGJfYmdfbGF5b3V0X2RhcmsiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl90ZXh0X2lubmVyIj48cD5UYWtlIGEgbG9vayBhdCBvdXIgbGFzdCByZXBvcnRzLjwvcD48L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfNyBldF9wYl9ndXR0ZXJzMiI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfNCBldF9wYl9jb2x1bW5fMTIgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9jdGFfMCBldF9wYl9wcm9tbyAgZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXIgZXRfcGJfYmdfbGF5b3V0X2RhcmsiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcm9tb19kZXNjcmlwdGlvbiI+PGgyIGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj5CaW5hbmNlIFJlcG9ydCBNYXkgLSBKdWx5IDIwMjI8L2gyPjwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX3dyYXBwZXIiPjxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfcHJvbW9fYnV0dG9uIiBocmVmPSIvd3AtY29udGVudC91cGxvYWRzLzIwMjIvMDgvUGFyYWRpc2VGYW1pbHlWSVAtQmluYW5jZS1NYXktSnVuZS1KdWx5LTIwMjIucGRmIiB0YXJnZXQ9Il9ibGFuayI+VmlldyBSZXBvcnQ8L2E+PC9kaXY+CgkJCTwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfNCBldF9wYl9jb2x1bW5fMTMgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9jdGFfMSBldF9wYl9wcm9tbyAgZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXIgZXRfcGJfYmdfbGF5b3V0X2RhcmsiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcm9tb19kZXNjcmlwdGlvbiI+PGgyIGNsYXNzPSJldF9wYl9tb2R1bGVfaGVhZGVyIj5CdGMgJiBFdGggUmVwb3J0IE1heSAtIEp1bHkgMjAyMjwvaDI+PC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fd3JhcHBlciI+PGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9wcm9tb19idXR0b24iIGhyZWY9Ii93cC1jb250ZW50L3VwbG9hZHMvMjAyMi8wOC9QYXJhZGlzZUZhbWlseVZJUC1CVEMtRVRILU1heS1KdW5lLUp1bHktMjAyMi5wZGYiIHRhcmdldD0iX2JsYW5rIj5WaWV3IFJlcG9ydDwvYT48L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX2NvbHVtbiBldF9wYl9jb2x1bW5fMV80IGV0X3BiX2NvbHVtbl8xNCAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX2N0YV8yIGV0X3BiX3Byb21vICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfZGFyayI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3Byb21vX2Rlc2NyaXB0aW9uIj48aDIgY2xhc3M9ImV0X3BiX21vZHVsZV9oZWFkZXIiPkJ5Yml0IFJlcG9ydCBNYXkgLSBKdWx5IDIwMjI8L2gyPjwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX3dyYXBwZXIiPjxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfcHJvbW9fYnV0dG9uIiBocmVmPSIvd3AtY29udGVudC91cGxvYWRzLzIwMjIvMDgvUGFyYWRpc2VGYW1pbHlWSVAtQnliaXQtTWF5LUp1bmUtSnVseS0yMDIyLTEucGRmIiB0YXJnZXQ9Il9ibGFuayI+VmlldyBSZXBvcnQ8L2E+PC9kaXY+CgkJCTwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfNCBldF9wYl9jb2x1bW5fMTUgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX2N0YV8zIGV0X3BiX3Byb21vICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfZGFyayI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3Byb21vX2Rlc2NyaXB0aW9uIj48aDIgY2xhc3M9ImV0X3BiX21vZHVsZV9oZWFkZXIiPkt1Y29pbiBSZXBvcnQgSnVuIC0gSnVseSAyMDIyPC9oMj48L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2J1dHRvbl93cmFwcGVyIj48YSBjbGFzcz0iZXRfcGJfYnV0dG9uIGV0X3BiX3Byb21vX2J1dHRvbiIgaHJlZj0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIyLzA4L1BhcmFkaXNlRmFtaWx5VklQLUt1Y29pbi1KdW5lLUp1bHktMjAyMi5wZGYiIHRhcmdldD0iX2JsYW5rIj5WaWV3IFJlcG9ydDwvYT48L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfOCI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fMTYgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyIGV0X3BiX2J1dHRvbl8zX3dyYXBwZXIgZXRfcGJfYnV0dG9uX2FsaWdubWVudF9jZW50ZXIgZXRfcGJfbW9kdWxlICI+CgkJCQk8YSBjbGFzcz0iZXRfcGJfYnV0dG9uIGV0X3BiX2J1dHRvbl8zIGV0X3BiX2JnX2xheW91dF9kYXJrIiBocmVmPSIjbWVtYmVyc2hpcC1ub3ciPkdldCBTdGFydGVkPC9hPgoJCQk8L2Rpdj4gLS0+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJPC9kaXY+PGRpdiBpZD0ibWVtYmVyc2hpcC1ub3ciIGNsYXNzPSJldF9wYl9zZWN0aW9uIGV0X3BiX3NlY3Rpb25fNCBldF9wYl93aXRoX2JhY2tncm91bmQgZXRfc2VjdGlvbl9yZWd1bGFyIHNlY3Rpb25faGFzX2RpdmlkZXIgZXRfcGJfYm90dG9tX2RpdmlkZXIiID4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfOSI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fMTcgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF84ICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfbGlnaHQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl90ZXh0X2lubmVyIj48ZGl2IGNsYXNzPSJlbGVtZW50b3ItZWxlbWVudCBlbGVtZW50b3ItZWxlbWVudC1kNWU1MGI0IGVsZW1lbnRvci13aWRnZXQgZWxlbWVudG9yLXdpZGdldC1oZWFkaW5nIiBkYXRhLWlkPSJkNWU1MGI0IiBkYXRhLWVsZW1lbnRfdHlwZT0id2lkZ2V0IiBkYXRhLXdpZGdldF90eXBlPSJoZWFkaW5nLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxoMiBjbGFzcz0iZWxlbWVudG9yLWhlYWRpbmctdGl0bGUgZWxlbWVudG9yLXNpemUtZGVmYXVsdCI+RXhlY3V0aXZlIEludmVzdG9yIE1lbWJlcnNoaXAgUGxhbnM8L2gyPgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LWJkNTM5MDcgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LXNwYWNlciIgZGF0YS1pZD0iYmQ1MzkwNyIgZGF0YS1lbGVtZW50X3R5cGU9IndpZGdldCIgZGF0YS13aWRnZXRfdHlwZT0ic3BhY2VyLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1zcGFjZXIiPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9kaXZpZGVyIGV0X3BiX2RpdmlkZXJfMyBldF9wYl9kaXZpZGVyX3Bvc2l0aW9uXyBldF9wYl9zcGFjZSI+PGRpdiBjbGFzcz0iZXRfcGJfZGl2aWRlcl9pbnRlcm5hbCI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF85ICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfZGFyayI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPkV4ZWN1dGl2ZSBpbnZlc3RvcnMgZ2V0IGFsbCB0cmFkaW5nIHByb21vdGlvbmFsIGJvbnVzLiBUaGVzZSBwcm9tbyBib251c2VzIG1pcnJvciB0aGUgdHJhZGVzIG91ciBwcm9zIGFyZSBtYWtpbmcgd2l0aCBkZXRhaWxzIGFib3V0IHdoaWNoIGN1cnJlbnQgcHJvbW8gdG8gaW52ZXN0LCB3aGVyZSB0aGUgaWRlYWwgZW50cmllcyBzaG91bGQgYmUsIGFuZCB3aGVyZSB0aGUgdGFyZ2V0cyBhcmUgdG8gZXhpdCB3aXRoIGdyZWF0IHByb2ZpdHMuIEV4ZWN1dGl2ZSBJbnZlc3RvcnMgZ2V0IEVWRU4gTU9SRSB3aXRoIGluc2lkZSBpbmZvcm1hdGlvbnMgYWJvdXQgZGFpbHkgcmVhbCBlc3RhdGUgcHJvamVjdHMsIG9pbC9nYXMgYW5kIGdvbGQgbWlubmluZyBhbmFseXNpcywgYWxzbyBhY2Nlc3MgdG8gcGVyc29uYWwgY29hY2hpbmcgb24gdGhlaXIgdHJhZGVzIGFyb3VuZCB0aGUgY2xvY2suIEpvaW4gb3VyIEVYRUNVVElWRSBJTlZFU1RPUlMgdG9kYXkgdG8gYWNjZXNzIGFsbCBvZiB0aGlzLCBQTFVTIHRoZSBleGNsdXNpdmUgY2hhdHJvb20gZm9yIEVxdWludXhnbG9iYWxhc3NldCBFeGVjdXRpdmUgRmFtaWx5IE1lbWJlcnMuPC9kaXY+CgkJCTwvZGl2PgoJCQk8L2Rpdj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQk8L2Rpdj4KCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVyIGV0LW5vLXRyYW5zaXRpb24iPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGlkPSJKb2luLWZyZWUtY2hhbm5lbCIgY2xhc3M9ImV0X3BiX3NlY3Rpb24gZXRfcGJfc2VjdGlvbl81IGV0X3NlY3Rpb25fcmVndWxhciIgPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcm93IGV0X3BiX3Jvd18xMSI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fMTkgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF8xMCAgZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXIgZXRfcGJfYmdfbGF5b3V0X2xpZ2h0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdGV4dF9pbm5lciI+PGRpdiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtZDVlNTBiNCBlbGVtZW50b3Itd2lkZ2V0IGVsZW1lbnRvci13aWRnZXQtaGVhZGluZyIgZGF0YS1pZD0iZDVlNTBiNCIgZGF0YS1lbGVtZW50X3R5cGU9IndpZGdldCIgZGF0YS13aWRnZXRfdHlwZT0iaGVhZGluZy5kZWZhdWx0Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXdpZGdldC1jb250YWluZXIiPgo8aDIgY2xhc3M9ImVsZW1lbnRvci1oZWFkaW5nLXRpdGxlIGVsZW1lbnRvci1zaXplLWRlZmF1bHQiPkpvaW4gT3VyIEZyZWUgVGVsZWdyYW0gR3JvdXBzPC9oMj4KPC9kaXY+CjwvZGl2PjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfZGl2aWRlciBldF9wYl9kaXZpZGVyXzQgZXRfcGJfZGl2aWRlcl9wb3NpdGlvbl8gZXRfcGJfc3BhY2UiPjxkaXYgY2xhc3M9ImV0X3BiX2RpdmlkZXJfaW50ZXJuYWwiPjwvZGl2PjwvZGl2PgoJCQk8L2Rpdj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQk8L2Rpdj4KCQkJCgkJCQoJCQkKCQkJPGJyPjxicj4KCQkJCgkJCQoJCQkKCQkJPCEtLQkJPGNlbnRlcj4gPGgyIGNsYXNzPSJldF9wYl9wcmljaW5nX3RpdGxlIiBzdHlsZT0iY29sb3I6ICMwMDA7Ij4gT1VSIFNJR05BTCBQTEFOUzwvaDI+IDwvY2VudGVyPgoJCQkJCgkJCQk8YnI+PGJyPgoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfMTAiPgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl80XzQgZXRfcGJfY29sdW1uXzE4ICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2ggZXQtbGFzdC1jaGlsZCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3dpdGhfYm9yZGVyIGV0X3BiX21vZHVsZSBldF9wYl9wcmljaW5nX3RhYmxlc18wIGV0X2FuaW1hdGVkIGV0X2hvdmVyX2VuYWJsZWQgZXRfcGJfcHJpY2luZyBjbGVhcmZpeCBldF9wYl9wcmljaW5nXzMgZXRfcGJfc2Vjb25kX2ZlYXR1cmVkIGV0X3BiX3ByaWNpbmdfbm9fYnVsbGV0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ190YWJsZV93cmFwIj4KCQkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX3RhYmxlIGV0X3BiX3ByaWNpbmdfdGFibGVfMCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfaGVhZGluZyI+CgkJCQkJPGgyIGNsYXNzPSJldF9wYl9wcmljaW5nX3RpdGxlIj4gS1VDT0lOIFZJUCAoIFVTQSBGUklFTkRMWSk8L2gyPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9iZXN0X3ZhbHVlIj5EYWlseSBTaWduYWxzICggRGF5IFRyYWRpbmcgKTwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50X3RvcCI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2V0X3ByaWNlIj48c3BhbiBjbGFzcz0iZXRfcGJfc3VtIj4xIG1vbnRoIC0gJDk5OS4wMDwvc3Bhbj48L3NwYW4+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudCI+CgkJCQkJPHVsIGNsYXNzPSJldF9wYl9wcmljaW5nIj48bGk+PHNwYW4+PHN0cm9uZz42PC9zdHJvbmc+IG1vbnRocyAmIzgyMTE7IDxzdHJvbmc+JDMsNjkwLjAwIDwvc3Ryb25nPjwvc3Bhbj48L2xpPjxsaT48c3Bhbj48c3Ryb25nPjEyPC9zdHJvbmc+IG1vbnRocyAmIzgyMTE7IDxzdHJvbmc+JDUsMzY5LjAwPC9zdHJvbmc+PC9zcGFuPjwvbGk+PC91bD4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX3dyYXBwZXIiPjxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfcHJpY2luZ190YWJsZV9idXR0b24iIGhyZWY9Ij9hPXNpZ251cCIgdGFyZ2V0PSJfYmxhbmsiPkdldCBTdGFydGVkPC9hPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX3RhYmxlIGV0X3BiX3ByaWNpbmdfdGFibGVfMSBldF9wYl9mZWF0dXJlZF90YWJsZSI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfaGVhZGluZyI+CgkJCQkJPGgyIGNsYXNzPSJldF9wYl9wcmljaW5nX3RpdGxlIj5CaW5hbmNlIFZJUCA8L2gyPgoJCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9iZXN0X3ZhbHVlIj5EYWlseSBTaWduYWxzICggU3dpbmcgdHJhZGluZyApPC9zcGFuPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9wcmljaW5nX2NvbnRlbnRfdG9wIj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfZXRfcHJpY2UiPjxzcGFuIGNsYXNzPSJldF9wYl9zdW0iPjEgbW9udGggLSAkOTk5LjAwPC9zcGFuPjwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50Ij4KCQkJCQk8dWwgY2xhc3M9ImV0X3BiX3ByaWNpbmciPjxsaT48c3Bhbj48c3Ryb25nPjY8L3N0cm9uZz4gbW9udGhzICYjODIxMTsgPHN0cm9uZz4kMyw2OTAuMDAgPC9zdHJvbmc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuPjxzdHJvbmc+MTI8L3N0cm9uZz4gbW9udGhzICYjODIxMTsgPHN0cm9uZz4kNSwzNjkuMDA8L3N0cm9uZz48L3NwYW4+PC9saT48L3VsPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fd3JhcHBlciI+PGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbiIgaHJlZj0iP2E9c2lnbnVwIiB0YXJnZXQ9Il9ibGFuayI+R2V0IFN0YXJ0ZWQ8L2E+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGFibGUgZXRfcGJfcHJpY2luZ190YWJsZV8yIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19oZWFkaW5nIj4KCQkJCQk8aDIgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGl0bGUiPkJUQyAmYW1wOyBFVEggVklQPC9oMj4KCQkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfYmVzdF92YWx1ZSI+RGFpbHkgU2lnbmFsczwvc3Bhbj4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcHJpY2luZ19jb250ZW50X3RvcCI+CgkJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2V0X3ByaWNlIj48c3BhbiBjbGFzcz0iZXRfcGJfc3VtIj4xIG1vbnRoIC0gJDk5OS4wMDwvc3Bhbj48L3NwYW4+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3ByaWNpbmdfY29udGVudCI+CgkJCQkJPHVsIGNsYXNzPSJldF9wYl9wcmljaW5nIj48bGk+PHNwYW4+PHN0cm9uZz42PC9zdHJvbmc+IG1vbnRocyAmIzgyMTE7IDxzdHJvbmc+JDMsNjkwLjAwIDwvc3Ryb25nPjwvc3Bhbj48L2xpPjxsaT48c3Bhbj48c3Ryb25nPjEyPC9zdHJvbmc+IG1vbnRocyAmIzgyMTE7IDxzdHJvbmc+JDUsMzY5LjAwPC9zdHJvbmc+PC9zcGFuPjwvbGk+PC91bD4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX3dyYXBwZXIiPjxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfcHJpY2luZ190YWJsZV9idXR0b24iIGhyZWY9Ij9hPXNpZ251cCIgdGFyZ2V0PSJfYmxhbmsiPkdldCBTdGFydGVkPC9hPjwvZGl2PgoJCQk8L2Rpdj4KCQkJCgkJCQoJCQkKCQkKCQkJCgkJCQoJCQkKCQkJCgkJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PiAtLT4KCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQkJPGRpdiBjbGFzcz0iZXRfcGJfcm93IGV0X3BiX3Jvd18xMiI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfMiBldF9wYl9jb2x1bW5fMjAgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90ZXh0IGV0X3BiX3RleHRfMTEgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LWQ1ZTUwYjQgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LWhlYWRpbmciIGRhdGEtaWQ9ImQ1ZTUwYjQiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtd2lkZ2V0X3R5cGU9ImhlYWRpbmcuZGVmYXVsdCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci13aWRnZXQtY29udGFpbmVyIj4KPGgyIGNsYXNzPSJlbGVtZW50b3ItaGVhZGluZy10aXRsZSBlbGVtZW50b3Itc2l6ZS1kZWZhdWx0Ij5CaW5hbmNlIFRyYWRpbmc8L2gyPgo8L2Rpdj4KPC9kaXY+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90ZXh0IGV0X3BiX3RleHRfMTIgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9kYXJrIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdGV4dF9pbm5lciI+PGRpdiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtMWIyYWYzYiBlbGVtZW50b3Itd2lkZ2V0IGVsZW1lbnRvci13aWRnZXQtdGV4dC1lZGl0b3IiIGRhdGEtaWQ9IjFiMmFmM2IiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtd2lkZ2V0X3R5cGU9InRleHQtZWRpdG9yLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci10ZXh0LWVkaXRvciBlbGVtZW50b3ItY2xlYXJmaXgiPjxzcGFuPkEgY2hhbm5lbCBidWlsdCBieSBwcm8gdHJhZGVycywgZm9yIG5ldyB0cmFkZXJzLiBFbmpveSBmcmVlIHNpZ25hbHMsIG1hcmtldCBhbmFseXNpcywgYW5kIHJlc3VsdHMgZnJvbSBvdXIgcHJvcy4gR2V0IGEgc25lYWsgcGVlayBhdCBWSVAgbWVtYmVyc2hpcCBhbmQgbWFrZSBwcm9maXRzLjwvc3Bhbj48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItZWxlbWVudCBlbGVtZW50b3ItZWxlbWVudC00YjdkMGZhIGVsZW1lbnRvci13aWRnZXQgZWxlbWVudG9yLXdpZGdldC1qZXQtYnV0dG9uIGFuaW1hdGVkIHNsaWRlSW5MZWZ0IiBkYXRhLWlkPSI0YjdkMGZhIiBkYXRhLWVsZW1lbnRfdHlwZT0id2lkZ2V0IiBkYXRhLXNldHRpbmdzPSJ7JnF1b3Q7X2FuaW1hdGlvbiZxdW90OzomcXVvdDtzbGlkZUluTGVmdCZxdW90OywmcXVvdDtfYW5pbWF0aW9uX2RlbGF5JnF1b3Q7OjYwMH0iIGRhdGEtd2lkZ2V0X3R5cGU9ImpldC1idXR0b24uZGVmYXVsdCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci13aWRnZXQtY29udGFpbmVyIj4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLWpldC1idXR0b24gamV0LWVsZW1lbnRzIj4KPGRpdiBjbGFzcz0iamV0LWJ1dHRvbl9fY29udGFpbmVyIj48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj48L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyIGV0X3BiX2J1dHRvbl80X3dyYXBwZXIgZXRfcGJfYnV0dG9uX2FsaWdubWVudF9jZW50ZXIgZXRfcGJfbW9kdWxlICI+CgkJCQk8YSBjbGFzcz0iZXRfcGJfYnV0dG9uIGV0X3BiX2J1dHRvbl80IGV0X3BiX2JnX2xheW91dF9kYXJrIiBocmVmPSJodHRwczovL3RlbGVncmFtLm1lL0JDVF9zdXBwb3J0Ym90Ij5Kb2luIEZyZWU8L2E+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90ZXh0IGV0X3BiX3RleHRfMTMgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9kYXJrIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdGV4dF9pbm5lciI+PGRpdiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtMWIyYWYzYiBlbGVtZW50b3Itd2lkZ2V0IGVsZW1lbnRvci13aWRnZXQtdGV4dC1lZGl0b3IiIGRhdGEtaWQ9IjFiMmFmM2IiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtd2lkZ2V0X3R5cGU9InRleHQtZWRpdG9yLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci10ZXh0LWVkaXRvciBlbGVtZW50b3ItY2xlYXJmaXgiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItZWxlbWVudCBlbGVtZW50b3ItZWxlbWVudC0xYmMwNDhlIGVsZW1lbnRvci13aWRnZXQgZWxlbWVudG9yLXdpZGdldC10ZXh0LWVkaXRvciIgZGF0YS1pZD0iMWJjMDQ4ZSIgZGF0YS1lbGVtZW50X3R5cGU9IndpZGdldCIgZGF0YS13aWRnZXRfdHlwZT0idGV4dC1lZGl0b3IuZGVmYXVsdCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci13aWRnZXQtY29udGFpbmVyIj4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXRleHQtZWRpdG9yIGVsZW1lbnRvci1jbGVhcmZpeCI+PHNwYW4+Q29udGFjdCA8IS0tIDxhIGhyZWY9Imh0dHBzOi8vdGVsZWdyYW0ubWUvQkNUX3N1cHBvcnRib3QiPiAtLT4gb3VyIGxpdmUgc3VwcG9ydCB0ZWFtPC9hPiB0byBqb2luIG91ciBwYWlkIFZJUCBSb29tIFByZW1pdW0gU2lnbmFscyB3aXRoIHByZW1pdW0gY29hY2hpbmcgYW5kIHByZW1pdW0gdHJhZGUgcmVzdWx0cy4gQnVpbHQgYnkgdHJhZGVycywgZm9yIHRyYWRlcnMuPC9zcGFuPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LTZmOTVhYTAgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LWpldC1idXR0b24gYW5pbWF0ZWQgc2xpZGVJbkxlZnQiIGRhdGEtaWQ9IjZmOTVhYTAiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtc2V0dGluZ3M9InsmcXVvdDtfYW5pbWF0aW9uJnF1b3Q7OiZxdW90O3NsaWRlSW5MZWZ0JnF1b3Q7LCZxdW90O19hbmltYXRpb25fZGVsYXkmcXVvdDs6NjAwfSIgZGF0YS13aWRnZXRfdHlwZT0iamV0LWJ1dHRvbi5kZWZhdWx0Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXdpZGdldC1jb250YWluZXIiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItamV0LWJ1dHRvbiBqZXQtZWxlbWVudHMiPgo8ZGl2IGNsYXNzPSJqZXQtYnV0dG9uX19jb250YWluZXIiPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2PjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fbW9kdWxlX3dyYXBwZXIgZXRfcGJfYnV0dG9uXzVfd3JhcHBlciBldF9wYl9idXR0b25fYWxpZ25tZW50X2NlbnRlciBldF9wYl9tb2R1bGUgIj4KCQkJCTxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfYnV0dG9uXzUgZXRfcGJfYmdfbGF5b3V0X2RhcmsiIGhyZWY9Imh0dHBzOi8vdGVsZWdyYW0ubWUvQkNUX3N1cHBvcnRib3QiPkpvaW4gVklQPC9hPgoJCQk8L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzIgZXRfcGJfY29sdW1uXzIxICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2ggZXQtbGFzdC1jaGlsZCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90ZXh0IGV0X3BiX3RleHRfMTQgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LWQ1ZTUwYjQgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LWhlYWRpbmciIGRhdGEtaWQ9ImQ1ZTUwYjQiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtd2lkZ2V0X3R5cGU9ImhlYWRpbmcuZGVmYXVsdCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci13aWRnZXQtY29udGFpbmVyIj4KPHNlY3Rpb24gY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LTA5OGFlZmQgZWxlbWVudG9yLXNlY3Rpb24tYm94ZWQgZWxlbWVudG9yLXNlY3Rpb24taGVpZ2h0LWRlZmF1bHQgZWxlbWVudG9yLXNlY3Rpb24taGVpZ2h0LWRlZmF1bHQgZWxlbWVudG9yLXNlY3Rpb24gZWxlbWVudG9yLWlubmVyLXNlY3Rpb24iIGRhdGEtaWQ9IjA5OGFlZmQiIGRhdGEtZWxlbWVudF90eXBlPSJzZWN0aW9uIj4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLWNvbnRhaW5lciBlbGVtZW50b3ItY29sdW1uLWdhcC1kZWZhdWx0Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXJvdyI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LTY1MDkxNGYgZWxlbWVudG9yLWNvbHVtbiBlbGVtZW50b3ItY29sLTEwMCBlbGVtZW50b3ItaW5uZXItY29sdW1uIiBkYXRhLWlkPSI2NTA5MTRmIiBkYXRhLWVsZW1lbnRfdHlwZT0iY29sdW1uIj4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLWNvbHVtbi13cmFwICBlbGVtZW50b3ItZWxlbWVudC1wb3B1bGF0ZWQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LXdyYXAiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItZWxlbWVudCBlbGVtZW50b3ItZWxlbWVudC0xYjVjOGViIGVsZW1lbnRvci13aWRnZXQgZWxlbWVudG9yLXdpZGdldC1oZWFkaW5nIiBkYXRhLWlkPSIxYjVjOGViIiBkYXRhLWVsZW1lbnRfdHlwZT0id2lkZ2V0IiBkYXRhLXdpZGdldF90eXBlPSJoZWFkaW5nLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxoMiBjbGFzcz0iZWxlbWVudG9yLWhlYWRpbmctdGl0bGUgZWxlbWVudG9yLXNpemUtZGVmYXVsdCI+S3VDb2luIFRyYWRpbmc8L2gyPgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9zZWN0aW9uPgo8c2VjdGlvbiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtNGNkMmM3NSBlbGVtZW50b3Itc2VjdGlvbi1ib3hlZCBlbGVtZW50b3Itc2VjdGlvbi1oZWlnaHQtZGVmYXVsdCBlbGVtZW50b3Itc2VjdGlvbi1oZWlnaHQtZGVmYXVsdCBlbGVtZW50b3Itc2VjdGlvbiBlbGVtZW50b3ItaW5uZXItc2VjdGlvbiIgZGF0YS1pZD0iNGNkMmM3NSIgZGF0YS1lbGVtZW50X3R5cGU9InNlY3Rpb24iPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItY29udGFpbmVyIGVsZW1lbnRvci1jb2x1bW4tZ2FwLWRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itcm93Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtZDBlYWY1ZiBlbGVtZW50b3ItY29sdW1uIGVsZW1lbnRvci1jb2wtNTAgZWxlbWVudG9yLWlubmVyLWNvbHVtbiIgZGF0YS1pZD0iZDBlYWY1ZiIgZGF0YS1lbGVtZW50X3R5cGU9ImNvbHVtbiI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1jb2x1bW4td3JhcCAgZWxlbWVudG9yLWVsZW1lbnQtcG9wdWxhdGVkIj4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXdpZGdldC13cmFwIj4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtMDNmYjFmNyBlbGVtZW50b3Itd2lkZ2V0IGVsZW1lbnRvci13aWRnZXQtdGV4dC1lZGl0b3IiIGRhdGEtaWQ9IjAzZmIxZjciIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtd2lkZ2V0X3R5cGU9InRleHQtZWRpdG9yLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+Cjwvc2VjdGlvbj4KPC9kaXY+CjwvZGl2PjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdGV4dCBldF9wYl90ZXh0XzE1ICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfZGFyayI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LTAzZmIxZjcgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LXRleHQtZWRpdG9yIiBkYXRhLWlkPSIwM2ZiMWY3IiBkYXRhLWVsZW1lbnRfdHlwZT0id2lkZ2V0IiBkYXRhLXdpZGdldF90eXBlPSJ0ZXh0LWVkaXRvci5kZWZhdWx0Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXdpZGdldC1jb250YWluZXIiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItdGV4dC1lZGl0b3IgZWxlbWVudG9yLWNsZWFyZml4Ij48c3Bhbj5BIGNoYW5uZWwgYnVpbHQgYnkgcHJvIHRyYWRlcnMsIGZvciBuZXcgdHJhZGVycywgRW5qb3kgZnJlZSBzaWduYWxzLCBtYXJrZXQgYW5hbHlzaXMgYW5kIHJlc3VsdHMgZnJvbSBvdXIgcHJvcy4gR2V0IGEgc25lYWsgcGVhayBhdCBWSVAgYW5kIG1ha2UgcHJvZml0cy48L3NwYW4+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtMjBjN2M1ZiBlbGVtZW50b3Itd2lkZ2V0IGVsZW1lbnRvci13aWRnZXQtamV0LWJ1dHRvbiBhbmltYXRlZCBzbGlkZUluTGVmdCIgZGF0YS1pZD0iMjBjN2M1ZiIgZGF0YS1lbGVtZW50X3R5cGU9IndpZGdldCIgZGF0YS1zZXR0aW5ncz0ieyZxdW90O19hbmltYXRpb24mcXVvdDs6JnF1b3Q7c2xpZGVJbkxlZnQmcXVvdDssJnF1b3Q7X2FuaW1hdGlvbl9kZWxheSZxdW90Ozo2MDB9IiBkYXRhLXdpZGdldF90eXBlPSJqZXQtYnV0dG9uLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1qZXQtYnV0dG9uIGpldC1lbGVtZW50cyI+CjxkaXYgY2xhc3M9ImpldC1idXR0b25fX2NvbnRhaW5lciI+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX2J1dHRvbl9tb2R1bGVfd3JhcHBlciBldF9wYl9idXR0b25fNl93cmFwcGVyIGV0X3BiX2J1dHRvbl9hbGlnbm1lbnRfY2VudGVyIGV0X3BiX21vZHVsZSAiPgoJCQkJPGEgY2xhc3M9ImV0X3BiX2J1dHRvbiBldF9wYl9idXR0b25fNiBldF9wYl9iZ19sYXlvdXRfZGFyayIgaHJlZj0iP2E9c2lnbnVwIiB0YXJnZXQ9Il9ibGFuayI+Sm9pbiBGcmVlPC9hPgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdGV4dCBldF9wYl90ZXh0XzE2ICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfZGFyayI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LTAzZmIxZjcgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LXRleHQtZWRpdG9yIiBkYXRhLWlkPSIwM2ZiMWY3IiBkYXRhLWVsZW1lbnRfdHlwZT0id2lkZ2V0IiBkYXRhLXdpZGdldF90eXBlPSJ0ZXh0LWVkaXRvci5kZWZhdWx0Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXdpZGdldC1jb250YWluZXIiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItdGV4dC1lZGl0b3IgZWxlbWVudG9yLWNsZWFyZml4Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtNWEwYmI2MCBlbGVtZW50b3Itd2lkZ2V0IGVsZW1lbnRvci13aWRnZXQtdGV4dC1lZGl0b3IiIGRhdGEtaWQ9IjVhMGJiNjAiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtd2lkZ2V0X3R5cGU9InRleHQtZWRpdG9yLmRlZmF1bHQiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3Itd2lkZ2V0LWNvbnRhaW5lciI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci10ZXh0LWVkaXRvciBlbGVtZW50b3ItY2xlYXJmaXgiPjxzcGFuPkNvbnRhY3QgPCEtLTxhIGhyZWY9Imh0dHBzOi8vdGVsZWdyYW0ubWUvQkNUX3N1cHBvcnRib3QiPiAtLT4gb3VyIGxpdmUgc3VwcG9ydCB0ZWFtPC9hPiB0byBqb2luIG91ciBwYWlkIFZJUCBSb29tIFByZW1pdW0gU2lnbmFscyB3aXRoIHByZW1pdW0gY29hY2hpbmcgYW5kIHByZW1pdW0gdHJhZGUgcmVzdWx0cy4gQnVpbHQgYnkgdHJhZGVycywgZm9yIHRyYWRlcnMuPC9zcGFuPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LTlmYTIzNmYgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LWpldC1idXR0b24gYW5pbWF0ZWQgc2xpZGVJbkxlZnQiIGRhdGEtaWQ9IjlmYTIzNmYiIGRhdGEtZWxlbWVudF90eXBlPSJ3aWRnZXQiIGRhdGEtc2V0dGluZ3M9InsmcXVvdDtfYW5pbWF0aW9uJnF1b3Q7OiZxdW90O3NsaWRlSW5MZWZ0JnF1b3Q7LCZxdW90O19hbmltYXRpb25fZGVsYXkmcXVvdDs6NjAwfSIgZGF0YS13aWRnZXRfdHlwZT0iamV0LWJ1dHRvbi5kZWZhdWx0Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXdpZGdldC1jb250YWluZXIiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItamV0LWJ1dHRvbiBqZXQtZWxlbWVudHMiPgo8ZGl2IGNsYXNzPSJqZXQtYnV0dG9uX19jb250YWluZXIiPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2PjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fbW9kdWxlX3dyYXBwZXIgZXRfcGJfYnV0dG9uXzdfd3JhcHBlciBldF9wYl9idXR0b25fYWxpZ25tZW50X2NlbnRlciBldF9wYl9tb2R1bGUgIj4KCQkJCTxhIGNsYXNzPSJldF9wYl9idXR0b24gZXRfcGJfYnV0dG9uXzcgZXRfcGJfYmdfbGF5b3V0X2RhcmsiIGhyZWY9Ij9hPXNpZ251cCIgdGFyZ2V0PSJfYmxhbmsiPkpvaW4gVklQPC9hPgoJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJPC9kaXY+CgkJCQkKCQkJCQoJCQk8L2Rpdj4gCgoJCQoJCQoJCQkJPGJyPjxicj4KCQkJCgkJCQoJCQkKCQkJCQk8Y2VudGVyPiA8aDIgY2xhc3M9ImV0X3BiX3ByaWNpbmdfdGl0bGUiIHN0eWxlPSJjb2xvcjogIzAwMDsiPlJlY2VudCBUcmFuc2FjdGlvbnM8L2gyPiA8L2NlbnRlcj4KCQkJCQoJCQkJPGJyPgoJCQkKCQkKCQkJPGRpdiBjbGFzcz0iZXRfcGJfcm93IGV0X3BiX3Jvd181Ij4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2NvbHVtbiBldF9wYl9jb2x1bW5fMV8yIGV0X3BiX2NvbHVtbl85ICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2giPgoJCQkJCgkJCQk8ZGl2PgoJPGRpdiBjbGFzcz0id3JhcCI+CiAgICAJPGRpdiBjbGFzcz0idGFibGUiPgogICAgICAgIAkKICAgICAgICAgICAgIDxkaXYgY2xhc3M9InR1cmUiPgogICAgICAgICAgICAKICAgICAgICAgICAgCTxkaXYgY2xhc3M9InR1cmVoZWFkIj5MYXN0IDxmb250IGNvbG9yPSIjMjhjM2ZmIj5EZXBvc2l0PC9mb250PjwvZGl2PgogICAgICAgICAgICAJCiAgICAgICAgICAgIAkgPCEtLSBJbWFnZSBUYWJsZTogU3RhcnQgLS0+Cjx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIHdpZHRoPSIxMDAlIiBzdHlsZT0icGFkZGluZy10b3A6MnB4OyI+CiAgICAgICAgIAogCiA8dHI+CiA8dGQ+R29sZGVuMTI8L3RkPgogPHRkPiQxMDMzMC4wMDwvdGQ+CiA8dGQ+PGltZyBzcmM9ImltYWdlcy8xMDAwLmdpZiI+PC90ZD4KPC90cj4KPHRyPgogPHRkPkdvbGRlbjEyPC90ZD4KIDx0ZD4kMjA1OTAuMDA8L3RkPgogPHRkPjxpbWcgc3JjPSJpbWFnZXMvMTAwMC5naWYiPjwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD5TYXZ2eTEyMzwvdGQ+CiA8dGQ+JDc1MDAwLjAwPC90ZD4KIDx0ZD48aW1nIHNyYz0iaW1hZ2VzLzEwMDAuZ2lmIj48L3RkPgo8L3RyPgo8dHI+CiA8dGQ+R29sZGVuMTI8L3RkPgogPHRkPiQ3MDAwLjAwPC90ZD4KIDx0ZD48aW1nIHNyYz0iaW1hZ2VzLzEwMDAuZ2lmIj48L3RkPgo8L3RyPgo8dHI+CiA8dGQ+R29sZGVuMTI8L3RkPgogPHRkPiQ1MDAwLjAwPC90ZD4KIDx0ZD48aW1nIHNyYz0iaW1hZ2VzLzEwMDAuZ2lmIj48L3RkPgo8L3RyPgo8dHI+CiA8dGQ+SW5kaWdvMTI8L3RkPgogPHRkPiQ1MDAwMC4wMDwvdGQ+CiA8dGQ+PGltZyBzcmM9ImltYWdlcy8xMDAwLmdpZiI+PC90ZD4KPC90cj4KIAo8L3RhYmxlPgoKIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KPC9kaXY+CgkJCQkKCQkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX2NvbHVtbiBldF9wYl9jb2x1bW5fMV8yIGV0X3BiX2NvbHVtbl8xMCAgZXRfcGJfY3NzX21peF9ibGVuZF9tb2RlX3Bhc3N0aHJvdWdoIGV0LWxhc3QtY2hpbGQiPgoJCQkJCgkJCTxkaXY+Cgk8ZGl2IGNsYXNzPSJ3cmFwIj4KICAgIAk8ZGl2IGNsYXNzPSJ0YWJsZSI+CiAgICAgICAgCQogICAgICAgICAgICAgPGRpdiBjbGFzcz0idHVyZSI+CiAgICAgICAgICAgIAogICAgICAgICAgICAJPGRpdiBjbGFzcz0idHVyZWhlYWQiPkxhc3QgPGZvbnQgY29sb3I9IiMyOGMzZmYiPlBheW91dHM8L2ZvbnQ+PC9kaXY+CiAgICAgICAgICAgIAkKICAgICAgICAgICAgCSA8IS0tIEltYWdlIFRhYmxlOiBTdGFydCAtLT4KPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgd2lkdGg9IjEwMCUiIHN0eWxlPSJwYWRkaW5nLXRvcDoycHg7Ij4KICAgICAgICAgIAogCiAKCjx0cj4KIDx0ZD5Hb2xkZW4xMjwvdGQ+CiA8dGQ+JDcxNDUuMDA8L3RkPgogPHRkPjxpbWcgc3JjPSJpbWFnZXMvMTAwMC5naWYiPjwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD5DaHJpc2ludmVzdDwvdGQ+CiA8dGQ+JDE0MDAuMDA8L3RkPgogPHRkPjxpbWcgc3JjPSJpbWFnZXMvMTAwMC5naWYiPjwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD5DYXNwZXIzNTwvdGQ+CiA8dGQ+JDY3NDAuMTI8L3RkPgogPHRkPjxpbWcgc3JjPSJpbWFnZXMvMTAwMC5naWYiPjwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD5NYXNvbjA3PC90ZD4KIDx0ZD4kMTE0MjAuNzk8L3RkPgogPHRkPjxpbWcgc3JjPSJpbWFnZXMvMTAwMy5naWYiPjwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD5KZXNzZTM4MjwvdGQ+CiA8dGQ+JDQxMjAuNzI8L3RkPgogPHRkPjxpbWcgc3JjPSJpbWFnZXMvMTAwMC5naWYiPjwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD5DaHJpc3RpYW41OTwvdGQ+CiA8dGQ+JDUwMzQuODc8L3RkPgogPHRkPjxpbWcgc3JjPSJpbWFnZXMvMTAwMC5naWYiPjwvdGQ+CjwvdHI+CiAKPC90YWJsZT4KCiA8L2Rpdj4KICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2PgoJCQkJCgkJCQk8L2Rpdj4KCQkJCTwvZGl2PgkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkgPGJyPgogICAgICAgICAgICAgIAogICAgICAgICAgICAgIAk8ZGl2IGNsYXNzPSJjaG9vc2UtaGVhZCI+CiAgICAgICAgICAgICAgICAJCiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBpZD0ic3ViLXBsYW4iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2hvc2UtcGxhbiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjaG9vc2UtaGVhZCI+CiAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCTxoNT4gPGEgc3R5bGU9ImNvbG9yOiAjMDA4MDAwOyIgaHJlZj0iaW1hZ2VzL0NlcnRpZmljYXRlIG9mIGluY29ycG9yYXRpb24gRHViYWkgMi5qcGVnIiA+IDxjZW50ZXI+ICBWSUVXIENPTVBBTlkgQ0VSVElGSUNBVEUgIDwvY2VudGVyPjwvYT4gIDwvaDU+CiAgICAgICAgICAgICAgICAJPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGJyPjxicj4KICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjaG9vc2UtaGVhZCI+CiAgICAgICAgICAgICAgICAJCiAgICAgICAgICAgICAgICA8L2Rpdj4KCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQkJCgkJCTxkaXYgY2xhc3M9ImV0X3BiX3NlY3Rpb24gZXRfcGJfc2VjdGlvbl82IGV0X3BiX3NlY3Rpb25fcGFyYWxsYXggZXRfcGJfd2l0aF9iYWNrZ3JvdW5kIGV0X3NlY3Rpb25fcmVndWxhciBzZWN0aW9uX2hhc19kaXZpZGVyIGV0X3BiX2JvdHRvbV9kaXZpZGVyIGV0X3BiX3RvcF9kaXZpZGVyIiA+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl90b3BfaW5zaWRlX2RpdmlkZXIgZXQtbm8tdHJhbnNpdGlvbiI+PC9kaXY+CgkJCQk8c3BhbiBjbGFzcz0iZXRfcGFyYWxsYXhfYmdfd3JhcCI+PHNwYW4KCQkJCQkJY2xhc3M9ImV0X3BhcmFsbGF4X2JnIgoJCQkJCQlzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKC93cC1jb250ZW50L3VwbG9hZHMvMjAyMC8wNi9tYXJrZXRpbmctYmc2LnBuZyk7IgoJCQkJCT48L3NwYW4+PC9zcGFuPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9yb3cgZXRfcGJfcm93XzEzIGV0X3BiX3Jvd19mdWxsd2lkdGgiPgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl80XzQgZXRfcGJfY29sdW1uXzIyICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2ggZXQtbGFzdC1jaGlsZCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90ZXh0IGV0X3BiX3RleHRfMTcgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxoMj5GcmVxdWVudGx5IEFza2VkIFF1ZXN0aW9uczwvaDI+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9kaXZpZGVyIGV0X3BiX2RpdmlkZXJfNSBldF9wYl9kaXZpZGVyX3Bvc2l0aW9uXyBldF9wYl9zcGFjZSI+PGRpdiBjbGFzcz0iZXRfcGJfZGl2aWRlcl9pbnRlcm5hbCI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF8xOCAgZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXIgZXRfcGJfYmdfbGF5b3V0X2RhcmsiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl90ZXh0X2lubmVyIj5FeGNoYW5nZSBhY2NvdW50cyAmIzgyMTE7IE1ldGhvZHMgb2YgUGF5bWVudCDigJMgVHJhZGluZyDigJMgT3VyIFRlYW08L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX3JvdyBldF9wYl9yb3dfMTQgZXRfcGJfZ3V0dGVyczMiPgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzIgZXRfcGJfY29sdW1uXzIzICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2giPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdG9nZ2xlIGV0X3BiX3RvZ2dsZV8wIGV0X2FuaW1hdGVkIGV0X3BiX3RvZ2dsZV9pdGVtICBldF9wYl90b2dnbGVfY2xvc2UiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8aDQgY2xhc3M9ImV0X3BiX3RvZ2dsZV90aXRsZSI+V2hhdCBhcmUgQ3J5cHRvIFNpZ25hbHM/PC9oND4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RvZ2dsZV9jb250ZW50IGNsZWFyZml4Ij48cD5DcnlwdG8gc2lnbmFscywgYXMgdGhlIG5hbWUgc3VnZ2VzdHMsIGFyZSBzaWduYWxzIG9yIGlkZWFzIHRoYXQgcHJvZmVzc2lvbmFsIHRyYWRlcnMgYWNxdWlyZSB1c2luZyB0ZWNobmljYWwgYW5kIGZ1bmRhbWVudGFsIGFuYWx5c2lzIHRvIHRyYWRlIGEgY2VydGFpbiBjcnlwdG9jdXJyZW5jeS4gQ3J5cHRvIHNpZ25hbHMgYXJlIGNyZWF0ZWQgaW4gdHdvIHdheXM6IGF1dG9tYXRlZCBhbmQgbWFudWFsLiBBdXRvbWF0ZWQgc2lnbmFscyBhcmUgY3JlYXRlZCBieSBzb3BoaXN0aWNhdGVkIHNvZnR3YXJlIHJ1biBieSB0cmFpbmVkIHByb2Zlc3Npb25hbHMuIE1hbnVhbCBjcnlwdG8gc2lnbmFscyBhcmUgY3JlYXRlZCBieSBleHBlcmllbmNlZCB0cmFkZXJzIHdobyByZWNvZ25pemUgcGF0dGVybnMgdXNpbmcgYWR2YW5jZWQgdG9vbHMgYW5kIGluZGljYXRvcnMuIE91ciBzaWduYWxzIGFyZSBtYW51YWwgY3J5cHRvIHNpZ25hbHMgY3VyYXRlZCBieSBhbiBleHBlcmllbmNlZCB0ZWFtIG9mIHZldGVyYW4gdHJhZGVycy4gT3VyIHNpZ25hbHMgb2Z0ZW4gc3BlY2lmeSB0aGUgdHlwZSBvZiBjcnlwdG9jdXJyZW5jeSB0byBidXksIHN1Y2ggYXMgQml0Y29pbiwgRXRoZXJldW0sIG9yIFhSUC4gSGVyZeKAmXMgYW4gZXhhbXBsZTo8L3A+Cjx1bD4KPGxpPkJ1eSBwcmljZSAmIzgyMTE7IFRoZSBwcmljZSBhdCB3aGljaCB5b3Ugc2hvdWxkIHB1cmNoYXNlIHRoZSBjb2luLjwvbGk+CjxsaT5TZWxsLVRhcmdldCAmIzgyMTE7IFRlbGxzIHlvdSB3aGF0IHByaWNlIHRvIHNlbGwgdGhlIGNyeXB0byBmb3IgdG8gbWFrZSBhIHByb2ZpdC48L2xpPgo8bGk+U3RvcC1sb3NzICYjODIxMTsgQXV0b21hdGljYWxseSBxdWl0dGluZyBhIHRyYWRlIGlmIHlvdSBsb3NlIHRvbyBtdWNoLjwvbGk+CjwvdWw+CjxwPlVsdGltYXRlbHksIG91ciBjcnlwdG8gc2lnbmFscyBoZWxwIHlvdSBkZXRlcm1pbmUgdGhlIGJlc3QgbW92ZSB0byB0YWtlIHRvIG1heGltaXplIHlvdXIgcHJvZml0cyBhbmQgbWluaW1pemUgeW91ciBsb3NzZXMuPC9wPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdG9nZ2xlIGV0X3BiX3RvZ2dsZV8xIGV0X2FuaW1hdGVkIGV0X3BiX3RvZ2dsZV9pdGVtICBldF9wYl90b2dnbGVfY2xvc2UiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8aDQgY2xhc3M9ImV0X3BiX3RvZ2dsZV90aXRsZSI+SG93IEVxdWludXhnbG9iYWxhc3NldCBUZWFtIEFjcXVpcmUgQ3J5cHRvIFNpZ25hbHM/PC9oND4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RvZ2dsZV9jb250ZW50IGNsZWFyZml4Ij48cD5FcXVpbnV4Z2xvYmFsYXNzZXQgVGVhbSBjb25zaXN0cyBvZiA0IHByb2Zlc3Npb25hbCB0cmFkZXJzIHdpdGggZXhwZXJ0aXNlIGluIFRlY2huaWNhbCBhbmQgRnVuZGFtZW50YWwgQW5hbHlzaXMuIFdlIG1ha2UgdXNlIG9mIHRoZXNlIHNraWxscyB1c2luZyBzb3BoaXN0aWNhdGVkIHRvb2xzIHRvIGRvIGRlZXAgYW5hbHlzaXMgYW5kIGZpbmQgc3VpdGFibGUgZW50cmllcyBvciBleGl0cy48L3A+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90b2dnbGUgZXRfcGJfdG9nZ2xlXzIgZXRfYW5pbWF0ZWQgZXRfcGJfdG9nZ2xlX2l0ZW0gIGV0X3BiX3RvZ2dsZV9jbG9zZSI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxoNCBjbGFzcz0iZXRfcGJfdG9nZ2xlX3RpdGxlIj5XaGF0IGV4Y2hhbmdlIGFjY291bnRzIGRvIGkgbmVlZD88L2g0PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdG9nZ2xlX2NvbnRlbnQgY2xlYXJmaXgiPjxwPjxzcGFuPldlIHRyYWRlIHByaW1hcmlseSBvbiA8L3NwYW4+PGEgaHJlZj0iaHR0cHM6Ly90Lm1lL2pvaW5jaGF0L0JDVF9zdXBwb3J0Ym90Ij5CaW5hbmNlPC9hPjxzcGFuPiBhbmQgPC9zcGFuPjxhIGhyZWY9Imh0dHBzOi8vdC5tZS9CQ1Rfc3VwcG9ydGJvdCI+Qml0bWV4PC9hPjxzcGFuPi4gQml0bWV4IGFjY291bnRzIGFyZSBub3QgYXZhaWxhYmxlIHRvIFVTIG9yIENhbmFkaWFuIHJlc2lkZW50cyB3aXRob3V0IHRoZSB1c2Ugb2YgYSByZWxpYWJsZSBWUE4uIFRoZSBncmVhdCBuZXdzIGlzIHRoYXQgcHJpY2UgYWN0aW9uIHdpbGwgYmUgdmVyeSBzaW1pbGFyIHRvIG90aGVyIGxhcmdlIGV4Y2hhbmdlcyBsaWtlIEtyYWtlbiwgQml0c3RhbXAgYW5kIEh1b2JpLiBObyBtYXR0ZXIgd2hlcmUgeW91IGxpdmUsIEVxdWludXhnbG9iYWxhc3NldCBTaWduYWxzIGNhbiBoZWxwIHlvdSB0cmFkZSBsaWtlIGEgcHJvLjwvc3Bhbj48L3A+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90b2dnbGUgZXRfcGJfdG9nZ2xlXzMgZXRfYW5pbWF0ZWQgZXRfcGJfdG9nZ2xlX2l0ZW0gIGV0X3BiX3RvZ2dsZV9vcGVuIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGg0IGNsYXNzPSJldF9wYl90b2dnbGVfdGl0bGUiPldoYXQgaGFwcGVucyBhZnRlciBteSBwYXltZW50PzwvaDQ+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl90b2dnbGVfY29udGVudCBjbGVhcmZpeCI+PHA+PHNwYW4+T25jZSB5b3VyIHBheW1lbnQgaXMgc2VudCwgeW91IHdpbGwgcmVjZWl2ZSBhIG1lbWJlcnNoaXAgY29uZmlybWF0aW9uIGVtYWlsIHdpdGggYWxsIHRoZSBuZWNlc3NhcnkgaW5mb3JtYXRpb24gZm9yIHRoZSBuZXh0IHN0ZXBzLiBDbGljayBvbiB0aGUgbGluayBpbiB5b3VyIGVtYWlsIGZvciBpbW1lZGlhdGUgcmVkaXJlY3Rpb24gdG8geW91ciBhY2NvdW50IHBhZ2UgYXQgRXF1aW51eGdsb2JhbGFzc2V0LmNvbS48L3NwYW4+PC9wPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdG9nZ2xlIGV0X3BiX3RvZ2dsZV80IGV0X2FuaW1hdGVkIGV0X3BiX3RvZ2dsZV9pdGVtICBldF9wYl90b2dnbGVfb3BlbiI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxoNCBjbGFzcz0iZXRfcGJfdG9nZ2xlX3RpdGxlIj5BcmUgRXF1aW51eGdsb2JhbGFzc2V0IHNpZ25hbHMgY2xhc3NpZmllZCBieSByaXNrcz88L2g0PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdG9nZ2xlX2NvbnRlbnQgY2xlYXJmaXgiPjxwPjxzcGFuPlllcy4gT3VyIEVxdWludXhnbG9iYWxhc3NldCBTaWduYWxzIGFyZSBjbGFzc2lmaWVkIGJ5IHJpc2sgYW5kIGFyZSBwb3N0ZWQgd2l0aCBmb2xsb3dpbmcgdGl0bGVzOiDigJhWZXJ5IFNhZmUs4oCZIOKAmFJlZ3VsYXIs4oCZIOKAmFJpc2t5LOKAmSBvciDigJhWZXJ5IFJpc2t5LuKAmSBPdXIgdHJhZGVycyB3aWxsIGFsc28gZm9sbG93IHVwIG9uIHNpZ25hbHMgdG8gdGVhY2ggbWVtYmVycyB0aGUgbWFya2V0IGRldGVybWluaW5nIHByaW5jaXBsZXMuPC9zcGFuPjwvcD48L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RvZ2dsZSBldF9wYl90b2dnbGVfNSBldF9hbmltYXRlZCBldF9wYl90b2dnbGVfaXRlbSAgZXRfcGJfdG9nZ2xlX29wZW4iPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8aDQgY2xhc3M9ImV0X3BiX3RvZ2dsZV90aXRsZSI+SG93IG11Y2ggZXhwZXJpZW5jZSBkbyB0aGUgRXF1aW51eGdsb2JhbGFzc2V0IHRyYWRlcnMgaGF2ZT88L2g0PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdG9nZ2xlX2NvbnRlbnQgY2xlYXJmaXgiPjxwPjxzcGFuPk91ciB0cmFkZXJzIGhhdmUgZXh0ZW5zaXZlIEZYIHRyYWRpbmcgYmFja2dyb3VuZHMuIE5lYXJseSA1IHllYXJzIGFnbywgb25lIG9mIG91ciB0b3AgdHJhZGVycyBiZWdhbiBzZWVpbmcgdGhhdCB0aGUgY3J5cHRvIG1hcmtldHMgZGVsaXZlcmVkIGdyZWF0ZXIgcmV0dXJucyBhbmQgd2UgYmVnYW4gdGhlIHRyYW5zaXRpb24uIEZvciB0aGUgcGFzdCA0IHllYXJzLCB0aGlzIHRlYW0gaGFzIGJlZW4gZnVsbHkgY29tbWl0dGVkIHRvIGRldmVsb3Bpbmcgc2FmZSBhbmQgcHJvZml0YWJsZSB0cmFkaW5nIHN5c3RlbXMgZm9yIHRoZSBjcnlwdG8gbWFya2V0cy48L3NwYW4+PC9wPjwvZGl2PgoJCQk8L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzIgZXRfcGJfY29sdW1uXzI0ICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2ggZXQtbGFzdC1jaGlsZCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90b2dnbGUgZXRfcGJfdG9nZ2xlXzYgZXRfYW5pbWF0ZWQgZXRfcGJfdG9nZ2xlX2l0ZW0gIGV0X3BiX3RvZ2dsZV9jbG9zZSI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxoNCBjbGFzcz0iZXRfcGJfdG9nZ2xlX3RpdGxlIj5Ib3cgdG8gUmVjZWl2ZSBDcnlwdG8gU2lnbmFscz88L2g0PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdG9nZ2xlX2NvbnRlbnQgY2xlYXJmaXgiPjxwPkNyeXB0byBzaWduYWxzIGNhbiBiZSBzZW50IHZpYSBhbnkgc29jaWFsIG1lZGlhIG1lc3NhZ2luZyBhcHBzIHN1Y2ggYXMgV2hhdHNhcHAsIFNpZ25hbCwgVGVsZWdyYW0sIG9yIEVtYWlsLiBXZSBjaG9vc2UgV2hhdHNBcHAgYmVjYXVzZSBpdCBwcm92aWRlcyBncmVhdGVyIGNvbnZlbmllbmNlIHRoYW4gb3RoZXIgb3B0aW9ucyBpbiB0aGUgbWFya2V0LiBUaGUgcHJpdmFjeSwgdGhlIGNvbnRyb2wsIGFuZCB0aGUgY3VzdG9taXphdGlvbiB0aGF0IFdoYXRzQXBwIG9mZmVycyBoZWxwIGl0IHN0YW5kIG91dCBmcm9tIG90aGVyIGF2YWlsYWJsZSBhcHBzIG9yIHBsYXRmb3Jtcy48L3A+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90b2dnbGUgZXRfcGJfdG9nZ2xlXzcgZXRfYW5pbWF0ZWQgZXRfcGJfdG9nZ2xlX2l0ZW0gIGV0X3BiX3RvZ2dsZV9jbG9zZSI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxoNCBjbGFzcz0iZXRfcGJfdG9nZ2xlX3RpdGxlIj5XaGF0IHBsYW5zIGRvIHlvdSBvZmZlcj88L2g0PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdG9nZ2xlX2NvbnRlbnQgY2xlYXJmaXgiPjxwPldlIG9mZmVyIGJvdGggZnJlZSBhbmQgcHJlbWl1bSBwbGFucyB0byBvdXIgY3VzdG9tZXJzLiBGb3IgY3VzdG9tZXJzIHdobyB3YW50IHRvIGV4cGxvcmUgb3VyIG9mZmVyaW5ncyBjYW4gZWFzaWx5IGpvaW4gb3VyIGZyZWUgY2hhbm5lbHMgYW5kIGdldCBwcm9taXNpbmcgc2lnbmFscyBmcmVlIG9mIGNvc3QuIFdlIGFsc28gb2ZmZXIgYW4gZXhjbHVzaXZlIHByZW1pdW0gbWVtYmVyc2hpcCBwYWNrYWdlIGZvciBjdXN0b21lcnMgd2hvIGFyZSBsb29raW5nIHRvIGdvIHRoZSBleHRyYSBtaWxlIGFuZCBlbmpveSB0b3Atbm90Y2ggY3J5cHRvIHNpZ25hbHMgd2l0aCBleHRyYSBmZWF0dXJlcy4gQ3VycmVudGx5LCBvdXIgZGl2ZXJzZSBzZXQgb2YgcGxhbnMgaW5jbHVkZSBGcmVlIEJpdG1leCBhbmQgQnlCaXQgU2lnbmFscywgRnJlZSBCaW5hbmNlIFNpZ25hbHMsIFByZW1pdW0gQml0bWV4LCBhbmQgQnlCaXQgVklQIHNpZ25hbHMsIFByZW1pdW0gQmluYW5jZSBWSVAgc2lnbmFscywgQWNjb3VudCBtYW5hZ2VtZW50LCB1cCB0byA4MCBzaWduYWxzIHBlciBtb250aCwgYW5kIG1vcmUuIFRvIGxlYXJuIG1vcmUsIHBsZWFzZSBjb250YWN0IHVzLjwvcD48L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RvZ2dsZSBldF9wYl90b2dnbGVfOCBldF9hbmltYXRlZCBldF9wYl90b2dnbGVfaXRlbSAgZXRfcGJfdG9nZ2xlX29wZW4iPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8aDQgY2xhc3M9ImV0X3BiX3RvZ2dsZV90aXRsZSI+V2hlcmUgY2FuIGkgYnV5IGJpdGNvaW4/PC9oND4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RvZ2dsZV9jb250ZW50IGNsZWFyZml4Ij48cD48c3Bhbj5XZSBwcmVmZXIgdG8gdXNlIDwvc3Bhbj48YSBocmVmPSJodHRwczovL3d3dy5jb2luYmFzZS5jb20vam9pbi9tYWNoX3I/c3JjPWlvcy1saW5rIj5Db2luYmFzZTwvYT48c3Bhbj4gYmVjYXVzZSBvZiBpdHMgcmVsaWFiaWxpdHkgYW5kIGVhc3kgY29udmVyc2lvbiB0by9mcm9tIGxvY2FsIGN1cnJlbmN5LiBGb3IgdGhvc2Ugd2hvIGFyZSB1bmFibGUgdG8gdXNlIENvaW5iYXNlLCBFdGhvcyBXYWxsZXQsIEJpdHN0YW1wLCBLcmFrZW4sIGFuZCBCbG9ja2NoYWluLmNvbSBhcmUgYSBmZXcgb3RoZXIgdHJ1c3RlZCBleGNoYW5nZXMgdGhhdCBhbGxvdyBmaWF0IHRvIGNyeXB0byBjb252ZXJzaW9ucyBhbmQgcHVyY2hhc2UgZGlyZWN0bHkgZnJvbSBkZWJpdCBjYXJkcywgY3JlZGl0IGNhcmRzLCBhbmQgYmFuayBhY2NvdW50cy48L3NwYW4+PC9wPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdG9nZ2xlIGV0X3BiX3RvZ2dsZV85IGV0X2FuaW1hdGVkIGV0X3BiX3RvZ2dsZV9pdGVtICBldF9wYl90b2dnbGVfY2xvc2UiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8aDQgY2xhc3M9ImV0X3BiX3RvZ2dsZV90aXRsZSI+SG93IGJpZyBpcyB0aGUgRXF1aW51eGdsb2JhbGFzc2V0IHRlYW0/PC9oND4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RvZ2dsZV9jb250ZW50IGNsZWFyZml4Ij48cD48c3Bhbj5PdXIgdGVhbSBjb250YWlucyBmb3VyIHNraWxsZWQgbWFya2V0IGFuYWx5c3RzLiBFYWNoIG9uZSBvZiBvdXIgdHJhZGVycyBoYXMgdGhlaXIgb3duIGZpZWxkIG9mIGV4cGVydGlzZSBhbmQgdG9nZXRoZXIgd2UgYXJlIHN0cm9uZyB0ZWFtLjwvc3Bhbj48L3A+PC9kaXY+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl90b2dnbGUgZXRfcGJfdG9nZ2xlXzEwIGV0X2FuaW1hdGVkIGV0X3BiX3RvZ2dsZV9pdGVtICBldF9wYl90b2dnbGVfY2xvc2UiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8aDQgY2xhc3M9ImV0X3BiX3RvZ2dsZV90aXRsZSI+SG93IGRvZXMgRXF1aW51eGdsb2JhbGFzc2V0IHBlcnNvbmFsIGNvYWNoaW5nIHdvcms/PC9oND4KCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RvZ2dsZV9jb250ZW50IGNsZWFyZml4Ij48cD48c3Bhbj5JdCBpcyBpbXBvcnRhbnQgdG8gQUxXQVlTIHJlbWVtYmVyIHRoYXQgdW5saWtlIG1hbnkgc2lnbmFsIHByb3ZpZGVycywgd2UgY2FyZSBhYm91dCBZT1UhIFdlIHZhbHVlIGVhY2ggb2Ygb3VyIG1lbWJlcnMgYW5kIHByb3ZpZGUgcGVyc29uYWwgY29hY2hpbmcgZm9yIGFsbCBvZiB5b3U6IHdoZXRoZXIgeW914oCZdmUgY2hvc2VuIG91ciAxIE1vbnRoIHBsYW4gb3Igb3VyIDEgWWVhciBWSVAgcGxhbi4gT25jZSB5b3XigJl2ZSBzaWduZWQgdXAgYW5kIHBhaWQgZm9yIHlvdXIgVklQIG1lbWJlcnNoaXAsIGEgRXF1aW51eGdsb2JhbGFzc2V0IHBybyB0cmFkZXIgd2lsbCBiZSB0aGVyZSB0byB0ZWFjaCB5b3UgcHJvcGVyIHRyYWRpbmcgc3RyYXRlZ2llcywgaG93IHRvIGF2b2lkIGNvc3RseSBlcnJvcnMsIGFuZCBob3cgdG8gbWl0aWdhdGUgcmlzay4gT3VyIHRyYWRlcnMgd2lsbCBiZSBhdmFpbGFibGUgZWFjaCBkYXkgdG8gYW5zd2VyIHF1ZXN0aW9ucyBhbmQgdG8gaGVscCBtYWtlIHlvdXIgdHJhZGluZyBleHBlcmllbmNlIGFzIGVhc3kgYXMgcG9zc2libGUuPC9zcGFuPjwvcD48L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RvZ2dsZSBldF9wYl90b2dnbGVfMTEgZXRfYW5pbWF0ZWQgZXRfcGJfdG9nZ2xlX2l0ZW0gIGV0X3BiX3RvZ2dsZV9jbG9zZSI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxoNCBjbGFzcz0iZXRfcGJfdG9nZ2xlX3RpdGxlIj5EbyBFcXVpbnV4Z2xvYmFsYXNzZXQgdHJhZGVycyBwcm92aWRlIHRpbWVseSB1cGRhdGVzIG9uIHRoZSBtYXJrZXQgY2xpbWF0ZT88L2g0PgoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdG9nZ2xlX2NvbnRlbnQgY2xlYXJmaXgiPjxwPjxzcGFuPlllczogWW91IHdpbGwgYmUgdXBkYXRlZCBkYWlseSBvbiB3aXRoIHdoYXTigJlzIGhhcHBlbmluZyBpbiB0aGUgY3VycmVudCBtYXJrZXQuIE91ciBtYXN0ZXIgdHJhZGVycyB3aWxsIHByb3ZpZGUgYWxsIG1lbWJlcnMgd2l0aCBhIGZ1bmRhbWVudGFsIG1hcmtldCBhbmFseXNpcywgaW5jbHVkaW5nIHJlbGV2YW50IGlkZWFzIGFuZCBwcmVkaWN0aW9ucyBvZiB3aGVyZSB0aGUgbWFya2V0IGlzIGhlYWRpbmcgaW4gdGhlIGZ1dHVyZS4gRXF1aW51eGdsb2JhbGFzc2V0IHNpZ25hbHMgYW5kIHByZWRpY3Rpb25zIGhhdmUgYSBoaXN0b3JpY2FsIGFjY3VyYWN5IG9mIDk1JS4gT3VyIHRlYW0gdGFrZXMgcmlzayBtYW5hZ2VtZW50IGp1c3QgYXMgc2VyaW91c2x5IGFzIG1ha2luZyBwcm9maXRzLiBXaGVuIHRoZSBtYXJrZXQgZGlyZWN0aW9uIGlzIG5ldXRyYWwgb3IgdW5jZXJ0YWluLCB3ZSB3aWxsIG5vdCB0cmFkZS48L3NwYW4+PC9wPjwvZGl2PgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfY29kZSBldF9wYl9jb2RlXzEgIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQk8IS0tCTxkaXYgY2xhc3M9ImV0X3BiX2NvZGVfaW5uZXIiPjxkaXYgY2xhc3M9J3lvdXR1YmUtcGxheWVyJyBkYXRhLWlkPSc4Z015WEJvRG1vSSc+PC9kaXY+PC9kaXY+IC0tPgoJCQk8c3BhbiBjbGFzcz0iZXRfcGJfaW1hZ2Vfd3JhcCAiPjxpbWcgd2lkdGg9IjMwMCIgaGVpZ2h0PSIxNTAiIHNyYz0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L3Nwb25zb3JzaGlwLnBuZyIgYWx0PSIiIHRpdGxlPSJjcnlwdG8tc2lnbmFscy1wYXltZW50LWdhdGV3YXlzIiBjbGFzcz0id3AtaW1hZ2UtNzQ4OCIgLz48L3NwYW4+CgkJCTwvZGl2PjxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9pbWFnZSBldF9wYl9pbWFnZV8wIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8c3BhbiBjbGFzcz0iZXRfcGJfaW1hZ2Vfd3JhcCAiPjxpbWcgd2lkdGg9IjMwMCIgaGVpZ2h0PSIxNTAiIHNyYz0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L2NyeXB0by1zaWduYWxzLXBheW1lbnQtZ2F0ZXdheXMucG5nIiBhbHQ9IiIgdGl0bGU9ImNyeXB0by1zaWduYWxzLXBheW1lbnQtZ2F0ZXdheXMiIGNsYXNzPSJ3cC1pbWFnZS03NDg4IiAvPjwvc3Bhbj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCTwvZGl2PgoJCQkJCgkJCQkKCQkJPC9kaXY+CQk8L2Rpdj4KCTwvZGl2PgoJCQkJCQk8L2Rpdj4KCgkJCQkKCQkJCTwvYXJ0aWNsZT4KCgkJCQoKPC9kaXY+CgoKCgogPCEtLSBHZXRCdXR0b24uaW8gd2lkZ2V0IC0tPgoJCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAoZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBvcHRpb25zID0gewogICAgICAgICAgICB3aGF0c2FwcDogIis5NzE1MjkxODI4NTMiLCAvLyBXaGF0c0FwcCBudW1iZXIKICAgICAgICAgICAgY2FsbF90b19hY3Rpb246ICJNZXNzYWdlIHVzIiwgLy8gQ2FsbCB0byBhY3Rpb24KICAgICAgICAgICAgcG9zaXRpb246ICJsZWZ0IiwgLy8gUG9zaXRpb24gbWF5IGJlICdyaWdodCcgb3IgJ2xlZnQnCiAgICAgICAgfTsKICAgICAgICB2YXIgcHJvdG8gPSBkb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCwgaG9zdCA9ICJnZXRidXR0b24uaW8iLCB1cmwgPSBwcm90byArICIvL3N0YXRpYy4iICsgaG9zdDsKICAgICAgICB2YXIgcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOyBzLnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0Jzsgcy5hc3luYyA9IHRydWU7IHMuc3JjID0gdXJsICsgJy93aWRnZXQtc2VuZC1idXR0b24vanMvaW5pdC5qcyc7CiAgICAgICAgcy5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7IFdoV2lkZ2V0U2VuZEJ1dHRvbi5pbml0KGhvc3QsIHByb3RvLCBvcHRpb25zKTsgfTsKICAgICAgICB2YXIgeCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXTsgeC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShzLCB4KTsKICAgIH0pKCk7Cjwvc2NyaXB0Pgo8IS0tIC9HZXRCdXR0b24uaW8gd2lkZ2V0IC0tPgoKCgo8c2NyaXB0IHNyYz0iLy9jb2RlLnRpZGlvLmNvL3BodHl6em1kcGdnb3VodnJ4aG90YjY3ZTcyMm5sbDB5LmpzIiBhc3luYz48L3NjcmlwdD4KCgoKCTxmb290ZXIgY2xhc3M9ImV0LWwgZXQtbC0tZm9vdGVyIj4KCQkJPGRpdiBjbGFzcz0iZXRfYnVpbGRlcl9pbm5lcl9jb250ZW50IGV0X3BiX2d1dHRlcnMzIj48ZGl2IGNsYXNzPSJldF9wYl9zZWN0aW9uIGV0X3BiX3NlY3Rpb25fMF90Yl9mb290ZXIgZXRfcGJfd2l0aF9iYWNrZ3JvdW5kIGV0X3NlY3Rpb25fcmVndWxhciIgPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfcm93IGV0X3BiX3Jvd18wX3RiX2Zvb3RlciI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfMyBldF9wYl9jb2x1bW5fMF90Yl9mb290ZXIgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9pbWFnZSBldF9wYl9pbWFnZV8wX3RiX2Zvb3RlciI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxzcGFuIGNsYXNzPSJldF9wYl9pbWFnZV93cmFwICI+PGltZyBsb2FkaW5nPSJsYXp5IiB3aWR0aD0iNTAwIiBoZWlnaHQ9IjEzMCIgc3JjPSIvd3AtY29udGVudC91cGxvYWRzLzIwMjAvMDcvZmluYWwtYWdhaW4tMS1lMTU5MzYwODc0ODY5MC5wbmciIGFsdD0iIiB0aXRsZT0iZmluYWwgYWdhaW4gMSIgY2xhc3M9IndwLWltYWdlLTcyMzUiIC8+PC9zcGFuPgoJCQk8L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfY29sdW1uIGV0X3BiX2NvbHVtbl8xXzMgZXRfcGJfY29sdW1uXzFfdGJfZm9vdGVyICBldF9wYl9jc3NfbWl4X2JsZW5kX21vZGVfcGFzc3Rocm91Z2giPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfdGV4dCBldF9wYl90ZXh0XzBfdGJfZm9vdGVyICBldF9wYl90ZXh0X2FsaWduX2NlbnRlciBldF9wYl9iZ19sYXlvdXRfbGlnaHQiPgoJCQkJCgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9idXR0b25fbW9kdWxlX3dyYXBwZXIgZXRfcGJfYnV0dG9uXzFfd3JhcHBlciBldF9wYl9idXR0b25fYWxpZ25tZW50X2xlZnQgZXRfcGJfbW9kdWxlICI+CgkJCQk8YSBjbGFzcz0iZXRfcGJfYnV0dG9uIGV0X3BiX2J1dHRvbl8xIGV0X3BiX2JnX2xheW91dF9kYXJrIiBocmVmPSI/YT1zdXBwb3J0Ij5Db250YWN0IHVzPC9hPgoJCQk8L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF8xX3RiX2Zvb3RlciAgZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXIgZXRfcGJfYmdfbGF5b3V0X2xpZ2h0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQk8IS0tCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxwPkNhbGwgdXMgOiA8YSBocmVmPSJ0ZWw6KzQyMC03MjAtMDY5LTQyMCI+KzQyMC03MjAtMDY5LTQyMDwvYT48L3A+CjxwPlRlbGVncmFtIDogQ2xpY2sgPGEgaHJlZj0iaHR0cHM6Ly90ZWxlZ3JhbS5tZS9NQ1BzdXBwb3J0Ym90Ij5IZXJlPC9hPiB0byBjb250YWN0IHVzPC9wPjwvZGl2PiAtLT4KCgkJCTwvZGl2PiA8dWwgY2xhc3M9ImV0X3BiX21vZHVsZSBldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93IGV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3dfMF90Yl9mb290ZXIgY2xlYXJmaXggIGV0X3BiX3RleHRfYWxpZ25fY2VudGVyIGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJPCEtLQk8bGkKICAgICAgICAgICAgY2xhc3M9J2V0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3dfbmV0d29ya18wX3RiX2Zvb3RlciBldF9wYl9zb2NpYWxfaWNvbiBldF9wYl9zb2NpYWxfbmV0d29ya19saW5rICBldC1zb2NpYWwtZmFjZWJvb2snPjxhCiAgICAgICAgICAgICAgaHJlZj0naHR0cHM6Ly9tLmZhY2Vib29rLmNvbS9NeWNyeXB0b3BhcmFkaXNlJwogICAgICAgICAgICAgIGNsYXNzPSdpY29uIGV0X3BiX3dpdGhfYm9yZGVyJwogICAgICAgICAgICAgIHRpdGxlPSdGb2xsb3cgb24gRmFjZWJvb2snCiAgICAgICAgICAgICAgIHRhcmdldD0iX2JsYW5rIj48c3BhbgogICAgICAgICAgICAgICAgY2xhc3M9J2V0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3dfbmV0d29ya19uYW1lJwogICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49J3RydWUnCiAgICAgICAgICAgICAgICA+Rm9sbG93PC9zcGFuPjwvYT48L2xpPjxsaQogICAgICAgICAgICBjbGFzcz0nZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd19uZXR3b3JrXzFfdGJfZm9vdGVyIGV0X3BiX3NvY2lhbF9pY29uIGV0X3BiX3NvY2lhbF9uZXR3b3JrX2xpbmsgIGV0LXNvY2lhbC10d2l0dGVyJz48YQogICAgICAgICAgICAgIGhyZWY9J2h0dHBzOi8vbW9iaWxlLnR3aXR0ZXIuY29tL19tY3Bfc2lnbmFscycKICAgICAgICAgICAgICBjbGFzcz0naWNvbiBldF9wYl93aXRoX2JvcmRlcicKICAgICAgICAgICAgICB0aXRsZT0nRm9sbG93IG9uIFR3aXR0ZXInCiAgICAgICAgICAgICAgIHRhcmdldD0iX2JsYW5rIj48c3BhbgogICAgICAgICAgICAgICAgY2xhc3M9J2V0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3dfbmV0d29ya19uYW1lJwogICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49J3RydWUnCiAgICAgICAgICAgICAgICA+Rm9sbG93PC9zcGFuPjwvYT48L2xpPjxsaQogICAgICAgICAgICBjbGFzcz0nZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd19uZXR3b3JrXzJfdGJfZm9vdGVyIGV0X3BiX3NvY2lhbF9pY29uIGV0X3BiX3NvY2lhbF9uZXR3b3JrX2xpbmsgIGV0LXNvY2lhbC1pbnN0YWdyYW0nPjxhCiAgICAgICAgICAgICAgaHJlZj0naHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9teWNyeXB0b3BhcmFkaXNlLz9obD1jcycKICAgICAgICAgICAgICBjbGFzcz0naWNvbiBldF9wYl93aXRoX2JvcmRlcicKICAgICAgICAgICAgICB0aXRsZT0nRm9sbG93IG9uIEluc3RhZ3JhbScKICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiPjxzcGFuCiAgICAgICAgICAgICAgICBjbGFzcz0nZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd19uZXR3b3JrX25hbWUnCiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj0ndHJ1ZScKICAgICAgICAgICAgICAgID5Gb2xsb3c8L3NwYW4+PC9hPjwvbGk+IC0tPgoJCQk8L3VsPgoJCQk8L2Rpdj48ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzFfMyBldF9wYl9jb2x1bW5fMl90Yl9mb290ZXIgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF8yX3RiX2Zvb3RlciAgZXRfcGJfdGV4dF9hbGlnbl9sZWZ0IGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxoMj5Zb3VyIGludmVzdG1lbnRzIGFyZSB5b3VyIHJlc3BvbnNpYmlsaXR5PC9oMj4KPHNlY3Rpb24gY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LWY5YmU1NDggZWxlbWVudG9yLXNlY3Rpb24tYm94ZWQgZWxlbWVudG9yLXNlY3Rpb24taGVpZ2h0LWRlZmF1bHQgZWxlbWVudG9yLXNlY3Rpb24taGVpZ2h0LWRlZmF1bHQgZWxlbWVudG9yLXNlY3Rpb24gZWxlbWVudG9yLXRvcC1zZWN0aW9uIiBkYXRhLWlkPSJmOWJlNTQ4IiBkYXRhLWVsZW1lbnRfdHlwZT0ic2VjdGlvbiIgZGF0YS1zZXR0aW5ncz0ieyZxdW90O2JhY2tncm91bmRfYmFja2dyb3VuZCZxdW90OzomcXVvdDtjbGFzc2ljJnF1b3Q7fSI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1jb250YWluZXIgZWxlbWVudG9yLWNvbHVtbi1nYXAtZGVmYXVsdCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1yb3ciPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItZWxlbWVudCBlbGVtZW50b3ItZWxlbWVudC1jY2E0ODNhIGVsZW1lbnRvci1jb2x1bW4gZWxlbWVudG9yLWNvbC0xMDAgZWxlbWVudG9yLXRvcC1jb2x1bW4iIGRhdGEtaWQ9ImNjYTQ4M2EiIGRhdGEtZWxlbWVudF90eXBlPSJjb2x1bW4iPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItY29sdW1uLXdyYXAgIGVsZW1lbnRvci1lbGVtZW50LXBvcHVsYXRlZCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci13aWRnZXQtd3JhcCI+CjxkaXYgY2xhc3M9ImVsZW1lbnRvci1lbGVtZW50IGVsZW1lbnRvci1lbGVtZW50LTY1NDM1OTYgZWxlbWVudG9yLXdpZGdldCBlbGVtZW50b3Itd2lkZ2V0LXRleHQtZWRpdG9yIiBkYXRhLWlkPSI2NTQzNTk2IiBkYXRhLWVsZW1lbnRfdHlwZT0id2lkZ2V0IiBkYXRhLXdpZGdldF90eXBlPSJ0ZXh0LWVkaXRvci5kZWZhdWx0Ij4KPGRpdiBjbGFzcz0iZWxlbWVudG9yLXdpZGdldC1jb250YWluZXIiPgo8ZGl2IGNsYXNzPSJlbGVtZW50b3ItdGV4dC1lZGl0b3IgZWxlbWVudG9yLWNsZWFyZml4Ij4KPGRpdiBkaXI9ImF1dG8iPldlIGRvIG5vdCBhY2NlcHQgYW55IGxpYWJpbGl0eSBmb3IgYW55IGxvc3Mgb3IgZGFtYWdlIHdoaWNoIGlzIGluY3VycmVkIGZyb20geW91IGFjdGluZyBvciBub3QgYWN0aW5nIGFzIGEgcmVzdWx0IG9mIHJlYWRpbmcgYW55IG9mIG91ciBwdWJsaWNhdGlvbnMuIFlvdSBhY2tub3dsZWRnZSB0aGF0IHlvdSB1c2UgdGhlIGluZm9ybWF0aW9uIHdlIHByb3ZpZGUgYXQgeW91ciBvd24gcmlzay4gRXF1aW51eGdsb2JhbGFzc2V0IGRvZXMgbm90IG9mZmVyIGludmVzdG1lbnQgYWR2aWNlIGFuZCBub3RoaW5nIGluIHRoZSBjYWxscyB3ZSBtYWtlIHNob3VsZCBiZSBjb25zdHJ1ZWQgYXMgaW52ZXN0bWVudCBhZHZpY2UuIEVxdWludXhnbG9iYWxhc3NldCAgcHJvdmlkZXMgaW5mb3JtYXRpb24gYW5kIGVkdWNhdGlvbiBiYXNlZCBvbiBvdXIgb3duIHRyYWRlcy4gWW91IGFyZSBwYXlpbmcgdG8gZm9sbG93IG91ciB0cmFkZXMgdGhhdCB3ZSBkb2N1bWVudCBmb3IgZWR1Y2F0aW9uYWwgcHVycG9zZXMuPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9zZWN0aW9uPgo8c2VjdGlvbiBjbGFzcz0iZWxlbWVudG9yLWVsZW1lbnQgZWxlbWVudG9yLWVsZW1lbnQtNTgyMzA2NjIgZWxlbWVudG9yLXNlY3Rpb24tYm94ZWQgZWxlbWVudG9yLXNlY3Rpb24taGVpZ2h0LWRlZmF1bHQgZWxlbWVudG9yLXNlY3Rpb24taGVpZ2h0LWRlZmF1bHQgZWxlbWVudG9yLXNlY3Rpb24gZWxlbWVudG9yLXRvcC1zZWN0aW9uIiBkYXRhLWlkPSI1ODIzMDY2MiIgZGF0YS1lbGVtZW50X3R5cGU9InNlY3Rpb24iIGRhdGEtc2V0dGluZ3M9InsmcXVvdDtiYWNrZ3JvdW5kX2JhY2tncm91bmQmcXVvdDs6JnF1b3Q7Y2xhc3NpYyZxdW90O30iPjwvc2VjdGlvbj48L2Rpdj4KCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF8zX3RiX2Zvb3RlciAgZXRfcGJfdGV4dF9hbGlnbl9sZWZ0IGV0X3BiX2JnX2xheW91dF9saWdodCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCTxkaXYgY2xhc3M9ImV0X3BiX3RleHRfaW5uZXIiPjxwPjxhIGhyZWY9Ii8/YT1ydWxlcyI+VEVSTVMgJmFtcDsgQ09ORElUSU9OUzwvYT4gICAgICA8IS0tIDxhIGhyZWY9Ii8/YT1wcml2YWN5LXBvbGljeS8iPlBSSVZBQ1k8L2E+IC0tPiAgPC9wPjwvZGl2PgoJCQk8L2Rpdj4KCQkJPC9kaXY+CgkJCQkKCQkJCQoJCQkJCgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9tb2R1bGUgZXRfcGJfaW1hZ2UgZXRfcGJfaW1hZ2VfMCI+CgkJCQkKCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPHNwYW4gY2xhc3M9ImV0X3BiX2ltYWdlX3dyYXAgIj48aW1nIHdpZHRoPSIzMDAiIGhlaWdodD0iNTAiIHNyYz0iL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L2FudGl2aXJ1cy5wbmciIGFsdD0iIiB0aXRsZT0iY3J5cHRvLXNpZ25hbHMtcGF5bWVudC1nYXRld2F5cyIgY2xhc3M9IndwLWltYWdlLTc0ODgiIC8+PC9zcGFuPgoJCQk8L2Rpdj4KCQkJCQoJCQkJCgkJCQkKCQkJPC9kaXY+PGRpdiBjbGFzcz0iZXRfcGJfcm93IGV0X3BiX3Jvd18xX3RiX2Zvb3RlciI+CgkJCQk8ZGl2IGNsYXNzPSJldF9wYl9jb2x1bW4gZXRfcGJfY29sdW1uXzRfNCBldF9wYl9jb2x1bW5fM190Yl9mb290ZXIgIGV0X3BiX2Nzc19taXhfYmxlbmRfbW9kZV9wYXNzdGhyb3VnaCBldC1sYXN0LWNoaWxkIj4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfbW9kdWxlIGV0X3BiX3RleHQgZXRfcGJfdGV4dF80X3RiX2Zvb3RlciAgZXRfcGJfdGV4dF9hbGlnbl9jZW50ZXIgZXRfcGJfYmdfbGF5b3V0X2xpZ2h0Ij4KCQkJCQoJCQkJCgkJCQkKCQkJCQoJCQkJPGRpdiBjbGFzcz0iZXRfcGJfdGV4dF9pbm5lciI+PHA+PHNwYW4+wqkgY29weXJpZ2h0IDIwMjUgRXF1aW51eCBHbG9iYWwgQXNzZXQsIExMQy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4gPC9zcGFuPjwvcD48L2Rpdj4KCQkJPC9kaXY+CgkJCTwvZGl2PgoJCQkJCgkJCQoJCQkKCQkJCgkJCQoJCQkKCQk8IS0tCTxzY3JpcHQgc3JjPSIvL2NvZGUuaml2b3NpdGUuY29tL3dpZGdldC9DNDRrck9MbUc5IiBhc3luYz48L3NjcmlwdD4gLS0+CgoJCQkKCQkJCQoJCQkJCgkJCQkKCQkJPC9kaXY+CgkJCQkKCQkJCQoJCQk8L2Rpdj4JCTwvZGl2PgoJPC9mb290ZXI+CgoJCTwvZGl2PgoKCQkJCgkJPC9kaXY+CgkJPC9kaXY+CgoJCTxzY3JpcHQgaWQ9Im1janMiPiFmdW5jdGlvbihjLGgsaSxtLHApe209Yy5jcmVhdGVFbGVtZW50KGgpLHA9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZShoKVswXSxtLmFzeW5jPTEsbS5zcmM9aSxwLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG0scCl9KGRvY3VtZW50LCJzY3JpcHQiLCJodHRwczovL2NoaW1wc3RhdGljLmNvbS9tY2pzLWNvbm5lY3RlZC9qcy91c2Vycy9jNGFlZGFjMTE4YzNjNjA0NWMxODE2NzI3LzNiODhjYzBmYzE3ODlmNzNlMTg2OTExZTkuanMiKTs8L3NjcmlwdD4JCTxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vamF2YXNjcmlwdCI+CgkJCShmdW5jdGlvbigpIHsKCQkJCXZhciBmaWxlICAgICA9IFsiL1wvd3AtY29udGVudFwvZXQtY2FjaGVcLzQ2MjVcL2V0LWRpdmktZHluYW1pYy10Yi02NzI4LTQ2MjUtbGF0ZS5jc3MiXTsKCQkJCXZhciBoYW5kbGUgICA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkaXZpLXN0eWxlLXBhcmVudC1pbmxpbmUtaW5saW5lLWNzcycpOwoJCQkJdmFyIGxvY2F0aW9uID0gaGFuZGxlLnBhcmVudE5vZGU7CgoJCQkJaWYgKDA9PT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdsaW5rW2hyZWY9IicgKyBmaWxlICsgJyJdJykubGVuZ3RoKSB7CgkJCQkJdmFyIGxpbmsgID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpOwoJCQkJCWxpbmsucmVsICA9ICdzdHlsZXNoZWV0JzsKCQkJCQlsaW5rLmlkICAgPSAnZXQtZHluYW1pYy1sYXRlLWNzcyc7CgkJCQkJbGluay5ocmVmID0gZmlsZTsKCgkJCQkJbG9jYXRpb24uaW5zZXJ0QmVmb3JlKGxpbmssIGhhbmRsZS5uZXh0U2libGluZyk7CgkJCQl9CgkJCX0pKCk7CgkJPC9zY3JpcHQ+CgkJCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQkJCXZhciBldF9hbmltYXRpb25fZGF0YSA9IFt7ImNsYXNzIjoiZXRfcGJfYmx1cmJfMCIsInN0eWxlIjoiem9vbSIsInJlcGVhdCI6Im9uY2UiLCJkdXJhdGlvbiI6IjEwMDBtcyIsImRlbGF5IjoiMG1zIiwiaW50ZW5zaXR5IjoiOCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX2JsdXJiXzEiLCJzdHlsZSI6Inpvb20iLCJyZXBlYXQiOiJvbmNlIiwiZHVyYXRpb24iOiIxMDAwbXMiLCJkZWxheSI6IjBtcyIsImludGVuc2l0eSI6IjglIiwic3RhcnRpbmdfb3BhY2l0eSI6IjAlIiwic3BlZWRfY3VydmUiOiJlYXNlLWluLW91dCJ9LHsiY2xhc3MiOiJldF9wYl9ibHVyYl8yIiwic3R5bGUiOiJ6b29tIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI4JSIsInN0YXJ0aW5nX29wYWNpdHkiOiIwJSIsInNwZWVkX2N1cnZlIjoiZWFzZS1pbi1vdXQifSx7ImNsYXNzIjoiZXRfcGJfYmx1cmJfMyIsInN0eWxlIjoiem9vbSIsInJlcGVhdCI6Im9uY2UiLCJkdXJhdGlvbiI6IjEwMDBtcyIsImRlbGF5IjoiMG1zIiwiaW50ZW5zaXR5IjoiOCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3ByaWNpbmdfdGFibGVzXzAiLCJzdHlsZSI6InNsaWRlQm90dG9tIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiIxMCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV8wIiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV8xIiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV8yIiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV8zIiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV80Iiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV81Iiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV82Iiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV83Iiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV84Iiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV85Iiwic3R5bGUiOiJmYWRlIiwicmVwZWF0Ijoib25jZSIsImR1cmF0aW9uIjoiMTAwMG1zIiwiZGVsYXkiOiIwbXMiLCJpbnRlbnNpdHkiOiI1MCUiLCJzdGFydGluZ19vcGFjaXR5IjoiMCUiLCJzcGVlZF9jdXJ2ZSI6ImVhc2UtaW4tb3V0In0seyJjbGFzcyI6ImV0X3BiX3RvZ2dsZV8xMCIsInN0eWxlIjoiZmFkZSIsInJlcGVhdCI6Im9uY2UiLCJkdXJhdGlvbiI6IjEwMDBtcyIsImRlbGF5IjoiMG1zIiwiaW50ZW5zaXR5IjoiNTAlIiwic3RhcnRpbmdfb3BhY2l0eSI6IjAlIiwic3BlZWRfY3VydmUiOiJlYXNlLWluLW91dCJ9LHsiY2xhc3MiOiJldF9wYl90b2dnbGVfMTEiLCJzdHlsZSI6ImZhZGUiLCJyZXBlYXQiOiJvbmNlIiwiZHVyYXRpb24iOiIxMDAwbXMiLCJkZWxheSI6IjBtcyIsImludGVuc2l0eSI6IjUwJSIsInN0YXJ0aW5nX29wYWNpdHkiOiIwJSIsInNwZWVkX2N1cnZlIjoiZWFzZS1pbi1vdXQifV07CgkJCQk8L3NjcmlwdD4KCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJKGZ1bmN0aW9uICgpIHsKCQkJdmFyIGMgPSBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZTsKCQkJYyA9IGMucmVwbGFjZSgvd29vY29tbWVyY2Utbm8tanMvLCAnd29vY29tbWVyY2UtanMnKTsKCQkJZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSBjOwoJCX0pKCk7Cgk8L3NjcmlwdD4KCTxzY3JpcHQ+CgovKiBMaWdodCBZb3VUdWJlIEVtYmVkcyBieSBAbGFibm9sICovCi8qIFdlYjogaHR0cDovL2xhYm5vbC5vcmcvP3A9Mjc5NDEgKi8KZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsCiAgICAgICAgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHZhciBkaXYsIG4sCiAgICAgICAgICAgICAgICB2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgieW91dHViZS1wbGF5ZXIiKTsKICAgICAgICAgICAgZm9yIChuID0gMDsgbiA8IHYubGVuZ3RoOyBuKyspIHsKICAgICAgICAgICAgICAgIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogICAgICAgICAgICAgICAgZGl2LnNldEF0dHJpYnV0ZSgiZGF0YS1pZCIsIHZbbl0uZGF0YXNldC5pZCk7CiAgICAgICAgICAgICAgICBkaXYuaW5uZXJIVE1MID0gbGFibm9sVGh1bWIodltuXS5kYXRhc2V0LmlkKTsKICAgICAgICAgICAgICAgIGRpdi5vbmNsaWNrID0gbGFibm9sSWZyYW1lOwogICAgICAgICAgICAgICAgdltuXS5hcHBlbmRDaGlsZChkaXYpOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CgpmdW5jdGlvbiBsYWJub2xUaHVtYihpZCkgewogICAgICAgIHZhciB0aHVtYiA9ICc8aW1nIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9JRC9ocWRlZmF1bHQuanBnIj4nLAogICAgICAgICAgICBwbGF5ID0gJzxkaXYgY2xhc3M9InBsYXkiPjwvZGl2Pic7CiAgICAgICAgcmV0dXJuIHRodW1iLnJlcGxhY2UoIklEIiwgaWQpICsgcGxheTsKICAgIH0KCmZ1bmN0aW9uIGxhYm5vbElmcmFtZSgpIHsKICAgICAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CiAgICAgICAgdmFyIGVtYmVkID0gImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkL0lEP2F1dG9wbGF5PTEiOwogICAgICAgIGlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsIGVtYmVkLnJlcGxhY2UoIklEIiwgdGhpcy5kYXRhc2V0LmlkKSk7CiAgICAgICAgaWZyYW1lLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCAiMCIpOwogICAgICAgIGlmcmFtZS5zZXRBdHRyaWJ1dGUoImFsbG93ZnVsbHNjcmVlbiIsICIxIik7CiAgICAgICAgdGhpcy5wYXJlbnROb2RlLnJlcGxhY2VDaGlsZChpZnJhbWUsIHRoaXMpOwp9CgkKCTwvc2NyaXB0PgoKCjxzY3JpcHQ+CgkKCShmdW5jdGlvbigkKSB7CiAgICBmdW5jdGlvbiBzZXR1cF9jb2xsYXBzaWJsZV9zdWJtZW51cygpIHsKICAgICAgICB2YXIgJG1lbnUgPSAkKCcjbW9iaWxlX21lbnUnKSwKICAgICAgICAgICAgdG9wX2xldmVsX2xpbmsgPSAnI21vYmlsZV9tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSc7CiAgICAgICAgJG1lbnUuZmluZCgnYScpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICQodGhpcykub2ZmKCdjbGljaycpOwogICAgICAgICAgICBpZiAoICQodGhpcykuaXModG9wX2xldmVsX2xpbmspICkgewogICAgICAgICAgICAgICAgJCh0aGlzKS5hdHRyKCdocmVmJywgJyMnKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoICEgJCh0aGlzKS5zaWJsaW5ncygnLnN1Yi1tZW51JykubGVuZ3RoICkgewogICAgICAgICAgICAgICAgJCh0aGlzKS5vbignY2xpY2snLCBmdW5jdGlvbihldmVudCkgewogICAgICAgICAgICAgICAgICAgICQodGhpcykucGFyZW50cygnLm1vYmlsZV9uYXYnKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAkKHRoaXMpLm9uKCdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnBhcmVudCgpLnRvZ2dsZUNsYXNzKCd2aXNpYmxlJyk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgfQogICAgJCh3aW5kb3cpLmxvYWQoZnVuY3Rpb24oKSB7CiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2V0dXBfY29sbGFwc2libGVfc3VibWVudXMoKTsKICAgICAgICB9LCA3MDApOwogICAgfSk7Cn0pKGpRdWVyeSk7Cgo8L3NjcmlwdD48c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgaWQ9J3dwaWwtZnJvbnRlbmQtc2NyaXB0LWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciB3cGlsRnJvbnRlbmQgPSB7ImFqYXhVcmwiOiJcL3dwLWFkbWluXC9hZG1pbi1hamF4LnBocCIsInBvc3RJZCI6IjQ2MjUiLCJwb3N0VHlwZSI6InBvc3QiLCJvcGVuSW50ZXJuYWxJbk5ld1RhYiI6IjAiLCJvcGVuRXh0ZXJuYWxJbk5ld1RhYiI6IjAiLCJkaXNhYmxlQ2xpY2tzIjoiMCIsIm9wZW5MaW5rc1dpdGhKUyI6IjAiLCJ0cmFja0FsbEVsZW1lbnRDbGlja3MiOiIwIiwiY2xpY2tzSTE4biI6eyJpbWFnZU5vVGV4dCI6IkltYWdlIGluIGxpbms6IE5vIFRleHQiLCJpbWFnZVRleHQiOiJJbWFnZSBUaXRsZTogIiwibm9UZXh0IjoiTm8gQW5jaG9yIFRleHQgRm91bmQifX07Ci8qIF1dPiAqLwo8L3NjcmlwdD4KPHNjcmlwdCAgIHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPScvd3AtY29udGVudC9wbHVnaW5zL2xpbmstd2hpc3Blci1wcmVtaXVtL2pzL2Zyb250ZW5kLmpzP3Zlcj0xNjY0NzEyNzU3JyBpZD0nd3BpbC1mcm9udGVuZC1zY3JpcHQtanMnPjwvc2NyaXB0Pgo8c2NyaXB0ICAgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9Jy93cC1jb250ZW50L3BsdWdpbnMvZGl2aS0xMDAtaGFtYnVyZ2VyLW1lbnUvYXNzZXRzL2pzL3NjcmlwdHMuanM/dmVyPTIwMTYwNjAyJyBpZD0nY3VzdG9tLWhhbWJ1cmdlci1tZW51cy1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBpZD0nbWFpbGNoaW1wLXdvb2NvbW1lcmNlLWpzLWV4dHJhJz4KLyogPCFbQ0RBVEFbICovCnZhciBtYWlsY2hpbXBfcHVibGljX2RhdGEgPSB7InNpdGVfdXJsIjoiLyIsImFqYXhfdXJsIjoiL1wvd3AtYWRtaW5cL2FkbWluLWFqYXgucGhwIiwiZGlzYWJsZV9jYXJ0cyI6IiIsInN1YnNjcmliZXJzX29ubHkiOiIiLCJsYW5ndWFnZSI6ImVuIiwiYWxsb3dlZF90b19zZXRfY29va2llcyI6IjEifTsKLyogXV0+ICovCjwvc2NyaXB0Pgo8c2NyaXB0ICAgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9Jy93cC1jb250ZW50L3BsdWdpbnMvbWFpbGNoaW1wLWZvci13b29jb21tZXJjZS9wdWJsaWMvanMvbWFpbGNoaW1wLXdvb2NvbW1lcmNlLXB1YmxpYy5taW4uanM/dmVyPTIuNy41LjAxJyBpZD0nbWFpbGNoaW1wLXdvb2NvbW1lcmNlLWpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIGlkPSdkaXZpLWN1c3RvbS1zY3JpcHQtanMtZXh0cmEnPgovKiA8IVtDREFUQVsgKi8KdmFyIERJVkkgPSB7Iml0ZW1fY291bnQiOiIlZCBJdGVtIiwiaXRlbXNfY291bnQiOiIlZCBJdGVtcyJ9Owp2YXIgZXRfYnVpbGRlcl91dGlsc19wYXJhbXMgPSB7ImNvbmRpdGlvbiI6eyJkaXZpVGhlbWUiOnRydWUsImV4dHJhVGhlbWUiOmZhbHNlfSwic2Nyb2xsTG9jYXRpb25zIjpbImFwcCIsInRvcCJdLCJidWlsZGVyU2Nyb2xsTG9jYXRpb25zIjp7ImRlc2t0b3AiOiJhcHAiLCJ0YWJsZXQiOiJhcHAiLCJwaG9uZSI6ImFwcCJ9LCJvbmxvYWRTY3JvbGxMb2NhdGlvbiI6ImFwcCIsImJ1aWxkZXJUeXBlIjoiZmUifTsKdmFyIGV0X2Zyb250ZW5kX3NjcmlwdHMgPSB7ImJ1aWxkZXJDc3NDb250YWluZXJQcmVmaXgiOiIjZXQtYm9jIiwiYnVpbGRlckNzc0xheW91dFByZWZpeCI6IiNldC1ib2MgLmV0LWwifTsKdmFyIGV0X3BiX2N1c3RvbSA9IHsiYWpheHVybCI6Ii9cL3dwLWFkbWluXC9hZG1pbi1hamF4LnBocCIsImltYWdlc191cmkiOiIvXC93cC1jb250ZW50XC90aGVtZXNcL0RpdmlcL2ltYWdlcyIsImJ1aWxkZXJfaW1hZ2VzX3VyaSI6Ii9cL3dwLWNvbnRlbnRcL3RoZW1lc1wvRGl2aVwvaW5jbHVkZXNcL2J1aWxkZXJcL2ltYWdlcyIsImV0X2Zyb250ZW5kX25vbmNlIjoiNDBlN2VjZjA4MSIsInN1YnNjcmlwdGlvbl9mYWlsZWQiOiJQbGVhc2UsIGNoZWNrIHRoZSBmaWVsZHMgYmVsb3cgdG8gbWFrZSBzdXJlIHlvdSBlbnRlcmVkIHRoZSBjb3JyZWN0IGluZm9ybWF0aW9uLiIsImV0X2FiX2xvZ19ub25jZSI6ImVlMThmNjYzNTEiLCJmaWxsX21lc3NhZ2UiOiJQbGVhc2UsIGZpbGwgaW4gdGhlIGZvbGxvd2luZyBmaWVsZHM6IiwiY29udGFjdF9lcnJvcl9tZXNzYWdlIjoiUGxlYXNlLCBmaXggdGhlIGZvbGxvd2luZyBlcnJvcnM6IiwiaW52YWxpZCI6IkludmFsaWQgZW1haWwiLCJjYXB0Y2hhIjoiQ2FwdGNoYSIsInByZXYiOiJQcmV2IiwicHJldmlvdXMiOiJQcmV2aW91cyIsIm5leHQiOiJOZXh0Iiwid3JvbmdfY2FwdGNoYSI6IllvdSBlbnRlcmVkIHRoZSB3cm9uZyBudW1iZXIgaW4gY2FwdGNoYS4iLCJ3cm9uZ19jaGVja2JveCI6IkNoZWNrYm94IiwiaWdub3JlX3dheXBvaW50cyI6Im5vIiwiaXNfZGl2aV90aGVtZV91c2VkIjoiMSIsIndpZGdldF9zZWFyY2hfc2VsZWN0b3IiOiIud2lkZ2V0X3NlYXJjaCIsImFiX3Rlc3RzIjpbXSwiaXNfYWJfdGVzdGluZ19hY3RpdmUiOiIiLCJwYWdlX2lkIjoiNDYyNSIsInVuaXF1ZV90ZXN0X2lkIjoiIiwiYWJfYm91bmNlX3JhdGUiOiI1IiwiaXNfY2FjaGVfcGx1Z2luX2FjdGl2ZSI6Im5vIiwiaXNfc2hvcnRjb2RlX3RyYWNraW5nIjoib2ZmIiwidGlueW1jZV91cmkiOiIvXC93cC1jb250ZW50XC90aGVtZXNcL0RpdmlcL2luY2x1ZGVzXC9idWlsZGVyXC9mcm9udGVuZC1idWlsZGVyXC9hc3NldHNcL3ZlbmRvcnMiLCJ3YXlwb2ludHNfb3B0aW9ucyI6W119Owp2YXIgZXRfcGJfYm94X3NoYWRvd19lbGVtZW50cyA9IFtdOwovKiBdXT4gKi8KPC9zY3JpcHQ+CjxzY3JpcHQgICB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nL3dwLWNvbnRlbnQvdGhlbWVzL0RpdmkvanMvc2NyaXB0cy5taW4uanM/dmVyPTQuMTguMCcgaWQ9J2RpdmktY3VzdG9tLXNjcmlwdC1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgICB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nL3dwLWNvbnRlbnQvdGhlbWVzL0RpdmkvaW5jbHVkZXMvYnVpbGRlci9mZWF0dXJlL2R5bmFtaWMtYXNzZXRzL2Fzc2V0cy9qcy9qcXVlcnkuZml0dmlkcy5qcz92ZXI9NC4xOC4wJyBpZD0nZml0dmlkcy1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgICB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nL3dwLWNvbnRlbnQvcGx1Z2lucy93b29jb21tZXJjZS1tdWx0aWxpbmd1YWwvcmVzL2pzL2Zyb250LXNjcmlwdHMubWluLmpzP3Zlcj01LjAuMicgaWQ9J3djbWwtZnJvbnQtc2NyaXB0cy1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBpZD0nY2FydC13aWRnZXQtanMtZXh0cmEnPgovKiA8IVtDREFUQVsgKi8KdmFyIGFjdGlvbnMgPSB7ImlzX2xhbmdfc3dpdGNoZWQiOiIwIiwiZm9yY2VfcmVzZXQiOiIwIn07Ci8qIF1dPiAqLwo8L3NjcmlwdD4KPHNjcmlwdCAgIHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPScvd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLW11bHRpbGluZ3VhbC9yZXMvanMvY2FydF93aWRnZXQubWluLmpzP3Zlcj01LjAuMicgaWQ9J2NhcnQtd2lkZ2V0LWpzJz48L3NjcmlwdD4KPHNjcmlwdCAgIHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPScvd3AtY29udGVudC9wbHVnaW5zL3dvb2NvbW1lcmNlLWdhdGV3YXktcGF5cGFsLWV4cHJlc3MtY2hlY2tvdXQvYXNzZXRzL2pzL3djLWdhdGV3YXktcHBlYy1vcmRlci1yZXZpZXcuanM/dmVyPTIuMS4zJyBpZD0nd2MtZ2F0ZXdheS1wcGVjLW9yZGVyLXJldmlldy1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgICB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nL3dwLWNvbnRlbnQvdGhlbWVzL0RpdmkvY29yZS9hZG1pbi9qcy9jb21tb24uanM/dmVyPTQuMTguMCcgaWQ9J2V0LWNvcmUtY29tbW9uLWpzJz48L3NjcmlwdD4KPHNjcmlwdCAgIHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPScvd3AtY29udGVudC9wbHVnaW5zL3B3YS1mb3Itd3AvYXNzZXRzL2pzL3B3YWZvcndwLXZpZGVvLmpzP3Zlcj0xLjcuNDknIGlkPSdwd2Fmb3J3cC12aWRlby1qcy1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgICB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nL3dwLWNvbnRlbnQvcGx1Z2lucy9wd2EtZm9yLXdwL2Fzc2V0cy9qcy9wd2Fmb3J3cC1kb3dubG9hZC5qcz92ZXI9MS43LjQ5JyBpZD0ncHdhZm9yd3AtZG93bmxvYWQtanMtanMnPjwvc2NyaXB0Pgo8c2NyaXB0ICAgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHBzOi9wd2EtcmVnaXN0ZXItc3cuanM/dmVyPTEuNy40OScgaWQ9J3B3YS1tYWluLXNjcmlwdC1qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSdodHRwczovL3N0YXRzLndwLmNvbS9lLTIwMjI0MS5qcycgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQ+Cglfc3RxID0gd2luZG93Ll9zdHEgfHwgW107Cglfc3RxLnB1c2goWyAndmlldycsIHt2OidleHQnLGo6JzE6MTEuMy4yJyxibG9nOicxNTU5OTc0MTgnLHBvc3Q6JzQ2MjUnLHR6OicwJyxzcnY6Jy8nfSBdKTsKCV9zdHEucHVzaChbICdjbGlja1RyYWNrZXJJbml0JywgJzE1NTk5NzQxOCcsICc0NjI1JyBdKTsKPC9zY3JpcHQ+CgkKCTwvYm9keT4KPC9odG1sPgoKCQog"}},"time_used":2213,"timings":{"blocked":-1,"dns":220,"connect":93,"send":0,"wait":1406,"receive":306,"ssl":187},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/woo-gutenberg-products-block/build/wc-blocks-vendors-style.css?ver=8.6.0","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.592Z","timestamp":1785148618592,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/woo-gutenberg-products-block/build/wc-blocks-vendors-style.css?ver=8.6.0 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 10435\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:12 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":10435,"size_decoded":10645,"mime_type":"text/css","magic":"ASCII text, with very long lines (10435), with no line terminators","md5":"27a91498e22d4778e559dd13a12c6ab6","sha1":"9868807cc628fab1cc5ccb6f6c53934e6e9303b4","sha256":"4a25eb6972f4a513da7ead5d8c0f74832ed42b1ae5e1f13ed3ea36f0865a59c9","sha512":"5b02b02db3bc24be1626172eee38338b2344473b7e1c97ebf439f7e6e1923ec046c5db5458d638303891185f792614dfedec2d4d91669fe923f044d23db6df7c","ssdeep":"192:WnCAp0Kgy72Mn8bICTRSNVjVi6Uh8jSj5wjvj0d78RYTODlOUnDlnj6Dl6wK4B4H:dCH/2Ij03ApODH7yT","tlshash":"db22ee6154402e26b4e2ef591bb0f81727e4caa5dec3a5dee60351d4cfcb46a0d132db","first_seen":"2023-04-05T05:36:56Z","last_seen":"2026-08-11T21:16:48.283242Z","times_seen":2312,"resource_available":false,"data":"LmNvbXBvbmVudHMtY3VzdG9tLXNlbGVjdC1jb250cm9se3Bvc2l0aW9uOnJlbGF0aXZlfS5jb21wb25lbnRzLWN1c3RvbS1zZWxlY3QtY29udHJvbF9fbGFiZWx7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjhweH0uY29tcG9uZW50cy1jdXN0b20tc2VsZWN0LWNvbnRyb2xfX2J1dHRvbntib3JkZXI6MXB4IHNvbGlkICM3NTc1NzU7Ym9yZGVyLXJhZGl1czoycHg7bWluLWhlaWdodDozMHB4O21pbi13aWR0aDoxMzBweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmxlZnR9LmNvbXBvbmVudHMtY3VzdG9tLXNlbGVjdC1jb250cm9sX19idXR0b24uY29tcG9uZW50cy1jdXN0b20tc2VsZWN0LWNvbnRyb2xfX2J1dHRvbntwYWRkaW5nLXJpZ2h0OjI0cHh9LmNvbXBvbmVudHMtY3VzdG9tLXNlbGVjdC1jb250cm9sX19idXR0b246Zm9jdXM6bm90KDpkaXNhYmxlZCl7Ym9yZGVyLWNvbG9yOnZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKTtib3gtc2hhZG93OjAgMCAwIDFweCB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcil9LmNvbXBvbmVudHMtY3VzdG9tLXNlbGVjdC1jb250cm9sX19idXR0b24gLmNvbXBvbmVudHMtY3VzdG9tLXNlbGVjdC1jb250cm9sX19idXR0b24taWNvbntoZWlnaHQ6MTAwJTtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0uY29tcG9uZW50cy1jdXN0b20tc2VsZWN0LWNvbnRyb2xfX21lbnV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgIzFlMWUxZTtib3JkZXItcmFkaXVzOjJweDttYXgtaGVpZ2h0OjQwMHB4O21pbi13aWR0aDoxMDAlO291dGxpbmU6bm9uZTtvdmVyZmxvdzphdXRvO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOm5vbmU7ei1pbmRleDoxMDAwMDAwfS5jb21wb25lbnRzLWN1c3RvbS1zZWxlY3QtY29udHJvbF9fbWVudVthcmlhLWhpZGRlbj10cnVlXXtkaXNwbGF5Om5vbmV9LmNvbXBvbmVudHMtY3VzdG9tLXNlbGVjdC1jb250cm9sX19pdGVte2FsaWduLWl0ZW1zOmNlbnRlcjtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5OmZsZXg7bGluZS1oZWlnaHQ6MjhweDtsaXN0LXN0eWxlLXR5cGU6bm9uZTtwYWRkaW5nOjhweH0uY29tcG9uZW50cy1jdXN0b20tc2VsZWN0LWNvbnRyb2xfX2l0ZW0uaXMtaGlnaGxpZ2h0ZWR7YmFja2dyb3VuZDojZGRkfS5jb21wb25lbnRzLWN1c3RvbS1zZWxlY3QtY29udHJvbF9faXRlbSAuY29tcG9uZW50cy1jdXN0b20tc2VsZWN0LWNvbnRyb2xfX2l0ZW0taWNvbnttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDowfS5jb21wb25lbnRzLWN1c3RvbS1zZWxlY3QtY29udHJvbF9faXRlbTpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uY29tcG9uZW50cy1zbmFja2JhcntiYWNrZ3JvdW5kLWNvbG9yOiMxZTFlMWU7Ym9yZGVyLXJhZGl1czoycHg7Ym94LXNoYWRvdzowIDJweCA0cHggcmdiYSgwLDAsMCwuMyk7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOiNmZmY7Y3Vyc29yOnBvaW50ZXI7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsU2Vnb2UgVUksUm9ib3RvLE94eWdlbi1TYW5zLFVidW50dSxDYW50YXJlbGwsSGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZjtmb250LXNpemU6MTNweDttYXgtd2lkdGg6NjAwcHg7cGFkZGluZzoxNnB4IDI0cHg7cG9pbnRlci1ldmVudHM6YXV0bzt3aWR0aDoxMDAlfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpey5jb21wb25lbnRzLXNuYWNrYmFye3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudH19LmNvbXBvbmVudHMtc25hY2tiYXI6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAxcHggI2ZmZiwwIDAgMCAzcHggdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpfS5jb21wb25lbnRzLXNuYWNrYmFyLmNvbXBvbmVudHMtc25hY2tiYXItZXhwbGljaXQtZGlzbWlzc3tjdXJzb3I6ZGVmYXVsdH0uY29tcG9uZW50cy1zbmFja2JhciAuY29tcG9uZW50cy1zbmFja2Jhcl9fY29udGVudC13aXRoLWljb257bWFyZ2luLWxlZnQ6MjRweH0uY29tcG9uZW50cy1zbmFja2JhciAuY29tcG9uZW50cy1zbmFja2Jhcl9faWNvbntsZWZ0OjI4cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjI0cHh9LmNvbXBvbmVudHMtc25hY2tiYXIgLmNvbXBvbmVudHMtc25hY2tiYXJfX2Rpc21pc3MtYnV0dG9ue2N1cnNvcjpwb2ludGVyO21hcmdpbi1sZWZ0OjMycHh9LmNvbXBvbmVudHMtc25hY2tiYXJfX2FjdGlvbi5jb21wb25lbnRzLWJ1dHRvbntjb2xvcjojZmZmO2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OmF1dG87bGluZS1oZWlnaHQ6MS40O21hcmdpbi1sZWZ0OjMycHg7cGFkZGluZzowfS5jb21wb25lbnRzLXNuYWNrYmFyX19hY3Rpb24uY29tcG9uZW50cy1idXR0b246bm90KDpkaXNhYmxlZCk6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKTpub3QoLmlzLXNlY29uZGFyeSl7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5jb21wb25lbnRzLXNuYWNrYmFyX19hY3Rpb24uY29tcG9uZW50cy1idXR0b246bm90KDpkaXNhYmxlZCk6bm90KFthcmlhLWRpc2FibGVkPXRydWVdKTpub3QoLmlzLXNlY29uZGFyeSk6Zm9jdXN7Ym94LXNoYWRvdzpub25lO2NvbG9yOiNmZmY7b3V0bGluZToxcHggZG90dGVkICNmZmZ9LmNvbXBvbmVudHMtc25hY2tiYXJfX2FjdGlvbi5jb21wb25lbnRzLWJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0pOm5vdCguaXMtc2Vjb25kYXJ5KTpob3Zlcntjb2xvcjp2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcil9LmNvbXBvbmVudHMtc25hY2tiYXJfX2NvbnRlbnR7YWxpZ24taXRlbXM6YmFzZWxpbmU7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2xpbmUtaGVpZ2h0OjEuNH0uY29tcG9uZW50cy1zbmFja2Jhci1saXN0e2JveC1zaXppbmc6Ym9yZGVyLWJveDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7ei1pbmRleDoxMDAwMDB9LmNvbXBvbmVudHMtc25hY2tiYXItbGlzdF9fbm90aWNlLWNvbnRhaW5lcntwYWRkaW5nLXRvcDo4cHg7cG9zaXRpb246cmVsYXRpdmV9LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbHt3aWR0aDoxMDAlfWlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXRbdHlwZT10ZXh0XXtib3JkZXI6bm9uZTtib3gtc2hhZG93Om5vbmU7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6aW5oZXJpdDttYXJnaW46MDttaW4taGVpZ2h0OmF1dG87cGFkZGluZzoycHg7d2lkdGg6MTAwJX1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXtpbnB1dC5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX2lucHV0W3R5cGU9dGV4dF17Zm9udC1zaXplOjEzcHh9fWlucHV0LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9faW5wdXRbdHlwZT10ZXh0XTpmb2N1c3tib3gtc2hhZG93Om5vbmU7b3V0bGluZTpub25lfS5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX3N1Z2dlc3Rpb25zLWNvbnRhaW5lcnthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2JvcmRlcjoxcHggc29saWQgIzc1NzU3NTtib3JkZXItcmFkaXVzOjJweDtib3gtc2hhZG93OjAgMCAwIHRyYW5zcGFyZW50O2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtmb250LWZhbWlseTotYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxTZWdvZSBVSSxSb2JvdG8sT3h5Z2VuLVNhbnMsVWJ1bnR1LENhbnRhcmVsbCxIZWx2ZXRpY2EgTmV1ZSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0Om5vcm1hbDttYXJnaW46MCAwIDhweDtwYWRkaW5nOjRweDt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjFzIGxpbmVhcjt3aWR0aDoxMDAlfUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9fc3VnZ2VzdGlvbnMtY29udGFpbmVye3RyYW5zaXRpb24tZGVsYXk6MHM7dHJhbnNpdGlvbi1kdXJhdGlvbjowc319QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9fc3VnZ2VzdGlvbnMtY29udGFpbmVye2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0Om5vcm1hbH19LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9fc3VnZ2VzdGlvbnMtY29udGFpbmVyOmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7Ym94LXNoYWRvdzowIDAgMCAxcHggdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO291dGxpbmU6MnB4IHNvbGlkIHRyYW5zcGFyZW50fS5jb21wb25lbnRzLWNvbWJvYm94LWNvbnRyb2xfX3N1Z2dlc3Rpb25zLWNvbnRhaW5lcjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDMwLDMwLDMwLC42Mil9LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9fc3VnZ2VzdGlvbnMtY29udGFpbmVyOjotbW96LXBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMzAsMzAsMzAsLjYyKTtvcGFjaXR5OjF9LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9fc3VnZ2VzdGlvbnMtY29udGFpbmVyOi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDMwLDMwLDMwLC42Mil9LmNvbXBvbmVudHMtY29tYm9ib3gtY29udHJvbF9fc3VnZ2VzdGlvbnMtY29udGFpbmVyOmZvY3VzLXdpdGhpbntib3JkZXItY29sb3I6dmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKTtvdXRsaW5lOjJweCBzb2xpZCB0cmFuc3BhcmVudH0uY29tcG9uZW50cy1jb21ib2JveC1jb250cm9sX19yZXNldC5jb21wb25lbnRzLWJ1dHRvbntkaXNwbGF5OmZsZXg7aGVpZ2h0OjI0cHg7bWluLXdpZHRoOjI0cHg7cGFkZGluZzowfS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lcnthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyOjFweCBzb2xpZCAjNzU3NTc1O2JvcmRlci1yYWRpdXM6MnB4O2JveC1zaGFkb3c6MCAwIDAgdHJhbnNwYXJlbnQ7Y3Vyc29yOnRleHQ7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFNlZ29lIFVJLFJvYm90byxPeHlnZW4tU2FucyxVYnVudHUsQ2FudGFyZWxsLEhlbHZldGljYSBOZXVlLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6bm9ybWFsO21hcmdpbjowIDAgOHB4O3BhZGRpbmc6MnB4IDRweDt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjFzIGxpbmVhcjt3aWR0aDoxMDAlfUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVye3RyYW5zaXRpb24tZGVsYXk6MHM7dHJhbnNpdGlvbi1kdXJhdGlvbjowc319QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVye2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0Om5vcm1hbH19LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyOmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7Ym94LXNoYWRvdzowIDAgMCAxcHggdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO291dGxpbmU6MnB4IHNvbGlkIHRyYW5zcGFyZW50fS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lcjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDMwLDMwLDMwLC42Mil9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyOjotbW96LXBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMzAsMzAsMzAsLjYyKTtvcGFjaXR5OjF9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyOi1tcy1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjpyZ2JhKDMwLDMwLDMwLC42Mil9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyLmlzLWRpc2FibGVke2JhY2tncm91bmQ6I2RkZDtib3JkZXItY29sb3I6I2RkZH0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dC1jb250YWluZXIuaXMtYWN0aXZle2JvcmRlci1jb2xvcjp2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7Ym94LXNoYWRvdzowIDAgMCAxcHggdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO291dGxpbmU6MnB4IHNvbGlkIHRyYW5zcGFyZW50fS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lciBpbnB1dFt0eXBlPXRleHRdLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXR7YmFja2dyb3VuZDppbmhlcml0O2JvcmRlcjowO2JveC1zaGFkb3c6bm9uZTtjb2xvcjojMWUxZTFlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZsZXg6MTtmb250LXNpemU6MTZweDttYXJnaW4tbGVmdDo0cHg7bWF4LXdpZHRoOjEwMCU7bWluLWhlaWdodDoyNHB4O21pbi13aWR0aDo1MHB4O3BhZGRpbmc6MDt3aWR0aDoxMDAlfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpey5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lciBpbnB1dFt0eXBlPXRleHRdLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXR7Zm9udC1zaXplOjEzcHh9fS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGQuaXMtYWN0aXZlIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lciBpbnB1dFt0eXBlPXRleHRdLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQsLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXQtY29udGFpbmVyIGlucHV0W3R5cGU9dGV4dF0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19pbnB1dDpmb2N1c3tib3gtc2hhZG93Om5vbmU7b3V0bGluZTpub25lfS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX2lucHV0LWNvbnRhaW5lciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbitpbnB1dFt0eXBlPXRleHRdLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9faW5wdXR7d2lkdGg6YXV0b30uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19sYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tYm90dG9tOjRweH0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19oZWxwe2NvbG9yOiM3NTc1NzU7Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWx9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW57Y29sb3I6IzFlMWUxZTtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjEzcHg7bWFyZ2luOjJweCA0cHggMnB4IDA7bWF4LXdpZHRoOjEwMCV9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtc3VjY2VzcyAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19yZW1vdmUtdG9rZW4sLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtc3VjY2VzcyAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi10ZXh0e2JhY2tncm91bmQ6IzRhYjg2Nn0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi5pcy1lcnJvciAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19yZW1vdmUtdG9rZW4sLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtZXJyb3IgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4tdGV4dHtiYWNrZ3JvdW5kOiNjYzE4MTh9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtdmFsaWRhdGluZyAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19yZW1vdmUtdG9rZW4sLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtdmFsaWRhdGluZyAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi10ZXh0e2NvbG9yOiM3NTc1NzV9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtYm9yZGVybGVzc3twYWRkaW5nOjAgMTZweCAwIDA7cG9zaXRpb246cmVsYXRpdmV9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtYm9yZGVybGVzcyAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi10ZXh0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpfS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuLmlzLWJvcmRlcmxlc3MgLmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fcmVtb3ZlLXRva2Vue2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6Izc1NzU3NTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDoxcHh9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtYm9yZGVybGVzcy5pcy1zdWNjZXNzIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuLXRleHR7Y29sb3I6IzRhYjg2Nn0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi5pcy1ib3JkZXJsZXNzLmlzLWVycm9yIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuLXRleHR7Ym9yZGVyLXJhZGl1czo0cHggMCAwIDRweDtjb2xvcjojY2MxODE4O3BhZGRpbmc6MCA0cHggMCA2cHh9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fdG9rZW4uaXMtYm9yZGVybGVzcy5pcy12YWxpZGF0aW5nIC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuLXRleHR7Y29sb3I6IzFlMWUxZX0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi5pcy1kaXNhYmxlZCAuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19yZW1vdmUtdG9rZW57Y3Vyc29yOmRlZmF1bHR9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fcmVtb3ZlLXRva2VuLmNvbXBvbmVudHMtYnV0dG9uLC5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuLXRleHR7YmFja2dyb3VuZDojZGRkO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDphdXRvO2xpbmUtaGVpZ2h0OjI0cHg7bWluLXdpZHRoOnVuc2V0O3RyYW5zaXRpb246YWxsIC4ycyBjdWJpYy1iZXppZXIoLjQsMSwuNCwxKX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3JlbW92ZS10b2tlbi5jb21wb25lbnRzLWJ1dHRvbiwuY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX190b2tlbi10ZXh0ey13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjBzO2FuaW1hdGlvbi1kZWxheTowczstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjoxbXM7YW5pbWF0aW9uLWR1cmF0aW9uOjFtczt0cmFuc2l0aW9uLWRlbGF5OjBzO3RyYW5zaXRpb24tZHVyYXRpb246MHN9fS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3Rva2VuLXRleHR7Ym9yZGVyLXJhZGl1czoycHggMCAwIDJweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDAgMCA4cHg7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fcmVtb3ZlLXRva2VuLmNvbXBvbmVudHMtYnV0dG9ue2JvcmRlci1yYWRpdXM6MCAycHggMnB4IDA7Y29sb3I6IzFlMWUxZTtjdXJzb3I6cG9pbnRlcjtsaW5lLWhlaWdodDoxMHB4O292ZXJmbG93OmluaXRpYWw7cGFkZGluZzowIDJweH0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19yZW1vdmUtdG9rZW4uY29tcG9uZW50cy1idXR0b246aG92ZXJ7Y29sb3I6IzFlMWUxZX0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9ucy1saXN0e2JvcmRlci10b3A6MXB4IHNvbGlkICM3NTc1NzU7ZmxleDoxIDAgMTAwJTtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjRweCAtNHB4IC00cHg7bWF4LWhlaWdodDo5ZW07bWluLXdpZHRoOjEwMCU7b3ZlcmZsb3cteTphdXRvO3BhZGRpbmc6MDt0cmFuc2l0aW9uOmFsbCAuMTVzIGVhc2UtaW4tb3V0fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbnMtbGlzdHt0cmFuc2l0aW9uLWRlbGF5OjBzO3RyYW5zaXRpb24tZHVyYXRpb246MHN9fS5jb21wb25lbnRzLWZvcm0tdG9rZW4tZmllbGRfX3N1Z2dlc3Rpb257Y29sb3I6Izc1NzU3NTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxM3B4O21hcmdpbjowO3BhZGRpbmc6NHB4IDhweH0uY29tcG9uZW50cy1mb3JtLXRva2VuLWZpZWxkX19zdWdnZXN0aW9uLmlzLXNlbGVjdGVke2JhY2tncm91bmQ6dmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO2NvbG9yOiNmZmZ9LmNvbXBvbmVudHMtZm9ybS10b2tlbi1maWVsZF9fc3VnZ2VzdGlvbi1tYXRjaHt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfQ=="}},"time_used":374,"timings":{"blocked":-1,"dns":0,"connect":93,"send":0,"wait":183,"receive":0,"ssl":98},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/et-cache/4625/et-divi-dynamic-tb-6728-4625.css?ver=1662279876","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.630Z","timestamp":1785148618630,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/et-cache/4625/et-divi-dynamic-tb-6728-4625.css?ver=1662279876 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=0\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 22888\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:16 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":22888,"size_decoded":23098,"mime_type":"text/css","magic":"ASCII text, with very long lines (10161)","md5":"2be1f71c2334e19fcb065aecd773f64b","sha1":"989e022eb5226fbb51cb7fa6ff9b4506b02ddc3b","sha256":"4658b9fbc04346d014a6da945779f367ce2983725ab5098674f1d0f25ec36988","sha512":"d881f1a2b28e4ddffdaceece8c53ffcb787bc4460f47fee6a6bdf8f1029b24a41a5f91e4fd5ab291720cee3c7e0bcd1a310a4ef16a85e7aecb126812d884245a","ssdeep":"192:/xFvLZ699uxB1Mh4AA7ABA2AcA4AAAGAaAHAHKktrxBQ8MCAumQ73fM3WsI6XepH:OkWsIwepSa","tlshash":"5ea2e14fa73337b63203d324fad5e2189786d1439ab90ee36c529a145fa520106f7daf","first_seen":"2026-07-27T08:11:28.929403Z","last_seen":"2026-07-27T10:37:50.399086Z","times_seen":3,"resource_available":false,"data":"LmV0X3BiX2JnX2xheW91dF9saWdodCAuZXRfcGJfcHJvbW9fYnV0dG9ue2NvbG9yOiMyZWEzZjJ9LmV0LXByb21ve2JhY2tncm91bmQtY29sb3I6IzFmNjU4MTtwYWRkaW5nOjQwcHggMCAyNXB4fS5ldC1wcm9tby1kZXNjcmlwdGlvbntmbG9hdDpsZWZ0O3BhZGRpbmc6MCA2MHB4O3dvcmQtd3JhcDpicmVhay13b3JkO3dpZHRoOjc1NHB4fS5ldC1wcm9tby1kZXNjcmlwdGlvbiBwe2NvbG9yOiNmZmZ9LmV0LXByb21vLWJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjIwcHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjM1KTtib3JkZXItcmFkaXVzOjVweDtwYWRkaW5nOjE0cHggMjBweDttYXJnaW4tdG9wOjIwcHg7ZmxvYXQ6bGVmdH0uZXRfcGJfcHJvbW97cGFkZGluZzo0MHB4IDYwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9LmV0X3BiX3Byb21vX2Rlc2NyaXB0aW9ue3BhZGRpbmctYm90dG9tOjIwcHg7cG9zaXRpb246cmVsYXRpdmV9LmV0X3BiX3Byb21vX2Rlc2NyaXB0aW9uIHA6bGFzdC1vZi10eXBle3BhZGRpbmctYm90dG9tOjB9LmV0X3BiX3Byb21vX2J1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztjb2xvcjppbmhlcml0fS5ldF9wYl9wcm9tb19idXR0b246aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmV0X3BiX3Byb21vX2J1dHRvbjpob3ZlcjphZnRlcntvcGFjaXR5OjE7bWFyZ2luLWxlZnQ6MH0uZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfcHJvbW8sLmV0X3BiX2NvbHVtbl8xXzMgLmV0X3BiX3Byb21vLC5ldF9wYl9jb2x1bW5fMV80IC5ldF9wYl9wcm9tbywuZXRfcGJfY29sdW1uXzFfNSAuZXRfcGJfcHJvbW8sLmV0X3BiX2NvbHVtbl8xXzYgLmV0X3BiX3Byb21vLC5ldF9wYl9jb2x1bW5fMl81IC5ldF9wYl9wcm9tbywuZXRfcGJfY29sdW1uXzNfNSAuZXRfcGJfcHJvbW97cGFkZGluZzo0MHB4fS5ldF9wYl9oYXNfYmdfaG92ZXIuZXRfcGJfcHJvbW86aG92ZXJ7cGFkZGluZzo0MHB4IDYwcHghaW1wb3J0YW50Oy13ZWJraXQtdHJhbnNpdGlvbjpwYWRkaW5nIC40cyBlYXNlLWluLW91dDt0cmFuc2l0aW9uOnBhZGRpbmcgLjRzIGVhc2UtaW4tb3V0fS5ldF9wYl9jb2x1bW5fMV8yIC5ldF9wYl9oYXNfYmdfaG92ZXIuZXRfcGJfcHJvbW86aG92ZXIsLmV0X3BiX2NvbHVtbl8xXzMgLmV0X3BiX2hhc19iZ19ob3Zlci5ldF9wYl9wcm9tbzpob3ZlciwuZXRfcGJfY29sdW1uXzFfNCAuZXRfcGJfaGFzX2JnX2hvdmVyLmV0X3BiX3Byb21vOmhvdmVyLC5ldF9wYl9jb2x1bW5fMV81IC5ldF9wYl9oYXNfYmdfaG92ZXIuZXRfcGJfcHJvbW86aG92ZXIsLmV0X3BiX2NvbHVtbl8xXzYgLmV0X3BiX2hhc19iZ19ob3Zlci5ldF9wYl9wcm9tbzpob3ZlciwuZXRfcGJfY29sdW1uXzJfNSAuZXRfcGJfaGFzX2JnX2hvdmVyLmV0X3BiX3Byb21vOmhvdmVyLC5ldF9wYl9jb2x1bW5fM181IC5ldF9wYl9oYXNfYmdfaG92ZXIuZXRfcGJfcHJvbW86aG92ZXJ7cGFkZGluZzo0MHB4IWltcG9ydGFudH0uZXRfcGJfbm9fYmdfaG92ZXIuZXRfcGJfcHJvbW86aG92ZXJ7cGFkZGluZzowIWltcG9ydGFudH1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX2hhc19iZ190YWJsZXQuZXRfcGJfcHJvbW97cGFkZGluZzo0MHB4IWltcG9ydGFudH0uZXRfcGJfbm9fYmdfdGFibGV0LmV0X3BiX3Byb21ve3BhZGRpbmc6MCFpbXBvcnRhbnR9LmV0X3BiX2JnX2xheW91dF9saWdodF90YWJsZXQgLmV0X3BiX3Byb21vX2J1dHRvbntjb2xvcjojMmVhM2YyfS5ldF9wYl9iZ19sYXlvdXRfZGFya190YWJsZXQgLmV0X3BiX3Byb21vX2J1dHRvbntjb2xvcjppbmhlcml0fX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmV0X3BiX3Byb21ve3BhZGRpbmc6NDBweH0uZXRfcGJfaGFzX2JnX3Bob25lLmV0X3BiX3Byb21ve3BhZGRpbmc6NDBweCFpbXBvcnRhbnR9LmV0X3BiX25vX2JnX3Bob25lLmV0X3BiX3Byb21ve3BhZGRpbmc6MCFpbXBvcnRhbnR9LmV0X3BiX2JnX2xheW91dF9saWdodF9waG9uZSAuZXRfcGJfcHJvbW9fYnV0dG9ue2NvbG9yOiMyZWEzZjJ9LmV0X3BiX2JnX2xheW91dF9kYXJrX3Bob25lIC5ldF9wYl9wcm9tb19idXR0b257Y29sb3I6aW5oZXJpdH19QG1lZGlhIChtYXgtd2lkdGg6NDc5cHgpey5ldF9wYl9wcm9tb3twYWRkaW5nOjQwcHh9fQouZXRfcGJfd2l0aF9ib3JkZXIgLmV0X3BiX2ltYWdlX3dyYXB7Ym9yZGVyOjAgc29saWQgIzMzM30uZXRfcGJfaW1hZ2V7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bztsaW5lLWhlaWdodDowfS5ldF9wYl9pbWFnZS5hbGlnbmNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0uZXRfcGJfaW1hZ2UuZXRfcGJfaGFzX292ZXJsYXkgYS5ldF9wYl9saWdodGJveF9pbWFnZXtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9pbWFnZXtkaXNwbGF5OmJsb2NrfS5ldF9wYl9pbWFnZSAuZXRfcGJfaW1hZ2Vfd3JhcHtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTAwJX0uZXRfcGJfaW1hZ2UgLmV0X3BiX2ltYWdlX3dyYXAgaW1nW3NyYyo9Ii5zdmciXXt3aWR0aDphdXRvfS5ldF9wYl9pbWFnZSBpbWd7cG9zaXRpb246cmVsYXRpdmV9LmV0X3BiX2ltYWdlX3N0aWNreXttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50O2Rpc3BsYXk6aW5oZXJpdH0uZXRfcGJfaW1hZ2UuZXRfcGJfaGFzX292ZXJsYXkgLmV0X3BiX2ltYWdlX3dyYXA6aG92ZXIgLmV0X292ZXJsYXl7ei1pbmRleDozO29wYWNpdHk6MX1AbWVkaWEgKG1pbi13aWR0aDo5ODFweCl7LmV0X3BiX3NlY3Rpb25fc3RpY2t5LC5ldF9wYl9zZWN0aW9uX3N0aWNreS5ldF9wYl9ib3R0b21fZGl2aWRlciAuZXRfcGJfcm93Om50aC1sYXN0LWNoaWxkKDIpLC5ldF9wYl9zZWN0aW9uX3N0aWNreSAuZXRfcGJfY29sdW1uX3NpbmdsZSwuZXRfcGJfc2VjdGlvbl9zdGlja3kgLmV0X3BiX3Jvdy5ldC1sYXN0LWNoaWxkLC5ldF9wYl9zZWN0aW9uX3N0aWNreSAuZXRfcGJfcm93Omxhc3QtY2hpbGQsLmV0X3BiX3NlY3Rpb25fc3RpY2t5IC5ldF9wYl9zcGVjaWFsdHlfY29sdW1uIC5ldF9wYl9yb3dfaW5uZXIuZXQtbGFzdC1jaGlsZCwuZXRfcGJfc2VjdGlvbl9zdGlja3kgLmV0X3BiX3NwZWNpYWx0eV9jb2x1bW4gLmV0X3BiX3Jvd19pbm5lcjpsYXN0LWNoaWxke3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX2ltYWdlX3N0aWNreV90YWJsZXR7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudDtkaXNwbGF5OmluaGVyaXR9LmV0X3BiX3NlY3Rpb25fc3RpY2t5X21vYmlsZSwuZXRfcGJfc2VjdGlvbl9zdGlja3lfbW9iaWxlLmV0X3BiX2JvdHRvbV9kaXZpZGVyIC5ldF9wYl9yb3c6bnRoLWxhc3QtY2hpbGQoMiksLmV0X3BiX3NlY3Rpb25fc3RpY2t5X21vYmlsZSAuZXRfcGJfY29sdW1uX3NpbmdsZSwuZXRfcGJfc2VjdGlvbl9zdGlja3lfbW9iaWxlIC5ldF9wYl9yb3cuZXQtbGFzdC1jaGlsZCwuZXRfcGJfc2VjdGlvbl9zdGlja3lfbW9iaWxlIC5ldF9wYl9yb3c6bGFzdC1jaGlsZCwuZXRfcGJfc2VjdGlvbl9zdGlja3lfbW9iaWxlIC5ldF9wYl9zcGVjaWFsdHlfY29sdW1uIC5ldF9wYl9yb3dfaW5uZXIuZXQtbGFzdC1jaGlsZCwuZXRfcGJfc2VjdGlvbl9zdGlja3lfbW9iaWxlIC5ldF9wYl9zcGVjaWFsdHlfY29sdW1uIC5ldF9wYl9yb3dfaW5uZXI6bGFzdC1jaGlsZHtwYWRkaW5nLWJvdHRvbTowIWltcG9ydGFudH0uZXRfcGJfc2VjdGlvbl9zdGlja3kgLmV0X3BiX3Jvdy5ldC1sYXN0LWNoaWxkIC5ldF9wYl9jb2x1bW4uZXRfcGJfcm93X3N0aWNreS5ldC1sYXN0LWNoaWxkLC5ldF9wYl9zZWN0aW9uX3N0aWNreSAuZXRfcGJfcm93Omxhc3QtY2hpbGQgLmV0X3BiX2NvbHVtbi5ldF9wYl9yb3dfc3RpY2t5Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5ldF9wYl9pbWFnZV9ib3R0b21fc3BhY2VfdGFibGV0e21hcmdpbi1ib3R0b206MzBweCFpbXBvcnRhbnQ7ZGlzcGxheTpibG9ja30uZXRfYWx3YXlzX2NlbnRlcl9vbl9tb2JpbGV7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50O21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50O21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH19QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey5ldF9wYl9pbWFnZV9zdGlja3lfcGhvbmV7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudDtkaXNwbGF5OmluaGVyaXR9LmV0X3BiX2ltYWdlX2JvdHRvbV9zcGFjZV9waG9uZXttYXJnaW4tYm90dG9tOjMwcHghaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2t9fQouZXRfb3ZlcmxheXt6LWluZGV4Oi0xO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuOSk7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuM3M7dHJhbnNpdGlvbjphbGwgLjNzO2JvcmRlcjoxcHggc29saWQgI2U1ZTVlNTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkfS5ldF9vdmVybGF5OmJlZm9yZXtjb2xvcjojMmVhM2YyO2NvbnRlbnQ6IlxFMDUwIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtmb250LXNpemU6MzJweDstd2Via2l0LXRyYW5zaXRpb246YWxsIC40czt0cmFuc2l0aW9uOmFsbCAuNHN9LmV0X3BvcnRmb2xpb19pbWFnZSwuZXRfc2hvcF9pbWFnZXtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrfS5ldF9wYl9oYXNfb3ZlcmxheTpub3QoLmV0X3BiX2ltYWdlKTpob3ZlciAuZXRfb3ZlcmxheSwuZXRfcG9ydGZvbGlvX2ltYWdlOmhvdmVyIC5ldF9vdmVybGF5LC5ldF9zaG9wX2ltYWdlOmhvdmVyIC5ldF9vdmVybGF5e3otaW5kZXg6MztvcGFjaXR5OjF9I2llNyAuZXRfb3ZlcmxheSwjaWU4IC5ldF9vdmVybGF5e2Rpc3BsYXk6bm9uZX0uZXRfcGJfbW9kdWxlLmV0X3BiX2hhc19vdmVybGF5e3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9tb2R1bGUuZXRfcGJfaGFzX292ZXJsYXkgLmV0X292ZXJsYXksYXJ0aWNsZS5ldF9wYl9oYXNfb3ZlcmxheXtib3JkZXI6bm9uZX0KLmV0X3BiX3ByaWNpbmdfY29udGVudCwuZXRfcGJfcHJpY2luZ19oZWFkaW5ne3dvcmQtd3JhcDpicmVhay13b3JkfS5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5ne2JhY2tncm91bmQtY29sb3I6IzJlYTNmMn0uZXRfcGJfc3Vte2NvbG9yOiMyZWEzZjJ9LmV0X3BiX3ByaWNpbmd7bGlzdC1zdHlsZTpub25lIWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OmluaGVyaXQhaW1wb3J0YW50fS5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbiwuZXRfcGJfcHJpY2luZyBsaSBhe2NvbG9yOiMyZWEzZjJ9LmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDUpfS5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbjpob3ZlcjphZnRlcntvcGFjaXR5OjE7bWFyZ2luLWxlZnQ6MH0uZXRfcGJfcHJpY2luZyBsaSBzcGFuOmJlZm9yZXtib3JkZXItY29sb3I6IzJlYTNmMn0uZXRfcGJfcHJpY2luZ190YWJsZXtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0fS5ldF9wYl9wcmljaW5nX3RhYmxlX3dyYXB7ZGlzcGxheTpibG9jaztkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwOy13ZWJraXQtYm94LWFsaWduOnN0YXJ0Oy1tcy1mbGV4LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LmV0X3BiX3ByaWNpbmdfdGFibGV7ZmxvYXQ6bGVmdDt3aWR0aDozMy4zMyU7bWF4LXdpZHRoOjM0JTstbXMtZmxleDoxIDEgYXV0bzstd2Via2l0LWJveC1mbGV4OjE7ZmxleDoxIDEgYXV0bztib3JkZXI6MXB4IHNvbGlkICNiZWJlYmU7YmFja2dyb3VuZC1jb2xvcjojZmNmY2ZjO3BhZGRpbmctYm90dG9tOjMwcHg7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjMwcHggLTFweCAwIDA7cG9zaXRpb246cmVsYXRpdmV9LmV0X3BiX3ByaWNpbmc+LmJveC1zaGFkb3ctb3ZlcmxheXt6LWluZGV4OjExfS5ldF9wYl9mZWF0dXJlZF90YWJsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7bWFyZ2luLXRvcDowO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTA7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCAxMnB4IHJnYmEoMCwwLDAsLjEpO2JveC1zaGFkb3c6MCAwIDEycHggcmdiYSgwLDAsMCwuMSl9LmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX3ByaWNpbmdfdGFibGV7d2lkdGg6MjUlO21heC13aWR0aDoyNS41JX0uZXRfcGJfY29sdW1uXzRfNCAuZXRfcGJfcHJpY2luZ18zIC5ldF9wYl9wcmljaW5nX3RhYmxle3dpZHRoOjMzLjMzJTttYXgtd2lkdGg6MzQlfS5ldF9wYl9jb2x1bW5fMV8yIC5ldF9wYl9wcmljaW5nX3RhYmxlLC5ldF9wYl9jb2x1bW5fMl8zIC5ldF9wYl9wcmljaW5nX3RhYmxlLC5ldF9wYl9jb2x1bW5fM181IC5ldF9wYl9wcmljaW5nX3RhYmxlLC5ldF9wYl9wcmljaW5nXzIgLmV0X3BiX3ByaWNpbmdfdGFibGV7d2lkdGg6NTAlO21heC13aWR0aDo1MC41JX0uZXRfcGJfY29sdW1uXzFfMyAuZXRfcGJfcHJpY2luZ190YWJsZSwuZXRfcGJfY29sdW1uXzFfNCAuZXRfcGJfcHJpY2luZ190YWJsZSwuZXRfcGJfY29sdW1uXzFfNSAuZXRfcGJfcHJpY2luZ190YWJsZSwuZXRfcGJfY29sdW1uXzFfNiAuZXRfcGJfcHJpY2luZ190YWJsZSwuZXRfcGJfY29sdW1uXzJfNSAuZXRfcGJfcHJpY2luZ190YWJsZSwuZXRfcGJfY29sdW1uXzNfOCAuZXRfcGJfcHJpY2luZ190YWJsZSwuZXRfcGJfcHJpY2luZ18xIC5ldF9wYl9wcmljaW5nX3RhYmxle3dpZHRoOjEwMCU7bWF4LXdpZHRoOm5vbmU7bWFyZ2luOjAgMCAzMHB4fS5ldF9wYl9jb2x1bW5fMV8zIC5ldF9wYl9wcmljaW5nX3RhYmxlLmV0LWxhc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8xXzMgLmV0X3BiX3ByaWNpbmdfdGFibGU6bGFzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzFfNCAuZXRfcGJfcHJpY2luZ190YWJsZS5ldC1sYXN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fMV80IC5ldF9wYl9wcmljaW5nX3RhYmxlOmxhc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8xXzUgLmV0X3BiX3ByaWNpbmdfdGFibGUuZXQtbGFzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzFfNSAuZXRfcGJfcHJpY2luZ190YWJsZTpsYXN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fMV82IC5ldF9wYl9wcmljaW5nX3RhYmxlLmV0LWxhc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8xXzYgLmV0X3BiX3ByaWNpbmdfdGFibGU6bGFzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzJfNSAuZXRfcGJfcHJpY2luZ190YWJsZS5ldC1sYXN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fMl81IC5ldF9wYl9wcmljaW5nX3RhYmxlOmxhc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8zXzggLmV0X3BiX3ByaWNpbmdfdGFibGUuZXQtbGFzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzNfOCAuZXRfcGJfcHJpY2luZ190YWJsZTpsYXN0LWNoaWxkLC5ldF9wYl9wcmljaW5nXzEgLmV0X3BiX3ByaWNpbmdfdGFibGUuZXQtbGFzdC1jaGlsZCwuZXRfcGJfcHJpY2luZ18xIC5ldF9wYl9wcmljaW5nX3RhYmxlOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5ldF9wYl9jb2x1bW5fMV8yPi5ldF9wYl9wcmljaW5nPi5ldF9wYl9wcmljaW5nX3RhYmxlX3dyYXA+LmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKG9kZCksLmV0X3BiX2NvbHVtbl8yXzM+LmV0X3BiX3ByaWNpbmc+LmV0X3BiX3ByaWNpbmdfdGFibGVfd3JhcD4uZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQob2RkKSwuZXRfcGJfY29sdW1uXzNfND4uZXRfcGJfcHJpY2luZz4uZXRfcGJfcHJpY2luZ190YWJsZV93cmFwPi5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgzbisxKSwuZXRfcGJfY29sdW1uXzNfNT4uZXRfcGJfcHJpY2luZz4uZXRfcGJfcHJpY2luZ190YWJsZV93cmFwPi5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZChvZGQpLC5ldF9wYl9jb2x1bW5fNF80Pi5ldF9wYl9wcmljaW5nPi5ldF9wYl9wcmljaW5nX3RhYmxlX3dyYXA+LmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKDRuKzEpe2NsZWFyOmJvdGh9LmV0X3BiX2NvbHVtbl8xXzI+LmV0X3BiX3ByaWNpbmc+LmV0X3BiX3ByaWNpbmdfdGFibGVfd3JhcD4uZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQobiszKSwuZXRfcGJfY29sdW1uXzJfMz4uZXRfcGJfcHJpY2luZz4uZXRfcGJfcHJpY2luZ190YWJsZV93cmFwPi5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZChuKzMpLC5ldF9wYl9jb2x1bW5fM180Pi5ldF9wYl9wcmljaW5nPi5ldF9wYl9wcmljaW5nX3RhYmxlX3dyYXA+LmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKG4rNCksLmV0X3BiX2NvbHVtbl8zXzU+LmV0X3BiX3ByaWNpbmc+LmV0X3BiX3ByaWNpbmdfdGFibGVfd3JhcD4uZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQobiszKSwuZXRfcGJfY29sdW1uXzRfND4uZXRfcGJfcHJpY2luZz4uZXRfcGJfcHJpY2luZ190YWJsZV93cmFwPi5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZChuKzUpe21hcmdpbi10b3A6NTBweH0uZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfcHJpY2luZ190YWJsZV93cmFwIC5ldF9wYl9wcmljaW5nX3RhYmxlLmV0X3BiX2ZlYXR1cmVkX3RhYmxlOm50aC1jaGlsZChuKzMpLC5ldF9wYl9jb2x1bW5fMl8zIC5ldF9wYl9wcmljaW5nX3RhYmxlX3dyYXAgLmV0X3BiX3ByaWNpbmdfdGFibGUuZXRfcGJfZmVhdHVyZWRfdGFibGU6bnRoLWNoaWxkKG4rMyksLmV0X3BiX2NvbHVtbl8zXzQgLmV0X3BiX3ByaWNpbmdfdGFibGVfd3JhcCAuZXRfcGJfcHJpY2luZ190YWJsZS5ldF9wYl9mZWF0dXJlZF90YWJsZTpudGgtY2hpbGQobis0KSwuZXRfcGJfY29sdW1uXzNfNSAuZXRfcGJfcHJpY2luZ190YWJsZV93cmFwIC5ldF9wYl9wcmljaW5nX3RhYmxlLmV0X3BiX2ZlYXR1cmVkX3RhYmxlOm50aC1jaGlsZChuKzMpLC5ldF9wYl9jb2x1bW5fNF80IC5ldF9wYl9wcmljaW5nX3RhYmxlX3dyYXAgLmV0X3BiX3ByaWNpbmdfdGFibGUuZXRfcGJfZmVhdHVyZWRfdGFibGU6bnRoLWNoaWxkKG4rNSl7bWFyZ2luLXRvcDoyMHB4fS5ldF9wYl9wcmljaW5nX2hlYWRpbmd7YmFja2dyb3VuZC1jb2xvcjojYmViZWJlO3BhZGRpbmc6MTBweCAwO3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9wcmljaW5nX2hlYWRpbmcgLmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoMntjb2xvcjojZmZmO3BhZGRpbmctYm90dG9tOjVweH0uZXRfcGJfYmVzdF92YWx1ZXtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjIwcHg7ZGlzcGxheTpibG9jaztmb250LXdlaWdodDo1MDB9LmV0X3BiX3ByaWNpbmdfY29udGVudF90b3B7cGFkZGluZy10b3A6MTdweDtwYWRkaW5nLWJvdHRvbTozMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1ib3R0b206MXB4ICNiZWJlYmU7Ym9yZGVyLXN0eWxlOnNvbGlkfS5ldF9wYl9wcmljaW5nX3RhYmxlIC5ldF9wYl9idXR0b25fd3JhcHBlcntwYWRkaW5nLWxlZnQ6MzBweDtwYWRkaW5nLXJpZ2h0OjMwcHh9LmV0X3BiX2V0X3ByaWNle2NvbG9yOiM5OTk7Zm9udC1zaXplOjE2cHh9LmV0X3BiX2RvbGxhcl9zaWdue2ZvbnQtc2l6ZToxOHB4O2ZvbnQtd2VpZ2h0OjQwMDtwb3NpdGlvbjphYnNvbHV0ZTttYXJnaW4tbGVmdDotLjVlbX0uZXRfcGJfc3Vte2ZvbnQtc2l6ZTo4MHB4O2xpbmUtaGVpZ2h0OjEuMDNlbTtmb250LXdlaWdodDozMDB9LmV0X3BiX3ByaWNpbmdfY29udGVudHtwYWRkaW5nOjMwcHg7dGV4dC1hbGlnbjpsZWZ0O3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19jb250ZW50e3BhZGRpbmctYm90dG9tOjUwcHh9LmV0X3BiX3ByaWNpbmcgbGl7bGluZS1oZWlnaHQ6MS42ZW07cGFkZGluZzowIDAgMS42ZW0gMTRweDtwb3NpdGlvbjpyZWxhdGl2ZX0uZXRfcGJfcHJpY2luZyBsaTpsYXN0LWNoaWxke3BhZGRpbmctYm90dG9tOjB9LmV0X3BiX3ByaWNpbmcgbGkgc3BhbjpiZWZvcmV7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDozcHg7Y29udGVudDoiIjtsZWZ0Oi0xNHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo5cHg7Ym9yZGVyLXJhZGl1czozcHh9LmV0X3BiX3ByaWNpbmcuZXRfcGJfcHJpY2luZ19ub19idWxsZXQgbGkgc3BhbjpiZWZvcmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZXRfcGJfcHJpY2luZyBsaS5ldF9wYl9ub3RfYXZhaWxhYmxle2NvbG9yOiNjY2N9LmV0X3BiX3ByaWNpbmcgbGkuZXRfcGJfbm90X2F2YWlsYWJsZSBzcGFuOmJlZm9yZXtib3JkZXItY29sb3I6I2NjY30uZXRfcGJfcHJpY2luZyBsaSBhe2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LWRlY29yYXRpb246bm9uZX0uZXRfcGJfcHJpY2luZyBsaSBzcGFue3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0uZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfcHJpY2luZy5ldF9wYl9mb3VydGhfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8xXzIgLmV0X3BiX3ByaWNpbmcuZXRfcGJfZm91cnRoX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKSwuZXRfcGJfY29sdW1uXzJfMyAuZXRfcGJfcHJpY2luZy5ldF9wYl9mb3VydGhfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8yXzMgLmV0X3BiX3ByaWNpbmcuZXRfcGJfZm91cnRoX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKSwuZXRfcGJfY29sdW1uXzNfNSAuZXRfcGJfcHJpY2luZy5ldF9wYl9mb3VydGhfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8zXzUgLmV0X3BiX3ByaWNpbmcuZXRfcGJfZm91cnRoX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKXttYXJnaW4tdG9wOjAhaW1wb3J0YW50fUBtZWRpYSAobWluLXdpZHRoOjk4MXB4KXsuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl9mb3VydGhfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8zXzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfZm91cnRoX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKSwuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl9mb3VydGhfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKDMpLC5ldF9wYl9jb2x1bW5fM180IC5ldF9wYl9wcmljaW5nLmV0X3BiX25vX2ZlYXR1cmVkX2luX2ZpcnN0X3JvdyAuZXRfcGJfcHJpY2luZ190YWJsZTpmaXJzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl9ub19mZWF0dXJlZF9pbl9maXJzdF9yb3cgLmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKDIpLC5ldF9wYl9jb2x1bW5fM180IC5ldF9wYl9wcmljaW5nLmV0X3BiX25vX2ZlYXR1cmVkX2luX2ZpcnN0X3JvdyAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQoMyksLmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfbm9fZmVhdHVyZWRfaW5fZmlyc3Rfcm93IC5ldF9wYl9wcmljaW5nX3RhYmxlOmZpcnN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fNF80IC5ldF9wYl9wcmljaW5nLmV0X3BiX25vX2ZlYXR1cmVkX2luX2ZpcnN0X3JvdyAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQoMiksLmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfbm9fZmVhdHVyZWRfaW5fZmlyc3Rfcm93IC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgzKSwuZXRfcGJfY29sdW1uXzRfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl9ub19mZWF0dXJlZF9pbl9maXJzdF9yb3cgLmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKDQpe21hcmdpbi10b3A6MCFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjk4MXB4KXsuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl9mb3VydGhfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8zXzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfZm91cnRoX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKSwuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl9ub19mZWF0dXJlZF9pbl9maXJzdF9yb3cgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8zXzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfbm9fZmVhdHVyZWRfaW5fZmlyc3Rfcm93IC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKSwuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl90aGlyZF9mZWF0dXJlZCAuZXRfcGJfcHJpY2luZ190YWJsZTpmaXJzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzNfNCAuZXRfcGJfcHJpY2luZy5ldF9wYl90aGlyZF9mZWF0dXJlZCAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQoMiksLmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfZm91cnRoX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOmZpcnN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fNF80IC5ldF9wYl9wcmljaW5nLmV0X3BiX2ZvdXJ0aF9mZWF0dXJlZCAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQoMiksLmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfbm9fZmVhdHVyZWRfaW5fZmlyc3Rfcm93IC5ldF9wYl9wcmljaW5nX3RhYmxlOmZpcnN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fNF80IC5ldF9wYl9wcmljaW5nLmV0X3BiX25vX2ZlYXR1cmVkX2luX2ZpcnN0X3JvdyAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQoMiksLmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfdGhpcmRfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl80XzQgLmV0X3BiX3ByaWNpbmcuZXRfcGJfdGhpcmRfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKDIpe21hcmdpbi10b3A6MCFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2N3B4KXsuZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfcHJpY2luZy5ldF9wYl9ub19mZWF0dXJlZF9pbl9maXJzdF9yb3cgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8xXzIgLmV0X3BiX3ByaWNpbmcuZXRfcGJfbm9fZmVhdHVyZWRfaW5fZmlyc3Rfcm93IC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKSwuZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfcHJpY2luZy5ldF9wYl90aGlyZF9mZWF0dXJlZCAuZXRfcGJfcHJpY2luZ190YWJsZTpmaXJzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzFfMiAuZXRfcGJfcHJpY2luZy5ldF9wYl90aGlyZF9mZWF0dXJlZCAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQoMiksLmV0X3BiX2NvbHVtbl8yXzMgLmV0X3BiX3ByaWNpbmcuZXRfcGJfbm9fZmVhdHVyZWRfaW5fZmlyc3Rfcm93IC5ldF9wYl9wcmljaW5nX3RhYmxlOmZpcnN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fMl8zIC5ldF9wYl9wcmljaW5nLmV0X3BiX25vX2ZlYXR1cmVkX2luX2ZpcnN0X3JvdyAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQoMiksLmV0X3BiX2NvbHVtbl8yXzMgLmV0X3BiX3ByaWNpbmcuZXRfcGJfdGhpcmRfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6Zmlyc3QtY2hpbGQsLmV0X3BiX2NvbHVtbl8yXzMgLmV0X3BiX3ByaWNpbmcuZXRfcGJfdGhpcmRfZmVhdHVyZWQgLmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKDIpLC5ldF9wYl9jb2x1bW5fM181IC5ldF9wYl9wcmljaW5nLmV0X3BiX25vX2ZlYXR1cmVkX2luX2ZpcnN0X3JvdyAuZXRfcGJfcHJpY2luZ190YWJsZTpmaXJzdC1jaGlsZCwuZXRfcGJfY29sdW1uXzNfNSAuZXRfcGJfcHJpY2luZy5ldF9wYl9ub19mZWF0dXJlZF9pbl9maXJzdF9yb3cgLmV0X3BiX3ByaWNpbmdfdGFibGU6bnRoLWNoaWxkKDIpLC5ldF9wYl9jb2x1bW5fM181IC5ldF9wYl9wcmljaW5nLmV0X3BiX3RoaXJkX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOmZpcnN0LWNoaWxkLC5ldF9wYl9jb2x1bW5fM181IC5ldF9wYl9wcmljaW5nLmV0X3BiX3RoaXJkX2ZlYXR1cmVkIC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZCgyKXttYXJnaW4tdG9wOjAhaW1wb3J0YW50fX1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX2NvbHVtbiAuZXRfcGJfcHJpY2luZ190YWJsZXt3aWR0aDo1MCUhaW1wb3J0YW50O21heC13aWR0aDo1MC41JSFpbXBvcnRhbnR9LmV0X3BiX2NvbHVtbiAuZXRfcGJfcHJpY2luZ18xIC5ldF9wYl9wcmljaW5nX3RhYmxle3dpZHRoOjEwMCUhaW1wb3J0YW50O21heC13aWR0aDpub25lIWltcG9ydGFudH0uZXRfcGJfY29sdW1uIC5ldF9wYl9wcmljaW5nX3RhYmxlOm50aC1jaGlsZChvZGQpe2NsZWFyOmJvdGh9LmV0X3BiX2NvbHVtbiAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQobiszKXttYXJnaW4tdG9wOjUwcHh9LmV0X3BiX2NvbHVtbiAuZXRfcGJfcHJpY2luZ190YWJsZTpudGgtY2hpbGQobiszKS5ldF9wYl9mZWF0dXJlZF90YWJsZXttYXJnaW4tdG9wOjIwcHh9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuZXRfcGJfY29sdW1uIC5ldF9wYl9wcmljaW5nX3RhYmxle3dpZHRoOjEwMCUhaW1wb3J0YW50O21heC13aWR0aDoxMDAlIWltcG9ydGFudDttYXJnaW46MCAwIDMwcHg7bWFyZ2luLXRvcDowIWltcG9ydGFudH0uZXRfcGJfY29sdW1uIC5ldF9wYl9wcmljaW5nX3RhYmxlLmV0LWxhc3QtY2hpbGQsLmV0X3BiX2NvbHVtbiAuZXRfcGJfcHJpY2luZ190YWJsZTpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH19Ci5ldF9wYl9idXR0b25bZGF0YS1pY29uXTpub3QoW2RhdGEtaWNvbj0iIl0pOmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWljb24pfUBtZWRpYSAobWF4LXdpZHRoOjk4MHB4KXsuZXRfcGJfYnV0dG9uW2RhdGEtaWNvbi10YWJsZXRdOm5vdChbZGF0YS1pY29uLXRhYmxldD0iIl0pOmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWljb24tdGFibGV0KX19QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey5ldF9wYl9idXR0b25bZGF0YS1pY29uLXBob25lXTpub3QoW2RhdGEtaWNvbi1waG9uZT0iIl0pOmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWljb24tcGhvbmUpfX0KdWwuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd3tsaXN0LXN0eWxlLXR5cGU6bm9uZSFpbXBvcnRhbnQ7bWFyZ2luOjAgMCAyMnB4O3BhZGRpbmc6MH0uZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyBsaXtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tYm90dG9tOjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0uZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyBsaSBhe21hcmdpbi1yaWdodDo4cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1hbGlnbjpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmV9LmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cgbGkgYS5mb2xsb3dfYnV0dG9ue3BhZGRpbmc6MCAxMnB4O21hcmdpbi10b3A6NXB4O21hcmdpbi1yaWdodDoyNXB4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNmVtO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMSk7Y29sb3I6cmdiYSgwLDAsMCwuNSk7Ym9yZGVyLXJhZGl1czozcHg7Ym9yZGVyLXdpZHRoOjA7Ym9yZGVyLXN0eWxlOnNvbGlkOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjNzO3RyYW5zaXRpb246YWxsIC4zc30uZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyBsaS5sYXN0LWNoaWxkIGEsLmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cgbGk6bGFzdC1jaGlsZCBhe21hcmdpbi1yaWdodDowfS5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93Lmhhc19mb2xsb3dfYnV0dG9uIGxpLmxhc3QtY2hpbGQgYS5pY29uLC5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93Lmhhc19mb2xsb3dfYnV0dG9uIGxpOmxhc3QtY2hpbGQgYS5pY29ue21hcmdpbi1yaWdodDo4cHh9LmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cgbGkgYS5mb2xsb3dfYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMik7Y29sb3I6cmdiYSgwLDAsMCwuNil9LmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cuZXRfcGJfYmdfbGF5b3V0X2RhcmsgbGkgYS5mb2xsb3dfYnV0dG9ue2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7Y29sb3I6aHNsYSgwLDAlLDEwMCUsLjgpfS5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93LmV0X3BiX2JnX2xheW91dF9kYXJrIGxpIGEuZm9sbG93X2J1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjcpO2NvbG9yOiNmZmZ9LmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cgbGkgYS5pY29ue2hlaWdodDozMnB4O3dpZHRoOjMycHg7cGFkZGluZzowOy13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94fS5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93IGxpIGEuaWNvbjpiZWZvcmV7aGVpZ2h0OjMycHg7d2lkdGg6MzJweDtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDozMnB4O2Rpc3BsYXk6YmxvY2s7Y29sb3I6I2ZmZjstd2Via2l0LXRyYW5zaXRpb246Y29sb3IgLjNzO3RyYW5zaXRpb246Y29sb3IgLjNzO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTB9LmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cgbGkgYS5pY29uOmhvdmVyOmJlZm9yZXtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuNyl9LmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cgbGkgYS5pY29ue2JvcmRlci1yYWRpdXM6M3B4fS5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93X25ldHdvcmtfbmFtZXtkaXNwbGF5Om5vbmV9LmV0X3BiX3NvY2lhbF9pY29uIGEuaWNvbnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmV0X3BiX3NvY2lhbF9pY29uIGEuaWNvbjpiZWZvcmV7Zm9udC1mYW1pbHk6RVRtb2R1bGVzO3NwZWFrOm5vbmU7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtdmFyaWFudDpub3JtYWw7dGV4dC10cmFuc2Zvcm06bm9uZTtsaW5lLWhlaWdodDoxOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlO3RleHQtc2hhZG93OjAgMDtkaXJlY3Rpb246bHRyfS5ldC1wYi1zb2NpYWwtZmEtaWNvbiBhLmljb246YmVmb3Jle2ZvbnQtZmFtaWx5OkZvbnRBd2Vzb21lfS5ldC1zb2NpYWwtdGVsZWdyYW0gYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjNGRSJ9LmV0LXNvY2lhbC1hbWF6b24gYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjI3MCJ9LmV0LXNvY2lhbC1iYW5kY2FtcCBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGMkQ1In0uZXQtc29jaWFsLWJpdGJ1Y2tldCBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGMTcxIn0uZXQtc29jaWFsLWJlaGFuY2UgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjFCNCJ9LmV0LXNvY2lhbC1idWZmZXIgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjgzNyJ9LmV0LXNvY2lhbC1jb2RlcGVuIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYxQ0IifS5ldC1zb2NpYWwtZGV2aWFudGFydCBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGMUJEIn0uZXQtc29jaWFsLWZsaXBib2FyZCBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGNDREIn0uZXQtc29jaWFsLWZvdXJzcXVhcmUgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjE4MCJ9LmV0LXNvY2lhbC1naXRodWIgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjA5QiJ9LmV0LXNvY2lhbC1nb29kcmVhZHMgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjNBOSJ9LmV0LXNvY2lhbC1nb29nbGUgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjFBMCJ9LmV0LXNvY2lhbC1ob3V6eiBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGMjdDIn0uZXQtc29jaWFsLWl0dW5lcyBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGM0I1In0uZXQtc29jaWFsLWxhc3RfZm0gYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjIwMiJ9LmV0LXNvY2lhbC1saW5lIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYzQzAifS5ldC1zb2NpYWwtbWVkaXVtIGEuaWNvbjpiZWZvcmUsLmV0LXNvY2lhbC1tZWV0dXAgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjNDNyJ9LmV0LXNvY2lhbC1vZG5va2xhc3NuaWtpIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYyNjMifS5ldC1zb2NpYWwtcGF0cmVvbiBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGM0Q5In0uZXQtc29jaWFsLXBlcmlzY29wZSBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGM0RBIn0uZXQtc29jaWFsLXF1b3JhIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYyQzQifS5ldC1zb2NpYWwtcmVzZWFyY2hnYXRlIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEY0RjgifS5ldC1zb2NpYWwtcmVkZGl0IGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYyODEifS5ldC1zb2NpYWwtc25hcGNoYXQgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjJBQyJ9LmV0LXNvY2lhbC1zb3VuZGNsb3VkIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYxQkUifS5ldC1zb2NpYWwtc3BvdGlmeSBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGMUJDIn0uZXQtc29jaWFsLXN0ZWFtIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYzRjYifS5ldC1zb2NpYWwtdHJpcGFkdmlzb3IgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjI2MiJ9LmV0LXNvY2lhbC10aWt0b2sgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRTA3QiJ9LmV0LXNvY2lhbC10d2l0Y2ggYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjFFOCJ9LmV0LXNvY2lhbC12ayBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGMTg5In0uZXQtc29jaWFsLXdlaWJvIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYxOEEifS5ldC1zb2NpYWwtd2hhdHNhcHAgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRjIzMiJ9LmV0LXNvY2lhbC14aW5nIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEYxNjgifS5ldC1zb2NpYWwteWVscCBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxGMUU5In0uZXQtc29jaWFsLXBpbnRlcmVzdCBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxFMDk1In0uZXQtc29jaWFsLWxpbmtlZGluIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEUwOUQifS5ldC1zb2NpYWwtdHVtYmxyIGEuaWNvbjpiZWZvcmV7Y29udGVudDoiXEUwOTcifS5ldC1zb2NpYWwtc2t5cGUgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRTBBMiJ9LmV0LXNvY2lhbC1mbGlrciBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxFMEE2In0uZXQtc29jaWFsLW15c3BhY2UgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRTBBMSJ9LmV0LXNvY2lhbC1kcmliYmJsZSBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxFMDlCIn0uZXQtc29jaWFsLXlvdXR1YmUgYS5pY29uOmJlZm9yZXtjb250ZW50OiJcRTBBMyJ9LmV0LXNvY2lhbC12aW1lbyBhLmljb246YmVmb3Jle2NvbnRlbnQ6IlxFMDlDIn1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X3BiX2JnX2xheW91dF9saWdodF90YWJsZXQuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyBsaSBhLmZvbGxvd19idXR0b257YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xKTtjb2xvcjpyZ2JhKDAsMCwwLC41KX0uZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3RhYmxldC5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93IGxpIGEuZm9sbG93X2J1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjIpO2NvbG9yOnJnYmEoMCwwLDAsLjYpfS5ldF9wYl9iZ19sYXlvdXRfZGFya190YWJsZXQuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyBsaSBhLmZvbGxvd19idXR0b257YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTtjb2xvcjpoc2xhKDAsMCUsMTAwJSwuOCl9LmV0X3BiX2JnX2xheW91dF9kYXJrX3RhYmxldC5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93IGxpIGEuZm9sbG93X2J1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjcpO2NvbG9yOiNmZmZ9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3Bob25lLmV0X3BiX3NvY2lhbF9tZWRpYV9mb2xsb3cgbGkgYS5mb2xsb3dfYnV0dG9ue2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMSk7Y29sb3I6cmdiYSgwLDAsMCwuNSl9LmV0X3BiX2JnX2xheW91dF9saWdodF9waG9uZS5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93IGxpIGEuZm9sbG93X2J1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjIpO2NvbG9yOnJnYmEoMCwwLDAsLjYpfS5ldF9wYl9iZ19sYXlvdXRfZGFya19waG9uZS5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93IGxpIGEuZm9sbG93X2J1dHRvbntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpO2NvbG9yOmhzbGEoMCwwJSwxMDAlLC44KX0uZXRfcGJfYmdfbGF5b3V0X2RhcmtfcGhvbmUuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyBsaSBhLmZvbGxvd19idXR0b246aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC43KTtjb2xvcjojZmZmfX0KLmV0X3BiX3RvZ2dsZV9jb250ZW50LC5ldF9wYl90b2dnbGVfdGl0bGV7d29yZC13cmFwOmJyZWFrLXdvcmR9LmV0X3BiX3RvZ2dsZXtib3JkZXI6MXB4IHNvbGlkICNkOWQ5ZDl9LmV0X3BiX3RvZ2dsZV9jbG9zZXtiYWNrZ3JvdW5kLWNvbG9yOiNmNGY0ZjQ7cGFkZGluZzoyMHB4fS5ldF9wYl90b2dnbGVfY2xvc2UgLmV0X3BiX3RvZ2dsZV9jb250ZW50e2Rpc3BsYXk6bm9uZX0uZXRfcGJfdG9nZ2xlX29wZW57cGFkZGluZzoyMHB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjt6LWluZGV4OjF9LmV0X3BiX3RvZ2dsZS5ldF9wYl90ZXh0X2FsaWduX2xlZnQgLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlLmV0X3BiX3RleHRfYWxpZ25fbGVmdCBoNS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZSAuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGUgaDUuZXRfcGJfdG9nZ2xlX3RpdGxle2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MCA1MHB4IDAgMH0uZXRfcGJfdG9nZ2xlX2Nsb3NlIC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNS5ldF9wYl90b2dnbGVfdGl0bGV7Y29sb3I6IzY2Nn0uZXRfcGJfdG9nZ2xlX29wZW4gLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxle2NvbG9yOiMzMzN9LmV0X3BiX3RvZ2dsZV90aXRsZTpiZWZvcmV7Y29udGVudDoiXEUwNTAiO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7Zm9udC1zaXplOjE2cHg7Y29sb3I6I2NjYzt0b3A6NTAlO21hcmdpbi10b3A6LS41ZW19LmV0X3BiX3RvZ2dsZSAuZXRfcGJfdG9nZ2xlX3RpdGxlOmJlZm9yZXtyaWdodDowO2xlZnQ6YXV0b30uZXRfcGJfdG9nZ2xlX29wZW4gLmV0X3BiX3RvZ2dsZV90aXRsZTpiZWZvcmV7Y29udGVudDoiXEUwNEYifS5ldF9wYl90b2dnbGVfY29udGVudHtwYWRkaW5nLXRvcDoyMHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5ldF9wYl90b2dnbGVfY29udGVudDplbXB0eXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5ldF9wYl90b2dnbGVfY29udGVudCBwOmxhc3Qtb2YtdHlwZXtwYWRkaW5nLWJvdHRvbTowfUBtZWRpYSAobWF4LXdpZHRoOjk4MHB4KXsuZXRfcGJfdG9nZ2xlLmV0X3BiX3RleHRfYWxpZ25fbGVmdC10YWJsZXQgLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlLmV0X3BiX3RleHRfYWxpZ25fbGVmdC10YWJsZXQgaDUuZXRfcGJfdG9nZ2xlX3RpdGxle2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MCA1MHB4IDAgMH19QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpey5ldF9wYl90b2dnbGUuZXRfcGJfdGV4dF9hbGlnbl9sZWZ0LXBob25lIC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZS5ldF9wYl90ZXh0X2FsaWduX2xlZnQtcGhvbmUgaDUuZXRfcGJfdG9nZ2xlX3RpdGxle2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MCA1MHB4IDAgMH19LmV0X3BiX2J1dHRvbltkYXRhLWljb25dOm5vdChbZGF0YS1pY29uPSIiXSk6YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtaWNvbil9QG1lZGlhIChtYXgtd2lkdGg6OTgwcHgpey5ldF9wYl9idXR0b25bZGF0YS1pY29uLXRhYmxldF06bm90KFtkYXRhLWljb24tdGFibGV0PSIiXSk6YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtaWNvbi10YWJsZXQpfX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LmV0X3BiX2J1dHRvbltkYXRhLWljb24tcGhvbmVdOm5vdChbZGF0YS1pY29uLXBob25lPSIiXSk6YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtaWNvbi1waG9uZSl9fQ=="}},"time_used":221,"timings":{"blocked":126,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"stats.wp.com/s-202241.js","fqdn":"stats.wp.com","domain":"wp.com","tld":"com"},"ip":{"addr":"192.0.76.3","port":443,"asn":2635,"as":"AUTOMATTIC","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.924Z","timestamp":1785148618924,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"wp.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Tue, 02 Jun 2026 19:44:51 GMT","end":"Mon, 31 Aug 2026 19:44:50 GMT"},"fingerprint":{"sha1":"42:51:7D:8E:5C:5A:69:84:E1:DE:81:56:09:A0:5E:F0:DF:73:81:69","sha256":"B2:9B:2E:37:90:1C:35:4E:9E:08:7C:C5:EC:0E:FE:B8:B4:39:CE:28:20:4B:53:FF:4D:20:89:3B:86:65:6D:4D"}}},"request":{"raw":"GET /s-202241.js HTTP/1.1\r\nHost: stats.wp.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 10:36:58 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Thu, 13 Feb 2025 12:45:03 GMT\r\nvary: Accept-Encoding\r\netag: W/\"67ade94f-276f\"\r\na8c-edge-cache: cache\r\ncontent-encoding: br\r\nexpires: Thu, 15 Oct 2026 09:02:31 GMT\r\ncache-control: max-age=31536000\r\naccess-control-allow-methods: GET, HEAD\r\naccess-control-allow-origin: *\r\nx-nc: HIT arn\r\nalt-svc: h3=\":443\"; ma=86400\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":10095,"size_decoded":4450,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (10095), with no line terminators","md5":"742da2bbb9419ef5d0ce99cad3ac4620","sha1":"612020b84a92f014c7361ad0479b85d48caffecb","sha256":"82971eab19615a78a4ca3ef8fdab96262880fcf687c04973b1d8457b8ebb58e4","sha512":"b2cc06abf81c69db01abfbb93e0401dc603ca60d8e47285a95b5c7cd15be5b19253da7fd86925659e23cabd7e353fba1b1fd494460cdbf0bbab4fe840dfe669b","ssdeep":"192:4v64t5X/rxyFdOb6qYcJpLwL4QDm1GB02/vx6beDj/CUoY33p2Kns:4v64DqQGqY+wL4ex7M","tlshash":"1922d8dd31d5f4a602e762b5123f6a0af2761a26381ae190d752cdd0bc3854f4233fe9","first_seen":"2025-02-17T07:00:10.413497Z","last_seen":"2026-08-12T05:50:47.538587Z","times_seen":20863,"resource_available":true,"data":"IWZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Z1bmN0aW9uIG4ocil7aWYodFtyXSlyZXR1cm4gdFtyXS5leHBvcnRzO3ZhciBvPXRbcl09e2k6cixsOiExLGV4cG9ydHM6e319O3JldHVybiBlW3JdLmNhbGwoby5leHBvcnRzLG8sby5leHBvcnRzLG4pLG8ubD0hMCxvLmV4cG9ydHN9bi5tPWUsbi5jPXQsbi5kPWZ1bmN0aW9uKGUsdCxyKXtuLm8oZSx0KXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7ZW51bWVyYWJsZTohMCxnZXQ6cn0pfSxuLnI9ZnVuY3Rpb24oZSl7InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0sbi50PWZ1bmN0aW9uKGUsdCl7aWYoMSZ0JiYoZT1uKGUpKSw4JnQpcmV0dXJuIGU7aWYoNCZ0JiYib2JqZWN0Ij09dHlwZW9mIGUmJmUmJmUuX19lc01vZHVsZSlyZXR1cm4gZTt2YXIgcj1PYmplY3QuY3JlYXRlKG51bGwpO2lmKG4ucihyKSxPYmplY3QuZGVmaW5lUHJvcGVydHkociwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6ZX0pLDImdCYmInN0cmluZyIhPXR5cGVvZiBlKWZvcih2YXIgbyBpbiBlKW4uZChyLG8sZnVuY3Rpb24odCl7cmV0dXJuIGVbdF19LmJpbmQobnVsbCxvKSk7cmV0dXJuIHJ9LG4ubj1mdW5jdGlvbihlKXt2YXIgdD1lJiZlLl9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gZS5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiBlfTtyZXR1cm4gbi5kKHQsImEiLHQpLHR9LG4ubz1mdW5jdGlvbihlLHQpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KX0sbi5wPSIiLG4obi5zPTcpfShbZnVuY3Rpb24oZSx0KXtmdW5jdGlvbiBuKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2UuZXhwb3J0cz1uPWZ1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZS5leHBvcnRzPW49ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSxuKHQpfWUuZXhwb3J0cz1ufSxmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJiIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKSxuLmQodCwiYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV9KSk7dmFyIHI9bnVsbCxvPWZ1bmN0aW9uKCl7aWYobnVsbD09cil7cj0iIjt2YXIgZSx0PWRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBUUkFDS1NfQ09PS0lFX0RPTUFJTilyPVRSQUNLU19DT09LSUVfRE9NQUlOO2Vsc2UgZm9yKHZhciBuPTE7bjw9dC5sZW5ndGg7KytuKWlmKGU9Ii4iK3Quc2xpY2UoLW4pLmpvaW4oIi4iKSxvPWUsaT12b2lkIDAsaT0obmV3IERhdGUpLmdldFRpbWUoKSxkb2N1bWVudC5jb29raWU9ZW5jb2RlVVJJQ29tcG9uZW50KCJ0a190YyIpKyI9IitpKyI7IGRvbWFpbj0iK28rIjsgcGF0aD0vOyIsdSgidGMiKT09aSl7cj1lO2JyZWFrfSIiIT1yJiYoIWZ1bmN0aW9uKGUpe3ZhciB0PW5ldyBEYXRlO3Quc2V0VGltZSh0LmdldFRpbWUoKS0xZTMpLGRvY3VtZW50LmNvb2tpZT1lbmNvZGVVUklDb21wb25lbnQoInRrX3RjIikrIj0gOyBkb21haW49IitlKyI7IHBhdGg9LzsgZXhwaXJlcz0iK3QudG9VVENTdHJpbmcoKX0ocikscj0iOyBkb21haW49IityKX12YXIgbyxpO3JldHVybiByfSxpPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1lbmNvZGVVUklDb21wb25lbnQoInRrXyIrZSksaT1uZXcgRGF0ZTt2b2lkIDA9PT1uJiYobj0xNTc2OGU0KSxkb2N1bWVudC5sb2NhdGlvbi5ob3N0bmFtZS5tYXRjaCgvKChefFwuKXdwXC5jb20kfF4uP3dcLm9yZyQpLyl8fChpLnNldFRpbWUoaS5nZXRUaW1lKCkrMWUzKm4pLGRvY3VtZW50LmNvb2tpZT1yKyI9IitlbmNvZGVVUklDb21wb25lbnQodCkrbygpKyI7IHBhdGg9LzsgZXhwaXJlcz0iK2kudG9VVENTdHJpbmcoKSl9LHU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZW5jb2RlVVJJQ29tcG9uZW50KCJ0a18iK2UpKyI9IixuPXQubGVuZ3RoLHI9ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7ICIpLG89ci5sZW5ndGg7Zm9yKDE9PT1vJiYobz0ocj1kb2N1bWVudC5jb29raWUuc3BsaXQoIjsiKSkubGVuZ3RoKSxvLS07bz49MDtvLS0paWYocltvXS5zdWJzdHJpbmcoMCxuKT09PXQpcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChyW29dLnN1YnN0cmluZyhuKSk7cmV0dXJuIG51bGx9fSxmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LCJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gQX0pKTt2YXIgcj1uKDApLG89bi5uKHIpLGk9bigxKTtmdW5jdGlvbiB1KGUpe3ZhciB0PVtdO2lmKHdpbmRvdy5jcnlwdG8mJndpbmRvdy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKXQ9bmV3IFVpbnQ4QXJyYXkoZSksd2luZG93LmNyeXB0by5nZXRSYW5kb21WYWx1ZXModCk7ZWxzZSBmb3IodmFyIG49MDtuPGU7KytuKXRbbl09TWF0aC5mbG9vcigyNTYqTWF0aC5yYW5kb20oKSk7cmV0dXJuIGJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsdCkpfXZhciBhLGMsbCxmLHMscCxkLGc7ZnVuY3Rpb24gbSgpe2E9dm9pZCAwLGM9bnVsbCxsPW51bGwsW10sZj1udWxsLHM9e30scD17fSxkPXt9LGc9e319bSgpO3ZhciB3PWZ1bmN0aW9uKGUpe2lmKHRoaXMuYT0xLGUmJmUubGVuZ3RoKWZvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXRoaXMucHVzaChlW3RdKX07dy5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihlKXtpZihlKWlmKCJvYmplY3QiPT1vKCkoZSkmJmUubGVuZ3RoKXt2YXIgdD1lLnNwbGljZSgwLDEpO1VbdF0mJlVbdF0uYXBwbHkobnVsbCxlKX1lbHNlImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUoKX07dmFyIHY9ZnVuY3Rpb24oZSl7ZS5fdWl8fGUuX3V0fHxQKCksaigpLGUuX3VpPWUuX3VpfHxhLGUuX3V0PWUuX3V0fHxjLGwmJihlLl91bD1sKTt2YXIgdD1uZXcgRGF0ZTtlLl90cz10LmdldFRpbWUoKSxlLl90ej10LmdldFRpbWV6b25lT2Zmc2V0KCkvNjA7dmFyIG49d2luZG93Lm5hdmlnYXRvcixyPXdpbmRvdy5zY3JlZW47ZS5fbGc9bi5sYW5ndWFnZSxlLl9wZj1uLnBsYXRmb3JtLGUuX2h0PXIuaGVpZ2h0LGUuX3dkPXIud2lkdGg7dmFyIGk9dm9pZCAwIT09d2luZG93LnBhZ2VYT2Zmc2V0P3dpbmRvdy5wYWdlWE9mZnNldDooZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fHxkb2N1bWVudC5ib2R5LnBhcmVudE5vZGV8fGRvY3VtZW50LmJvZHkpLnNjcm9sbExlZnQsdT12b2lkIDAhPT13aW5kb3cucGFnZVlPZmZzZXQ/d2luZG93LnBhZ2VZT2Zmc2V0Oihkb2N1bWVudC5kb2N1bWVudEVsZW1lbnR8fGRvY3VtZW50LmJvZHkucGFyZW50Tm9kZXx8ZG9jdW1lbnQuYm9keSkuc2Nyb2xsVG9wO2UuX3N4PXZvaWQgMCE9PWk/aTowLGUuX3N5PXZvaWQgMCE9PXU/dTowLHZvaWQgMCE9PWRvY3VtZW50LmxvY2F0aW9uJiYoZS5fZGw9ZG9jdW1lbnQubG9jYXRpb24udG9TdHJpbmcoKSksdm9pZCAwIT09ZG9jdW1lbnQucmVmZXJyZXImJihlLl9kcj1kb2N1bWVudC5yZWZlcnJlciksZnVuY3Rpb24gZSh0LG4pe2lmKG51bGw9PXR8fCJvYmplY3QiIT09bygpKHQpKXJldHVybiB0O2Zvcih2YXIgciBpbiBudWxsIT1uJiYib2JqZWN0Ij09PW8oKShuKXx8KG49dC5jb25zdHJ1Y3RvcigpKSx0KXQuaGFzT3duUHJvcGVydHkocikmJihuW3JdPWUodFtyXSkpO3JldHVybiBufShwLGUpLHkoZnVuY3Rpb24oZSl7dmFyIHQ9W107Zm9yKHZhciBuIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShuKSYmdC5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChuKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pKTtyZXR1cm4gdC5qb2luKCImIil9KGUpLGUudXNlX2JlYWNvbnx8ITEpfSx5PWZ1bmN0aW9uKGUsdCl7aWYoKHdpbmRvdy5fdGtBbGxvd0UyRVRlc3RzJiZuYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKCJ3cC1lMmUtdGVzdHMiKXx8IW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL3dwLWUyZS10ZXN0c3xiaW5nYm90fGJvdHxib3JnfGdvb2dsZShedHYpfHlhaG9vfHNsdXJwfG1zbmJvdHxtc3Jib3R8b3BlbmJvdHxhcmNoaXZlcnxuZXRyZXNlYXJjaHxseWNvc3xzY29vdGVyfGFsdGF2aXN0YXx0ZW9tYXxnaWdhYm90fGJhaWR1c3BpZGVyfGJsaXR6Ym90fG9lZ3B8Y2hhcmxvdHRlfGZ1cmxib3R8aHR0cCUyMGNsaWVudHxwb2x5Ym90fGh0ZGlnfGljaGlyb3xtb2dpbW9naXxsYXJiaW58cG9tcG9zfHNjcnViYnl8c2VhcmNoc2lnaHR8c2Vla2JvdHxzZW1hbnRpY2Rpc2NvdmVyeXxzaWxrfHNuYXBweXxzcGVlZHl8c3BpZGVyfHZvaWxhfHZvcnRleHx2b3lhZ2VyfHphb3x6ZWFsfGZhc3RcLXdlYmNyYXdsZXJ8Y29udmVyYWNyYXdsZXJ8ZGF0YXBhcmtzZWFyY2h8ZmluZGxpbmtzfGNyYXdsZXJ8TmV0dmliZXN8U29nb3UgUGljIFNwaWRlcnxJQ0NcLUNyYXdsZXJ8SW5ub3ZhemlvbiBDcmF3bGVyfERhdW1vYXxFdGFvU3BpZGVyfEE2XC1JbmRleGVyfFlpc291U3BpZGVyfFJpZGRsZXJ8REJvdHx3c3JcLWFnZW50fFhlbnV8U2V6bmFtQm90fFBhcGVyTGlCb3R8U3B1dG5pa0JvdHxDQ0JvdHxQcm9vWGlCb3R8U2NyYXB5fEdlbmllb3xTY3JlYW1pbmcgRnJvZ3xZYWhvb0NhY2hlU3lzdGVtfENpQnJhfE51dGNoLykpJiYhKGUgaW4gZCkpaWYoZFtlXT0hMCx3aW5kb3cuZmV0Y2gmJnQpYihlKSxmZXRjaCgiLy9waXhlbC53cC5jb20vdC5naWY/IitlKyImX3J0PSIrKG5ldyBEYXRlKS5nZXRUaW1lKCkrIiZfPV8iLHttb2RlOiJuby1jb3JzIixrZWVwYWxpdmU6ITB9KS50aGVuKChmdW5jdGlvbigpe2lmKEkoZSkpcmV0dXJuIGZldGNoKCIvL3BpeGVsLndwLmNvbS93LmdpZj8iK2UrIiZfcnQ9IisobmV3IERhdGUpLmdldFRpbWUoKSsiJl89XyIse21vZGU6Im5vLWNvcnMiLGtlZXBhbGl2ZTohMH0pfSkpLnRoZW4oKGZ1bmN0aW9uKCl7XyhlKX0pKTtlbHNle3ZhciBuPW5ldyBJbWFnZTtiKGUpLFQoZSksbi5xdWVyeT1lLG4ub25sb2FkPWZ1bmN0aW9uKCl7ZGVsZXRlIGRbZV0sbiYmXyhuLnF1ZXJ5KX0sbi5zcmM9Ii8vcGl4ZWwud3AuY29tL3QuZ2lmPyIrZSsiJl9ydD0iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpKyImXz1fIixuLmFsdD0iIn19LGI9ZnVuY3Rpb24oZSl7dmFyIHQsbj1PKCk7Zm9yKHQ9MDt0PG4ubGVuZ3RoOysrdClpZihlPT1uW3RdKXJldHVybjtuLnB1c2goZSksaChuKX0saD1mdW5jdGlvbihlKXtmb3IoO2Uuam9pbigiICIpLmxlbmd0aD4yMDQ4OyllPWUuc2xpY2UoMSk7aygicXMiLGUuam9pbigiICIpLDE4MDApfSxfPWZ1bmN0aW9uKGUpe3ZhciB0LG49W10scj1PKCk7Zm9yKHQ9MDt0PHIubGVuZ3RoOysrdCllIT1yW3RdJiZuLnB1c2goclt0XSk7bi5sZW5ndGghPT1yLmxlbmd0aCYmaChuKX0sTz1mdW5jdGlvbigpe3ZhciBlPXgoInFzIik7cmV0dXJuIGU/ZS5zcGxpdCgiICIpOltdfSxqPWZ1bmN0aW9uKCl7bnVsbD09PWYmJihmPXdpbmRvdy5zZXRUaW1lb3V0KChmdW5jdGlvbigpe08oKS5mb3JFYWNoKChmdW5jdGlvbihlKXt5KGUsITEpfSkpLGY9bnVsbH0pLDEwMCkpfSxTPWZ1bmN0aW9uKCl7cmV0dXJuIHUoMTgpfSx4PWZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QoaS5hKShlKXx8c1tlXX0saz1mdW5jdGlvbihlLHQsbil7c1tlXT1uPD0tMT9udWxsOnQsT2JqZWN0KGkuYikoZSx0LG4pfSxDPWZ1bmN0aW9uKCl7dmFyIGU9W10sdD14KCJhaSIpLG49eCgiYWlwIik7cmV0dXJuIG4mJihlPW4uc3BsaXQoIiwiKSksdCYmZS5wdXNoKHQpLGV9LFA9ZnVuY3Rpb24oKXt2YXIgZT0hKGFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdKXx8YXJndW1lbnRzWzBdO2lmKCFhKXt2YXIgdD14KCJhaSIpO3Q/KGE9dCxjPSJhbm9uIik6ZSYmKGE9UygpLGM9ImFub24iLGsoImFpIixhKSl9fSxJPWZ1bmN0aW9uKGUpe3JldHVybiBlLnNwbGl0KCImIikuaW5jbHVkZXMoImNoPTEiKX0sVD1mdW5jdGlvbihlKXtpZihJKGUpKXt2YXIgdD1uZXcgSW1hZ2U7dC5zcmM9Ii8vcGl4ZWwud3AuY29tL3cuZ2lmPyIrZSsiJl9ydD0iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpKyImXz1fIix0LmFsdD0iIn19LFU9e3N0b3JlQ29udGV4dDpmdW5jdGlvbihlKXsib2JqZWN0Ij09PW8oKShlKSYmKHA9ZSl9LGlkZW50aWZ5VXNlcjpmdW5jdGlvbihlLHQpe2lmKHQmJihsPXQpLCIwIiE9ZSYmIiIhPWUmJm51bGwhPWUmJmEhPWUpe2E9ZSxjPSJ3cGNvbTp1c2VyX2lkIjtmb3IodmFyIG49QygpLHI9MDtyPG4ubGVuZ3RoO3IrKyl2KHtfZW46Il9hbGlhc1VzZXIiLGFub25JZDpuW3JdfSk7dmFyIG89eCgiYWkiKTtvJiZ2KHtfZW46Il9hbGlhc1VzZXJHZW5lcmFsIixuZXh0dXNlcmlkOmEsbmV4dHVzZXJpZHR5cGU6YyxwcmV2dXNlcmlkOm8scHJldnVzZXJpZHR5cGU6ImFub24ifSksaygiYWkiLCIiLC0xKSxrKCJhaXAiLCIiLC0xKX19LGlkZW50aWZ5QW5vblVzZXI6ZnVuY3Rpb24oZSl7aWYoUCghMSksYSE9ZSlpZigiYW5vbiI9PT1jfHxudWxsPT09Yyl7aWYoImFub24iPT1jJiZhKXt2YXIgdD14KCJhaXAiKTt0PXQ/dC5zcGxpdCgiLCIpOltdO2Zvcih2YXIgbj0hMSxyPTA7cjx0Lmxlbmd0aDtyKyspYT09dFtyXSYmKG49ITApO258fCh0LnB1c2goYSksaygiYWlwIix0LmpvaW4oIiwiKSksdih7X2VuOiJfYWxpYXNVc2VyR2VuZXJhbCIsbmV4dHVzZXJpZDplLG5leHR1c2VyaWR0eXBlOiJhbm9uIixwcmV2dXNlcmlkOmEscHJldnVzZXJpZHR5cGU6ImFub24ifSkpfWsoImFpIixlKSxhPWUsYz0iYW5vbiJ9ZWxzZSB2KHtfZW46Il9hbGlhc1VzZXIiLGFub25JZDplfSl9LHJlY29yZEV2ZW50OmZ1bmN0aW9uKGUsdCxuKXsiX3NldFByb3BlcnRpZXMiIT09ZSYmKCh0PXR8fHt9KS5fZW49ZSwic3RyaW5nIj09dHlwZW9mIG4mJm4ubGVuZ3RoPjAmJihnW25dfHwoZ1tuXT11KDE4KSksdC5fdWk9dC5fdWl8fGdbbl0sdC5fdXQ9dC5fdXR8fCJhbm9uIiksdih0KSl9LHNldFByb3BlcnRpZXM6ZnVuY3Rpb24oZSl7ZS5fZW49Il9zZXRQcm9wZXJ0aWVzIix2KGUpfSxjbGVhcklkZW50aXR5OmZ1bmN0aW9uKCl7YT1udWxsLGw9bnVsbCxrKCJhaSIsIiIsLTEpLGsoImFpcCIsIiIsLTEpLFAoKX0sc2lnbmFsQWxpYXNVc2VyR2VuZXJhbDpmdW5jdGlvbihlLHQpe1AoKSx2KHtfZW46Il9hbGlhc1VzZXJHZW5lcmFsIixuZXh0dXNlcmlkOmEsbmV4dHVzZXJpZHR5cGU6YyxwcmV2dXNlcmlkOmUscHJldnVzZXJpZHR5cGU6dH0pfX07ZnVuY3Rpb24gQSgpe3JldHVybiBtKCksd2luZG93Ll90a3E9d2luZG93Ll90a3F8fFtdLHdpbmRvdy5fdGtxLmF8fChqKCksd2luZG93Ll90a3E9bmV3IHcod2luZG93Ll90a3EpKSxVfX0sLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDgpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKG51bGw9PWUpcmV0dXJue307dmFyIG4sbyxpPXIoZSx0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgdT1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO2ZvcihvPTA7bzx1Lmxlbmd0aDtvKyspbj11W29dLHQuaW5kZXhPZihuKT49MHx8T2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKGUsbikmJihpW25dPWVbbl0pfXJldHVybiBpfX0sZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB0IGluIGU/T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOmVbdF09bixlfX0sZnVuY3Rpb24oZSl7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siZXJyb3JzIjpmYWxzZX0nKX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKDE1KX0sZnVuY3Rpb24oZSx0KXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZihudWxsPT1lKXJldHVybnt9O3ZhciBuLHIsbz17fSxpPU9iamVjdC5rZXlzKGUpO2ZvcihyPTA7cjxpLmxlbmd0aDtyKyspbj1pW3JdLHQuaW5kZXhPZihuKT49MHx8KG9bbl09ZVtuXSk7cmV0dXJuIG99fSwsLCwsLCxmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO24ucih0KTt2YXIgcj1uKDQpLG89bi5uKHIpLGk9big1KSx1PW4ubihpKSxhPW4oMSksYz1uKDYpLGw9ZnVuY3Rpb24oZSl7aWYoYy5lcnJvcnMpdGhyb3cgbmV3IEVycm9yKGUpfTt2YXIgZj1mdW5jdGlvbihlKXtyZXR1cm4gMD09PWUuaW5kZXhPZigiIi5jb25jYXQobG9jYXRpb24ucHJvdG9jb2wsIi8vIikuY29uY2F0KGxvY2F0aW9uLmhvc3QpKX0scz1uKDIpO2Z1bmN0aW9uIHAoZSx0KXt2YXIgbj1PYmplY3Qua2V5cyhlKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgcj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO3QmJihyPXIuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpLmVudW1lcmFibGV9KSkpLG4ucHVzaC5hcHBseShuLHIpfXJldHVybiBufXZhciBkLGcsbT0oZD1mdW5jdGlvbihlKXt2YXIgdD17dXBkYXRlOmZ1bmN0aW9uKCl7dmFyIG49YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOmRvY3VtZW50LnJlZmVycmVyO2lmKHdpbmRvdy5fd2NhX3ByZXZlbnRfcmVmZXJyZXIpcmV0dXJuITE7dmFyIHI9MzE1MzZlMyxvPSEwLGk9ITA7cmV0dXJuIWYobikmJih0LmdldE9yaWdpbmFsKCl8fChvPWUuc2V0KCJvciIsbiw1KnIpKSx0LmdldEF0dFdpbmRvdygzKXx8KGk9dC5zZXRBdHRXaW5kb3cobiwzKSksbyYmaSYmZS5zZXQoImxyIixuLHIpKX0sZ2V0TGF0ZXN0OmZ1bmN0aW9uKCl7cmV0dXJuIGUuZ2V0KCJsciIpfSxnZXRPcmlnaW5hbDpmdW5jdGlvbigpe3JldHVybiBlLmdldCgib3IiKX0scmVtb3ZlT2xkUmVmZXJyZXJzOmZ1bmN0aW9uKCl7ZS5zZXQoInJvIiwiIiwtMSksZS5zZXQoInJsIiwiIiwtMSl9LHNldEF0dFdpbmRvdzpmdW5jdGlvbih0LG4pe3JldHVybiBlLnNldCgiciIuY29uY2F0KG4sImQiKSx0LDg2NDAwKm4pfSxnZXRBdHRXaW5kb3c6ZnVuY3Rpb24odCl7cmV0dXJuIGUuZ2V0KCJyIi5jb25jYXQodCwiZCIpKX19O3JldHVybiB0fSh7Z2V0OmZ1bmN0aW9uKGUpe3RyeXt2YXIgdD1PYmplY3QoYS5hKShlKTtyZXR1cm4gdD10P0pTT04ucGFyc2UodCk6bnVsbH1jYXRjaChlKXtyZXR1cm4gbChlKSxudWxsfX0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt0cnl7cmV0dXJuIHQ9SlNPTi5zdHJpbmdpZnkodCksT2JqZWN0KGEuYikoZSx0LG4pLCEwfWNhdGNoKGUpe3JldHVybiBsKGUpLCExfX0scmVtb3ZlOmZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gT2JqZWN0KGEuYikoZSxudWxsKSwhMH1jYXRjaChlKXtyZXR1cm4gbChlKSwhMX19fSksZz1PYmplY3Qocy5hKSgpLGQucmVtb3ZlT2xkUmVmZXJyZXJzKCksZC51cGRhdGUoKSx7cHVzaDpmdW5jdGlvbihlKXtpZihlKXt2YXIgdD1mdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbdF0/YXJndW1lbnRzW3RdOnt9O3QlMj9wKE9iamVjdChuKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24odCl7dSgpKGUsdCxuW3RdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG4pKTpwKE9iamVjdChuKSkuZm9yRWFjaCgoZnVuY3Rpb24odCl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG4sdCkpfSkpfXJldHVybiBlfSh7fSxlLHtscjpkLmdldExhdGVzdCgpLG9yOmQuZ2V0T3JpZ2luYWwoKSxyM2Q6ZC5nZXRBdHRXaW5kb3coMyl9KSxuPXQuX2VuLHI9bygpKHQsWyJfZW4iXSk7Zy5yZWNvcmRFdmVudChuLHIpfX19KTtBcnJheS5pc0FycmF5KHdpbmRvdy5fd2NhKSYmd2luZG93Ll93Y2EuZm9yRWFjaCgoZnVuY3Rpb24oZSl7bS5wdXNoKGUpfSkpLHdpbmRvdy5fd2NhPW19XSk7"}},"time_used":43,"timings":{"blocked":-1,"dns":2,"connect":8,"send":0,"wait":8,"receive":0,"ssl":25},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/themes/Divi/core/admin/js/common.js?ver=4.18.0","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.951Z","timestamp":1785148618951,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/themes/Divi/core/admin/js/common.js?ver=4.18.0 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 1343\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:28 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1343,"size_decoded":1559,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"d71b75b2327258b1d01d50590c1f67ca","sha1":"b7820e4ffb6becc133c48f66d9f683545530b959","sha256":"1ca76922f55b389b8f590ae7e3bcc3a2dccdce3aff1e5a4335af081b76a414ea","sha512":"1a1930881b4d4d4f092999d6449248aea68bf1756f6dc32a4efce5e7bf240a14633e76988321e5aa3e11144fe5e8c9a443adf0fbf09a9b57a98c4d2d3a9347a2","ssdeep":"","tlshash":"bb218b4947ac9015cd2230f6141a70f8b9be90a7cbe00d7bfeb3e618d6c04a6127de9d","first_seen":"2023-03-07T01:02:48Z","last_seen":"2026-08-12T08:20:58.392513Z","times_seen":66674,"resource_available":true,"data":"KGZ1bmN0aW9uKCQpewoJJChmdW5jdGlvbigpewoJCXZhciB1c2VyX2FnZW50ID0gbmF2aWdhdG9yLnVzZXJBZ2VudDsKCQl2YXIgaXNfb3BlcmFfZWRnZTsKCQl2YXIgYnJvd3NlciA9IHVzZXJfYWdlbnQubWF0Y2goLyhvcGVyYXxjaHJvbWV8c2FmYXJpfGZpcmVmb3h8bXNpZXx0cmlkZW50KD89XC8pKS9pKSB8fCBbXTsKCQl2YXIgYnJvd3Nlcl9uYW1lID0gJyc7CgkJdmFyIGJyb3dzZXJfY2xhc3MgPSAnJzsKCgkJaWYgKCAvdHJpZGVudC9pLnRlc3QoIGJyb3dzZXJbMF0gKSApIHsKCQkJYnJvd3Nlcl9uYW1lID0gJ2llJzsKCQl9IGVsc2UgaWYgKCBicm93c2VyWzBdID09PSAnQ2hyb21lJyApIHsKCQkJaXNfb3BlcmFfZWRnZSA9IHVzZXJfYWdlbnQubWF0Y2goL1xiKE9QUnxFZGdlKS8pOwoKCQkJaWYgKCBpc19vcGVyYV9lZGdlICE9PSBudWxsICkgewoJCQkJYnJvd3Nlcl9uYW1lID0gaXNfb3BlcmFfZWRnZVswXS5yZXBsYWNlKCdPUFInLCAnb3BlcmEnKTsKCQkJfQoJCX0KCgkJLy8gdXNlIG5hdmlnYXRvci5hcHBOYW1lIGFzIGJyb3dzZXIgbmFtZSBpZiB3ZSB3ZXJlIHVuYWJsZSB0byBnZXQgaXQgZnJvbSB1c2VyX2FnZW50CgkJaWYgKCAnJyA9PT0gYnJvd3Nlcl9uYW1lICkgewoJCQlpZiAoJ3N0YW5kYWxvbmUnIGluIHdpbmRvdy5uYXZpZ2F0b3IgJiYgIXdpbmRvdy5uYXZpZ2F0b3Iuc3RhbmRhbG9uZSkgewoJCQkJYnJvd3Nlcl9uYW1lID0gJ3Vpd2Vidmlldyc7CgkJCX0gZWxzZSB7CgkJCQlicm93c2VyX25hbWUgPSBicm93c2VyWzBdICYmICcnICE9PSBicm93c2VyWzBdID8gYnJvd3NlclswXSA6IG5hdmlnYXRvci5hcHBOYW1lOwoJCQl9CgkJfQoKCQlicm93c2VyX25hbWUgPSBicm93c2VyX25hbWUudG9Mb3dlckNhc2UoKTsKCgkJLy8gY29udmVydCBicm93c2VyIG5hbWUgdG8gY2xhc3MuIFNvbWUgY2xhc3NlcyBkbyBub3QgbWF0Y2ggdGhlIGJyb3dzZXIgbmFtZQoJCXN3aXRjaCggYnJvd3Nlcl9uYW1lICkgewoJCQljYXNlICdtc2llJyA6CgkJCQlicm93c2VyX2NsYXNzID0gJ2llJzsKCQkJCWJyZWFrOwoJCQljYXNlICdmaXJlZm94JyA6CgkJCQlicm93c2VyX2NsYXNzID0gJ2dlY2tvJzsKCQkJCWJyZWFrOwoJCQlkZWZhdWx0IDoKCQkJCWJyb3dzZXJfY2xhc3MgPSBicm93c2VyX25hbWU7CgkJCQlicmVhazsKCQl9CgoJCS8vIGFkZCBgaXBob25lYCBjbGFzcyBpZiBicm93c2luZyBmcm9tIGlwaG9uZQoJCWlmICggdXNlcl9hZ2VudC5tYXRjaCgvaVBob25lLykgKSB7CgkJCWJyb3dzZXJfY2xhc3MgKz0gJyBpcGhvbmUnOwoJCX0KCgkJJCggJ2JvZHknICkuYWRkQ2xhc3MoIGJyb3dzZXJfY2xhc3MgKTsKCX0pOwp9KShqUXVlcnkpOwo="}},"time_used":447,"timings":{"blocked":352,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/uploads/2020/07/final-again-1-e1593608748690.png","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.972Z","timestamp":1785148618972,"http_version":"HTTP/1.1","security_state":"","security_info":null,"request":{"raw":"GET /wp-content/uploads/2020/07/final-again-1-e1593608748690.png HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: image/png\r\nContent-Length: 47987\r\nConnection: keep-alive\r\nLast-Modified: Fri, 20 Jan 2023 10:37:58 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":0,"size_decoded":0,"mime_type":"image/png","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/plan6.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.985Z","timestamp":1785148618985,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/plan6.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/uploads/2020/07/antivirus.png","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.992Z","timestamp":1785148618992,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /wp-content/uploads/2020/07/antivirus.png HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/sitepress-multilingual-cms/templates/language-switchers/menu-item/style.min.css?ver=1","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.601Z","timestamp":1785148618601,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/sitepress-multilingual-cms/templates/language-switchers/menu-item/style.min.css?ver=1 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 202\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:14 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":202,"size_decoded":410,"mime_type":"text/css","magic":"ASCII text, with no line terminators","md5":"7a933ce4834f63c8f9b8e56f486ff15a","sha1":"f5a05d83e19ed182277bd2fa01a48bf1746d5019","sha256":"ee14e1c34ca92b9c270bf567a0bb381f83c6151be2020a948547c3e9de2e9cd3","sha512":"840a42b2a2b17a024ec5b7a0509b771c44b5b9d75e05f7967dc110eb9474e79ed1c34645c0ca70df1bc02f9989a2778fcdfd67279204340d709ca7e367302355","ssdeep":"","tlshash":"a2d01250cea3a674d415d155588843703bc02f698f9197436d1b2f1bd81176ae8734b0","first_seen":"2023-04-05T14:18:35Z","last_seen":"2026-08-11T15:19:49.943112Z","times_seen":1515,"resource_available":false,"data":"LndwbWwtbHMtbWVudS1pdGVtIC53cG1sLWxzLWZsYWd7ZGlzcGxheTppbmxpbmU7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9LndwbWwtbHMtbWVudS1pdGVtIC53cG1sLWxzLWZsYWcrc3BhbnttYXJnaW4tbGVmdDouM2VtfS5ydGwgLndwbWwtbHMtbWVudS1pdGVtIC53cG1sLWxzLWZsYWcrc3BhbnttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDouM2VtfQ=="}},"time_used":364,"timings":{"blocked":268,"dns":0,"connect":0,"send":0,"wait":96,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/link-whisper-premium/js/frontend.js?ver=1664712757","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.938Z","timestamp":1785148618938,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/link-whisper-premium/js/frontend.js?ver=1664712757 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 9667\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:22 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":9667,"size_decoded":9883,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"3bbda04d595ea84404a1ab08a8c77a72","sha1":"1cb1459fd5af098980476464c463cf971193c60d","sha256":"2b097154b541eccff5cad8e46948eea5cd7effa7cb61c534b1443c253c3ca2eb","sha512":"ab20424290a463fa9ccd5db326f988bd1772fd53c340ef13c904b169c99073c66449758acd6c20c7bd9fec7680403e4d75066f9604dd4c93af2970c8bf8fbb34","ssdeep":"192:YKxCtThYqXTjAd2+8AcxanFpeC3fMekz+iY9hLWF0A9:YKxmuIfA0+DcknFICpkxY9VWF1","tlshash":"85120fd8b84212f81db3226dde5f810cfbb6847745808365bdbd45811fb09a462eafed","first_seen":"2023-03-07T12:59:00Z","last_seen":"2026-07-27T10:37:50.418315Z","times_seen":125,"resource_available":true,"data":"InVzZSBzdHJpY3QiOw0KDQpbXS5mb3JFYWNoLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnYScpLCBmdW5jdGlvbihlbCkgew0KICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgd3BpbF9saW5rX2NsaWNrZWQpOw0KICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ2F1eGNsaWNrJywgd3BpbF9saW5rX2NsaWNrZWQpOw0KfSk7DQoNCmZ1bmN0aW9uIHdwaWxfbGlua19jbGlja2VkKGUpew0KLy8gICAgZS5wcmV2ZW50RGVmYXVsdCgpOyAvLyB0b2RvIHJlbWVtYmVyIHRvIHJlbW92ZSB0aGlzDQogICAgdmFyIGxpbmsgPSB0aGlzOw0KICAgIHZhciBsaW5rQW5jaG9yID0gJyc7DQogICAgdmFyIGhhc0ltYWdlID0gZmFsc2U7DQogICAgdmFyIGltYWdlVGl0bGUgPSAnJzsNCiAgICB2YXIgaW1hZ2VUYWdzID0gWydpbWcnLCAnc3ZnJ107DQoNCiAgICAvLyBpZiB0aGUgY2xpY2sgd2Fzbid0IGEgcHJpbWFyeSBvciBtaWRkbGUgY2xpY2ssIG9yIHRoZXJlJ3Mgbm8gbGluaywgZXhpdA0KICAgIGlmKCEoZS53aGljaCA9PSAxIHx8IGUuYnV0dG9uID09IDAgKSAmJiAhKGUud2hpY2ggPT0gMiB8fCBlLmJ1dHRvbiA9PSA0ICkgfHwgbGluay5sZW5ndGggPCAxKXsNCiAgICAgICAgcmV0dXJuOw0KICAgIH0NCg0KICAgIGlmKCcxJyA9PT0gd3BpbEZyb250ZW5kLmRpc2FibGVDbGlja3Mpew0KICAgICAgICByZXR1cm47DQogICAgfQ0KDQogICAgaWYodGhpcy5ocmVmID09PSB1bmRlZmluZWQgfHwgbGluay5ocmVmID09PSAnIycpew0KICAgICAgICByZXR1cm47DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmluZExpbmtUZXh0KGxpbmspew0KICAgICAgICBpZihsaW5rLmNoaWxkcmVuLmxlbmd0aCA+IDApew0KICAgICAgICAgICAgZm9yKHZhciBpIGluIGxpbmsuY2hpbGRyZW4pew0KICAgICAgICAgICAgICAgIHZhciBjaGlsZFRoaXMgPSBsaW5rLmNoaWxkcmVuW2ldOw0KICAgICAgICAgICAgICAgIGlmKGNoaWxkVGhpcy5jaGlsZHJlbiAhPT0gdW5kZWZpbmVkICYmIGNoaWxkVGhpcy5jaGlsZHJlbi5sZW5ndGggPiAwICYmIGxpbmtBbmNob3IgPT09ICcnKXsNCiAgICAgICAgICAgICAgICAgICAgZmluZExpbmtUZXh0KGNoaWxkVGhpcyk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGlmKGNoaWxkVGhpcy5ub2RlVHlwZSA9PT0gMSAmJiAtMSAhPT0gaW1hZ2VUYWdzLmluZGV4T2YoY2hpbGRUaGlzLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpICYmIGltYWdlVGl0bGUgPT09ICcnKXsNCiAgICAgICAgICAgICAgICAgICAgaGFzSW1hZ2UgPSB0cnVlOw0KICAgICAgICAgICAgICAgICAgICB2YXIgdGl0bGUgPSAodW5kZWZpbmVkICE9PSBjaGlsZFRoaXMudGl0bGUpID8gY2hpbGRUaGlzLnRpdGxlIDogJyc7DQoNCiAgICAgICAgICAgICAgICAgICAgaWYodW5kZWZpbmVkICE9PSB0aXRsZSl7DQogICAgICAgICAgICAgICAgICAgICAgICBpbWFnZVRpdGxlID0gdGl0bGUudHJpbSgpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGxpbmtBbmNob3IgPSBsaW5rQW5jaG9yLnRyaW0oKTsNCiAgICAgICAgICAgICAgICBpbWFnZVRpdGxlID0gKGltYWdlVGl0bGUgIT09IHVuZGVmaW5lZCkgPyBpbWFnZVRpdGxlLnRyaW0oKTogJyc7DQogICAgICAgICAgICB9Ow0KICAgICAgICB9DQogICAgICAgIGlmKHVuZGVmaW5lZCAhPT0gbGluay5vdXRlclRleHQpew0KICAgICAgICAgICAgbGlua0FuY2hvciA9IGxpbmsub3V0ZXJUZXh0Ow0KICAgICAgICB9DQogICAgfQ0KDQogICAgZmluZExpbmtUZXh0KGxpbmspOw0KDQogICAgaWYobGlua0FuY2hvciA9PT0gJycgJiYgaGFzSW1hZ2Upew0KICAgICAgICBpZihpbWFnZVRpdGxlICE9PSAnJyl7DQogICAgICAgICAgICBsaW5rQW5jaG9yID0gd3BpbEZyb250ZW5kLmNsaWNrc0kxOG4uaW1hZ2VUZXh0ICsgaW1hZ2VUaXRsZTsNCiAgICAgICAgfWVsc2V7DQogICAgICAgICAgICBsaW5rQW5jaG9yID0gd3BpbEZyb250ZW5kLmNsaWNrc0kxOG4uaW1hZ2VOb1RleHQ7DQogICAgICAgIH0NCiAgICB9ZWxzZSBpZihsaW5rQW5jaG9yID09PSAnJyAmJiAhaGFzSW1hZ2Upew0KICAgICAgICBsaW5rQW5jaG9yID0gd3BpbEZyb250ZW5kLmNsaWNrc0kxOG4ubm9UZXh0Ow0KICAgIH0NCg0KICAgIC8vIGlnbm9yZSBub24tY29udGVudCBsaW5rcw0KICAgIGlmKHdwaWxGcm9udGVuZC50cmFja0FsbEVsZW1lbnRDbGlja3MgPT09ICcwJyAmJiBoYXNQYXJlbnRFbGVtZW50cyhsaW5rLCAnaGVhZGVyLCBmb290ZXIsIG5hdiwgW2lkfj1oZWFkZXJdLCBbaWR+PW1lbnVdLCBbaWR+PWZvb3Rlcl0sIFtpZH49d2lkZ2V0XSwgW2lkfj1jb21tZW50XSwgW2NsYXNzfj1oZWFkZXJdLCBbY2xhc3N+PW1lbnVdLCBbY2xhc3N+PWZvb3Rlcl0sIFtjbGFzc349d2lkZ2V0XSwgW2NsYXNzfj1jb21tZW50XSwgI3dwYWRtaW5iYXInKSl7DQogICAgICAgIHJldHVybjsNCiAgICB9DQoNCiAgICB2YXIgbG9jYXRpb24gPSBnZXRMaW5rTG9jYXRpb24obGluayk7DQoNCiAgICBtYWtlQWpheENhbGwoew0KICAgICAgICBhY3Rpb246ICd3cGlsX2xpbmtfY2xpY2tlZCcsDQogICAgICAgIHBvc3RfaWQ6IHdwaWxGcm9udGVuZC5wb3N0SWQsDQogICAgICAgIHBvc3RfdHlwZTogd3BpbEZyb250ZW5kLnBvc3RUeXBlLA0KICAgICAgICBsaW5rX3VybDogbGluay5ocmVmLA0KICAgICAgICBsaW5rX2FuY2hvcjogbGlua0FuY2hvciwNCiAgICAgICAgbGlua19sb2NhdGlvbjogbG9jYXRpb24NCiAgICB9KTsNCn0NCndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgb3BlbkxpbmtzSW5OZXdUYWIpOw0KDQovKioNCiAqIFNldHMgbm9uIG5hdiBsaW5rcyBvbiBhIHBhZ2UgdG8gb3BlbiBpbiBhIG5ldyB0YWIgYmFzZWQgb24gdGhlIHNldHRpbmdzLg0KICoqLw0KZnVuY3Rpb24gb3BlbkxpbmtzSW5OZXdUYWIoKXsNCiAgICAvLyBleGl0IGlmIG5vbiBvZiB0aGUgbGlua3MgYXJlIHN1cHBvc2VkIHRvIG9wZW4gaW4gYSBuZXcgdGFiIHZpYSBKUw0KICAgIGlmKHdwaWxGcm9udGVuZC5vcGVuTGlua3NXaXRoSlMgPT0gMCB8fCAod3BpbEZyb250ZW5kLm9wZW5FeHRlcm5hbEluTmV3VGFiID09IDAgJiYgd3BpbEZyb250ZW5kLm9wZW5JbnRlcm5hbEluTmV3VGFiID09IDApICl7DQogICAgICAgIHJldHVybjsNCiAgICB9DQoNCiAgICBbXS5mb3JFYWNoLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnYScpLCBmdW5jdGlvbihlbGVtZW50KSB7DQogICAgICAgIC8vIGlmIHRoZSBsaW5rIGlzIG5vdCBhIG5hdiBsaW5rDQogICAgICAgIGlmKCFoYXNQYXJlbnRFbGVtZW50cyhlbGVtZW50LCAnaGVhZGVyLCBmb290ZXIsIG5hdiwgW2lkfj1oZWFkZXJdLCBbaWR+PW1lbnVdLCBbaWR+PWZvb3Rlcl0sIFtpZH49d2lkZ2V0XSwgW2lkfj1jb21tZW50XSwgW2NsYXNzfj1oZWFkZXJdLCBbY2xhc3N+PW1lbnVdLCBbY2xhc3N+PWZvb3Rlcl0sIFtjbGFzc349d2lkZ2V0XSwgW2NsYXNzfj1jb21tZW50XSwgI3dwYWRtaW5iYXInKSl7DQogICAgICAgICAgICAvLyBpZiB0aGVyZSBpcyBhIHVybCBpbiB0aGUgbGluaywgdGhlcmUgaXNuJ3QgYSB0YXJnZXQgYW5kIHRoZSBsaW5rIGlzbid0IGEganVtcCBsaW5rDQogICAgICAgICAgICBpZihlbGVtZW50LmhyZWYgJiYgIWVsZW1lbnQudGFyZ2V0ICYmIGVsZW1lbnQuaHJlZi5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSA9PT0gLTEpew0KICAgICAgICAgICAgICAgIHZhciB1cmwgPSBuZXcgVVJMKGVsZW1lbnQuaHJlZik7DQogICAgICAgICAgICAgICAgdmFyIGludGVybmFsID0gKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSA9PT0gdXJsLmhvc3RuYW1lKSA/IHRydWU6IGZhbHNlOw0KICAgICAgICAgICAgICAgIC8vIGlmIHRoZSBzZXR0aW5ncyBhbGxvdyBpdA0KICAgICAgICAgICAgICAgIGlmKCAoaW50ZXJuYWwgJiYgcGFyc2VJbnQod3BpbEZyb250ZW5kLm9wZW5JbnRlcm5hbEluTmV3VGFiKSkgfHwgKCFpbnRlcm5hbCAmJiBwYXJzZUludCh3cGlsRnJvbnRlbmQub3BlbkV4dGVybmFsSW5OZXdUYWIpKSApew0KICAgICAgICAgICAgICAgICAgICAvLyBzZXQgdGhlIGxpbmsgdG8gb3BlbiBpbiBhIG5ldyBwYWdlDQogICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCd0YXJnZXQnLCAnX2JsYW5rJyk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfSk7DQp9DQoNCi8vIHJlcGxhY2VtZW50IGZvciAiJChlbGVtZW50KS5wYXJlbnRzKCd4LHkseicpIiBpbiBpZiBjaGVja3MNCmZ1bmN0aW9uIGhhc1BhcmVudEVsZW1lbnRzKGVsZW1lbnQsIHBhcmVudExpc3QgPSAnJyl7DQogICAgdmFyIHRhZyA9ICghZWxlbWVudCkgPyBmYWxzZTogZWxlbWVudC50YWdOYW1lLnRvTG93ZXJDYXNlKCk7DQogICAgaWYoIWVsZW1lbnQgfHwgdGFnID09PSAnYm9keScgfHwgdGFnID09PSAnbWFpbicgfHwgdGFnID09PSAnYXJ0aWNsZScpew0KICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgfQ0KDQogICAgaWYodHlwZW9mIHBhcmVudExpc3QgPT09ICdzdHJpbmcnKXsNCiAgICAgICAgcGFyZW50TGlzdCA9IHBhcmVudExpc3Quc3BsaXQoJywnKTsNCiAgICB9DQoNCiAgICB2YXIgZm91bmQgPSBmYWxzZTsNCiAgICBmb3IodmFyIGkgaW4gcGFyZW50TGlzdCl7DQogICAgICAgIHZhciBqID0gcGFyZW50TGlzdFtpXTsNCg0KICAgICAgICBpZigtMSAhPT0gai5pbmRleE9mKCdpZH49Jykpew0KICAgICAgICAgICAgdmFyIGlkID0gai5yZXBsYWNlKC9cW2lkfj18XF0vZywgJycpLnRyaW0oKTsNCg0KICAgICAgICAgICAgaWYodW5kZWZpbmVkICE9PSBlbGVtZW50LmlkICYmICcnICE9PSBlbGVtZW50LmlkICYmIC0xICE9PSBlbGVtZW50LmlkLmluZGV4T2YoaWQpKXsgLy8gaWYgdGhlIGlkIGlzIHNldCBhbmQgaGFzIGEgbWF0Y2gNCiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7DQogICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICB9DQogICAgICAgIH1lbHNlIGlmKC0xICE9PSBqLmluZGV4T2YoJ2NsYXNzfj0nKSl7DQogICAgICAgICAgICB2YXIgaWQgPSBqLnJlcGxhY2UoL1xbY2xhc3N+PXxcXS9nLCAnJykudHJpbSgpOw0KICAgICAgICAgICAgaWYodW5kZWZpbmVkICE9PSBlbGVtZW50LmNsYXNzTGlzdCAmJiAnJyAhPT0gZWxlbWVudC5jbGFzc05hbWUgJiYgLTEgIT09IGVsZW1lbnQuY2xhc3NOYW1lLmluZGV4T2YoaWQpKXsNCiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7DQogICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICB9DQogICAgICAgIH1lbHNlIGlmKC0xICE9PSBqLmluZGV4T2YoJyMnKSl7DQogICAgICAgICAgICB2YXIgaWQgPSBqLnJlcGxhY2UoLyMvZywgJycpLnRyaW0oKTsNCiAgICAgICAgICAgIGlmKHVuZGVmaW5lZCAhPT0gZWxlbWVudC5pZCAmJiAnJyAhPT0gZWxlbWVudC5pZCAmJiBpZCA9PT0gZWxlbWVudC5pZCl7DQogICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlOw0KICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ZWxzZSBpZighai5tYXRjaCgvW15hLXpBLVpdLykpeyAvLyB0YWcgbWF0Y2gNCiAgICAgICAgICAgIHZhciBpZCA9IGoudHJpbSgpOw0KICAgICAgICAgICAgaWYoZWxlbWVudC50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09IGlkKXsNCiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7DQogICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZihmb3VuZCl7DQogICAgICAgIHJldHVybiB0cnVlOw0KICAgIH1lbHNlIGlmKGVsZW1lbnQucGFyZW50Tm9kZSAhPT0gJycpew0KICAgICAgICByZXR1cm4gaGFzUGFyZW50RWxlbWVudHMoZWxlbWVudC5wYXJlbnROb2RlLCBwYXJlbnRMaXN0KTsNCiAgICB9DQoNCiAgICByZXR1cm4gZmFsc2U7DQp9Ow0KDQpmdW5jdGlvbiBtYWtlQWpheENhbGwoY2FsbERhdGEgPSB7fSl7DQogICAgaWYod2luZG93LmpRdWVyeSl7DQogICAgICAgIGNhbGxXaXRoSnF1ZXJ5KGNhbGxEYXRhKTsNCiAgICB9ZWxzZXsNCiAgICAgICAgY2FsbFdpdGhWYW5pbGxhKGNhbGxEYXRhKTsNCiAgICB9DQp9DQoNCmZ1bmN0aW9uIGNhbGxXaXRoSnF1ZXJ5KGNhbGxEYXRhID0ge30pew0KICAgIGpRdWVyeS5hamF4KHsNCiAgICAgICAgdHlwZTogJ1BPU1QnLA0KICAgICAgICB1cmw6IHdwaWxGcm9udGVuZC5hamF4VXJsLA0KICAgICAgICBkYXRhOiBjYWxsRGF0YSwNCiAgICAgICAgc3VjY2VzczogZnVuY3Rpb24ocmVzcG9uc2Upew0KDQogICAgICAgIH0NCiAgICB9KTsNCn0NCg0KZnVuY3Rpb24gY2FsbFdpdGhWYW5pbGxhKGNhbGxEYXRhID0ge30pew0KICAgIGZ1bmN0aW9uIHJlc3BvbmQoZGF0KXsNCiAgICAgICAgaWYoZGF0LmN1cnJlbnRUYXJnZXQgIT09IHVuZGVmaW5lZCl7DQogICAgICAgICAgICBjb25zb2xlLmxvZyhkYXQuY3VycmVudFRhcmdldC5yZXNwb25zZSk7DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBhc3luYyBmdW5jdGlvbiBhamF4UG9zdCAoZGF0YSwgY2FsbGJhY2spIHsNCiAgICAgICAgdmFyIHVybCA9IHdwaWxGcm9udGVuZC5hamF4VXJsLA0KICAgICAgICAgICAgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7DQogICAgICAgIHZhciBwYXJhbXMgPSBbXTsNCiAgICAgICAgZm9yKHZhciBpIGluIGRhdGEpew0KICAgICAgICAgICAgcGFyYW1zLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KGkpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KGRhdGFbaV0pKTsNCiAgICAgICAgfQ0KICAgICAgICBwYXJhbXMgPSBwYXJhbXMuam9pbignJicpOw0KICAgICAgICB4aHIub3BlbigiUE9TVCIsIHVybCk7DQogICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LXR5cGUiLCAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIik7DQovLyAgICAgICAgeGhyLm9ubG9hZCA9IGNhbGxiYWNrLmJpbmQoeGhyKTsNCiAgICAgICAgeGhyLnNlbmQocGFyYW1zKTsNCiAgICB9DQoNCiAgICBhamF4UG9zdChjYWxsRGF0YSwgcmVzcG9uZCk7DQp9DQoNCmZ1bmN0aW9uIGdldExpbmtMb2NhdGlvbihlbGVtZW50KXsNCiAgICB2YXIgbG9jYXRpb24gPSAnQm9keSBDb250ZW50JzsNCiAgICB2YXIgc2VjdGlvbnMgPSB7J1NlYXJjaCc6IFsnc2VhcmNoJywgJ1tpZH49c2VhcmNoXScsICdbY2xhc3N+PXNlYXJjaF0nXSwNCiAgICAgICAgICAgICAgICAgICAgJ0hlYWRlcic6IFsnaGVhZGVyJywgJ1tpZH49aGVhZGVyXScsICdbY2xhc3N+PWhlYWRlcl0nXSwNCiAgICAgICAgICAgICAgICAgICAgJ0NvbW1lbnQgU2VjdGlvbic6IFsnW2lkfj1jb21tZW50XScsICdbY2xhc3N+PWNvbW1lbnRdJ10sDQogICAgICAgICAgICAgICAgICAgICdGb290ZXInOiBbJ2Zvb3RlcicsICdbaWR+PWZvb3Rlcl0nLCAnW2NsYXNzfj1mb290ZXJdJ10sDQogICAgICAgICAgICAgICAgICAgICdNZW51JzogWydbaWR+PW1lbnVdJywgJ1tjbGFzc349bWVudV0nXSwNCiAgICAgICAgICAgICAgICAgICAgJ05hdmlnYXRpb24nOiBbJ25hdiddLA0KICAgICAgICAgICAgICAgICAgICAnU2lkZWJhcic6IFsnc2lkZWJhcicsICdbaWR+PXNpZGViYXJdJywgJ1tjbGFzc349c2lkZWJhcl0nLCAnW2lkfj13aWRnZXRdJywgJ1tjbGFzc349d2lkZ2V0XSddLA0KICAgICAgICAgICAgICAgICAgICAnQm9keSBDb250ZW50JzogWydtYWluJywgJ2FydGljbGUnLCAnW2NsYXNzfj1tYWluXSddLA0KICAgICAgICAgICAgICAgICAgICB9Ow0KDQogICAgaWYoIWVsZW1lbnQgfHwgZWxlbWVudC50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdib2R5Jyl7DQogICAgICAgIHJldHVybiBsb2NhdGlvbjsNCiAgICB9DQoNCiAgICB2YXIgZm91bmQgPSBmYWxzZTsNCiAgICBlbGVtZW50TG9vcDoNCiAgICBmb3IodmFyIHNlY3Rpb24gaW4gc2VjdGlvbnMpew0KICAgICAgICB2YXIgc2VjdGlvbkRhdGEgPSBzZWN0aW9uc1tzZWN0aW9uXTsNCiAgICAgICAgZm9yKHZhciBpIGluIHNlY3Rpb25EYXRhKXsNCiAgICAgICAgICAgIHZhciBqID0gc2VjdGlvbkRhdGFbaV07DQoNCiAgICAgICAgICAgIGlmKC0xICE9PSBqLmluZGV4T2YoJ2lkfj0nKSl7DQogICAgICAgICAgICAgICAgdmFyIGlkID0gai5yZXBsYWNlKC9cW2lkfj18XF0vZywgJycpLnRyaW0oKTsNCg0KICAgICAgICAgICAgICAgIGlmKHVuZGVmaW5lZCAhPT0gZWxlbWVudC5pZCAmJiAnJyAhPT0gZWxlbWVudC5pZCAmJiAtMSAhPT0gZWxlbWVudC5pZC5pbmRleE9mKGlkKSl7IC8vIGlmIHRoZSBpZCBpcyBzZXQgYW5kIGhhcyBhIG1hdGNoDQogICAgICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24gPSBzZWN0aW9uOw0KICAgICAgICAgICAgICAgICAgICBicmVhayBlbGVtZW50TG9vcDsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9ZWxzZSBpZigtMSAhPT0gai5pbmRleE9mKCdjbGFzc349Jykpew0KICAgICAgICAgICAgICAgIHZhciBpZCA9IGoucmVwbGFjZSgvXFtjbGFzc349fFxdL2csICcnKS50cmltKCk7DQogICAgICAgICAgICAgICAgaWYodW5kZWZpbmVkICE9PSBlbGVtZW50LmNsYXNzTGlzdCAmJiAnJyAhPT0gZWxlbWVudC5jbGFzc05hbWUgJiYgLTEgIT09IGVsZW1lbnQuY2xhc3NOYW1lLmluZGV4T2YoaWQpKXsNCiAgICAgICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlOw0KICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbiA9IHNlY3Rpb247DQogICAgICAgICAgICAgICAgICAgIGJyZWFrIGVsZW1lbnRMb29wOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH1lbHNlIGlmKC0xICE9PSBqLmluZGV4T2YoJyMnKSl7DQogICAgICAgICAgICAgICAgdmFyIGlkID0gai5yZXBsYWNlKC8jL2csICcnKS50cmltKCk7DQogICAgICAgICAgICAgICAgaWYodW5kZWZpbmVkICE9PSBlbGVtZW50LmlkICYmICcnICE9PSBlbGVtZW50LmlkICYmIGlkID09PSBlbGVtZW50LmlkKXsNCiAgICAgICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlOw0KICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbiA9IHNlY3Rpb247DQogICAgICAgICAgICAgICAgICAgIGJyZWFrIGVsZW1lbnRMb29wOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH1lbHNlIGlmKCFqLm1hdGNoKC9bXmEtekEtWl0vKSl7IC8vIHRhZyBtYXRjaA0KICAgICAgICAgICAgICAgIHZhciBpZCA9IGoudHJpbSgpOw0KICAgICAgICAgICAgICAgIGlmKGVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSBpZCl7DQogICAgICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24gPSBzZWN0aW9uOw0KICAgICAgICAgICAgICAgICAgICBicmVhayBlbGVtZW50TG9vcDsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZihmb3VuZCl7DQogICAgICAgIHJldHVybiBsb2NhdGlvbjsNCiAgICB9ZWxzZSBpZihlbGVtZW50LnBhcmVudE5vZGUgIT09ICcnKXsNCiAgICAgICAgcmV0dXJuIGdldExpbmtMb2NhdGlvbihlbGVtZW50LnBhcmVudE5vZGUpOw0KICAgIH0NCg0KICAgIHJldHVybiBmYWxzZTsNCn0NCg=="}},"time_used":270,"timings":{"blocked":174,"dns":0,"connect":0,"send":0,"wait":96,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/themes/Divi/js/scripts.min.js?ver=4.18.0","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.942Z","timestamp":1785148618942,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/themes/Divi/js/scripts.min.js?ver=4.18.0 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 274008\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:24 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":274008,"size_decoded":274226,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (65467)","md5":"6d6ec1f94d18006912a150da86408fdb","sha1":"811ef32e700471c682bdc5904087d7868ace35fb","sha256":"543abcc9b648e8163b776c15632a566251717566a4d724f9939bef59399eefc4","sha512":"d5e0dfc848df44d00779d7370fd3e8ff08a19951e8c327348bb8be6f89c344385a214ca99dfa4b2daab9144941a0c78b2e260d356d022b636e7929dbf884651c","ssdeep":"3072:NzYFhwGUT+/DJ6eJOIZGrwtux3M0pyPNZc0EhH62M5Xn7OS:khwGNl2ctux3pmNuha2M5r","tlshash":"8244d74cb370b8f162fb65a5116f670ab1726d17a40588c0e172e0f85db8d8e6263f7e","first_seen":"2023-03-07T01:07:30Z","last_seen":"2026-08-11T17:52:50.977664Z","times_seen":929,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgc2NyaXB0cy5taW4uanMuTElDRU5TRS50eHQgKi8KIWZ1bmN0aW9uKHQpe3ZhciBlPXt9O2Z1bmN0aW9uIG4oaSl7aWYoZVtpXSlyZXR1cm4gZVtpXS5leHBvcnRzO3ZhciBhPWVbaV09e2k6aSxsOiExLGV4cG9ydHM6e319O3JldHVybiB0W2ldLmNhbGwoYS5leHBvcnRzLGEsYS5leHBvcnRzLG4pLGEubD0hMCxhLmV4cG9ydHN9bi5tPXQsbi5jPWUsbi5kPWZ1bmN0aW9uKHQsZSxpKXtuLm8odCxlKXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7ZW51bWVyYWJsZTohMCxnZXQ6aX0pfSxuLnI9ZnVuY3Rpb24odCl7InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0sbi50PWZ1bmN0aW9uKHQsZSl7aWYoMSZlJiYodD1uKHQpKSw4JmUpcmV0dXJuIHQ7aWYoNCZlJiYib2JqZWN0Ij09dHlwZW9mIHQmJnQmJnQuX19lc01vZHVsZSlyZXR1cm4gdDt2YXIgaT1PYmplY3QuY3JlYXRlKG51bGwpO2lmKG4ucihpKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoaSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6dH0pLDImZSYmInN0cmluZyIhPXR5cGVvZiB0KWZvcih2YXIgYSBpbiB0KW4uZChpLGEsZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV19LmJpbmQobnVsbCxhKSk7cmV0dXJuIGl9LG4ubj1mdW5jdGlvbih0KXt2YXIgZT10JiZ0Ll9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gdC5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiB0fTtyZXR1cm4gbi5kKGUsImEiLGUpLGV9LG4ubz1mdW5jdGlvbih0LGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKX0sbi5wPSIiLG4obi5zPTk1KX0oW2Z1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUsImEiLChmdW5jdGlvbigpe3JldHVybiBhfSkpO3ZhciBpLGE9d2luZG93O3RyeXtpPSEhd2luZG93LnRvcC5kb2N1bWVudCYmd2luZG93LnRvcH1jYXRjaCh0KXtpPSExfWkmJmkuX19DeXByZXNzX18/d2luZG93LnBhcmVudD09PWk/YT13aW5kb3c6YT13aW5kb3cucGFyZW50OmkmJihhPWksd2luZG93LnNlbGYpfSxmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMCksYT1uKDI5KSxvPW4oMzApLHI9aT9pLnRvU3RyaW5nVGFnOnZvaWQgMDt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwPT09dD8iW29iamVjdCBVbmRlZmluZWRdIjoiW29iamVjdCBOdWxsXSI6ciYmciBpbiBPYmplY3QodCk/YSh0KTpvKHQpfX0sZnVuY3Rpb24odCxlKXt2YXIgbj1BcnJheS5pc0FycmF5O3QuZXhwb3J0cz1ufSxmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0fX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTQpLGE9Im9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZixvPWl8fGF8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCk7dC5leHBvcnRzPW99LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEpLGE9bigzKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiB0fHxhKHQpJiYiW29iamVjdCBTeW1ib2xdIj09aSh0KX19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE4KShPYmplY3QsImNyZWF0ZSIpO3QuZXhwb3J0cz1pfSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big3Nyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQubGVuZ3RoO24tLTspaWYoaSh0W25dWzBdLGUpKXJldHVybiBuO3JldHVybi0xfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oODMpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciBuPXQuX19kYXRhX187cmV0dXJuIGkoZSk/blsic3RyaW5nIj09dHlwZW9mIGU/InN0cmluZyI6Imhhc2giXTpuLm1hcH19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDU1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLG4pe3ZhciBhPW51bGw9PXQ/dm9pZCAwOmkodCxlKTtyZXR1cm4gdm9pZCAwPT09YT9uOmF9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big0KS5TeW1ib2w7dC5leHBvcnRzPWl9LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTMpLGE9bigxNSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsIT10JiZhKHQubGVuZ3RoKSYmIWkodCl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxKSxhPW4oMTEpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtpZighYSh0KSlyZXR1cm4hMTt2YXIgZT1pKHQpO3JldHVybiJbb2JqZWN0IEZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEFzeW5jRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgUHJveHldIj09ZX19LGZ1bmN0aW9uKHQsZSxuKXsoZnVuY3Rpb24oZSl7dmFyIG49Im9iamVjdCI9PXR5cGVvZiBlJiZlJiZlLk9iamVjdD09PU9iamVjdCYmZTt0LmV4cG9ydHM9bn0pLmNhbGwodGhpcyxuKDI4KSl9LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdCYmdD4tMSYmdCUxPT0wJiZ0PD05MDA3MTk5MjU0NzQwOTkxfX0sZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49LTEsaT1udWxsPT10PzA6dC5sZW5ndGgsYT1BcnJheShpKTsrK248aTspYVtuXT1lKHRbbl0sbix0KTtyZXR1cm4gYX19LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0LndlYnBhY2tQb2x5ZmlsbHx8KHQuZGVwcmVjYXRlPWZ1bmN0aW9uKCl7fSx0LnBhdGhzPVtdLHQuY2hpbGRyZW58fCh0LmNoaWxkcmVuPVtdKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwibG9hZGVkIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdC5sfX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJpZCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHQuaX19KSx0LndlYnBhY2tQb2x5ZmlsbD0xKSx0fX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNjUpLGE9big2OSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49YSh0LGUpO3JldHVybiBpKG4pP246dm9pZCAwfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMjQpLGE9bigxMiksbz1uKDMxKSxyPW4oMzIpLHM9bigzNyksYz1NYXRoLm1heDt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLG4sbCl7dD1hKHQpP3Q6cyh0KSxuPW4mJiFsP3Iobik6MDt2YXIgXz10Lmxlbmd0aDtyZXR1cm4gbjwwJiYobj1jKF8rbiwwKSksbyh0KT9uPD1fJiZ0LmluZGV4T2YoZSxuKT4tMTohIV8mJmkodCxlLG4pPi0xfX0sZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9alF1ZXJ5fSxmdW5jdGlvbih0LGUpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiB0KGkpe2lmKCFpKXRocm93IG5ldyBFcnJvcigiTm8gb3B0aW9ucyBwYXNzZWQgdG8gV2F5cG9pbnQgY29uc3RydWN0b3IiKTtpZighaS5lbGVtZW50KXRocm93IG5ldyBFcnJvcigiTm8gZWxlbWVudCBvcHRpb24gcGFzc2VkIHRvIFdheXBvaW50IGNvbnN0cnVjdG9yIik7aWYoIWkuaGFuZGxlcil0aHJvdyBuZXcgRXJyb3IoIk5vIGhhbmRsZXIgb3B0aW9uIHBhc3NlZCB0byBXYXlwb2ludCBjb25zdHJ1Y3RvciIpO3RoaXMua2V5PSJ3YXlwb2ludC0iK2UsdGhpcy5vcHRpb25zPXQuQWRhcHRlci5leHRlbmQoe30sdC5kZWZhdWx0cyxpKSx0aGlzLmVsZW1lbnQ9dGhpcy5vcHRpb25zLmVsZW1lbnQsdGhpcy5hZGFwdGVyPW5ldyB0LkFkYXB0ZXIodGhpcy5lbGVtZW50KSx0aGlzLmNhbGxiYWNrPWkuaGFuZGxlcix0aGlzLmF4aXM9dGhpcy5vcHRpb25zLmhvcml6b250YWw/Imhvcml6b250YWwiOiJ2ZXJ0aWNhbCIsdGhpcy5lbmFibGVkPXRoaXMub3B0aW9ucy5lbmFibGVkLHRoaXMudHJpZ2dlclBvaW50PW51bGwsdGhpcy5ncm91cD10Lkdyb3VwLmZpbmRPckNyZWF0ZSh7bmFtZTp0aGlzLm9wdGlvbnMuZ3JvdXAsYXhpczp0aGlzLmF4aXN9KSx0aGlzLmNvbnRleHQ9dC5Db250ZXh0LmZpbmRPckNyZWF0ZUJ5RWxlbWVudCh0aGlzLm9wdGlvbnMuY29udGV4dCksdC5vZmZzZXRBbGlhc2VzW3RoaXMub3B0aW9ucy5vZmZzZXRdJiYodGhpcy5vcHRpb25zLm9mZnNldD10Lm9mZnNldEFsaWFzZXNbdGhpcy5vcHRpb25zLm9mZnNldF0pLHRoaXMuZ3JvdXAuYWRkKHRoaXMpLHRoaXMuY29udGV4dC5hZGQodGhpcyksblt0aGlzLmtleV09dGhpcyxlKz0xfXZhciBlPTAsbj17fTt0LnByb3RvdHlwZS5xdWV1ZVRyaWdnZXI9ZnVuY3Rpb24odCl7dGhpcy5ncm91cC5xdWV1ZVRyaWdnZXIodGhpcyx0KX0sdC5wcm90b3R5cGUudHJpZ2dlcj1mdW5jdGlvbih0KXt0aGlzLmVuYWJsZWQmJnRoaXMuY2FsbGJhY2smJnRoaXMuY2FsbGJhY2suYXBwbHkodGhpcyx0KX0sdC5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3RoaXMuY29udGV4dC5yZW1vdmUodGhpcyksdGhpcy5ncm91cC5yZW1vdmUodGhpcyksZGVsZXRlIG5bdGhpcy5rZXldfSx0LnByb3RvdHlwZS5kaXNhYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZW5hYmxlZD0hMSx0aGlzfSx0LnByb3RvdHlwZS5lbmFibGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb250ZXh0LnJlZnJlc2goKSx0aGlzLmVuYWJsZWQ9ITAsdGhpc30sdC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdyb3VwLm5leHQodGhpcyl9LHQucHJvdG90eXBlLnByZXZpb3VzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ3JvdXAucHJldmlvdXModGhpcyl9LHQuaW52b2tlQWxsPWZ1bmN0aW9uKHQpe3ZhciBlPVtdO2Zvcih2YXIgaSBpbiBuKWUucHVzaChuW2ldKTtmb3IodmFyIGE9MCxvPWUubGVuZ3RoO28+YTthKyspZVthXVt0XSgpfSx0LmRlc3Ryb3lBbGw9ZnVuY3Rpb24oKXt0Lmludm9rZUFsbCgiZGVzdHJveSIpfSx0LmRpc2FibGVBbGw9ZnVuY3Rpb24oKXt0Lmludm9rZUFsbCgiZGlzYWJsZSIpfSx0LmVuYWJsZUFsbD1mdW5jdGlvbigpe3QuaW52b2tlQWxsKCJlbmFibGUiKX0sdC5yZWZyZXNoQWxsPWZ1bmN0aW9uKCl7dC5Db250ZXh0LnJlZnJlc2hBbGwoKX0sdC52aWV3cG9ydEhlaWdodD1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuaW5uZXJIZWlnaHR8fGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHR9LHQudmlld3BvcnRXaWR0aD1mdW5jdGlvbigpe3JldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGh9LHQuYWRhcHRlcnM9W10sdC5kZWZhdWx0cz17Y29udGV4dDp3aW5kb3csY29udGludW91czohMCxlbmFibGVkOiEwLGdyb3VwOiJkZWZhdWx0Iixob3Jpem9udGFsOiExLG9mZnNldDowfSx0Lm9mZnNldEFsaWFzZXM9eyJib3R0b20taW4tdmlldyI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb250ZXh0LmlubmVySGVpZ2h0KCktdGhpcy5hZGFwdGVyLm91dGVySGVpZ2h0KCl9LCJyaWdodC1pbi12aWV3IjpmdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbnRleHQuaW5uZXJXaWR0aCgpLXRoaXMuYWRhcHRlci5vdXRlcldpZHRoKCl9fSx3aW5kb3cuV2F5cG9pbnQ9dH0oKSxmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiB0KHQpe3dpbmRvdy5zZXRUaW1lb3V0KHQsMWUzLzYwKX1mdW5jdGlvbiBlKHQpe3RoaXMuZWxlbWVudD10LHRoaXMuQWRhcHRlcj1hLkFkYXB0ZXIsdGhpcy5hZGFwdGVyPW5ldyB0aGlzLkFkYXB0ZXIodCksdGhpcy5rZXk9IndheXBvaW50LWNvbnRleHQtIituLHRoaXMuZGlkU2Nyb2xsPSExLHRoaXMuZGlkUmVzaXplPSExLHRoaXMub2xkU2Nyb2xsPXt4OnRoaXMuYWRhcHRlci5zY3JvbGxMZWZ0KCkseTp0aGlzLmFkYXB0ZXIuc2Nyb2xsVG9wKCl9LHRoaXMud2F5cG9pbnRzPXt2ZXJ0aWNhbDp7fSxob3Jpem9udGFsOnt9fSx0LndheXBvaW50Q29udGV4dEtleT10aGlzLmtleSxpW3Qud2F5cG9pbnRDb250ZXh0S2V5XT10aGlzLG4rPTEsdGhpcy5jcmVhdGVUaHJvdHRsZWRTY3JvbGxIYW5kbGVyKCksdGhpcy5jcmVhdGVUaHJvdHRsZWRSZXNpemVIYW5kbGVyKCl9dmFyIG49MCxpPXt9LGE9d2luZG93LldheXBvaW50LG89d2luZG93Lm9ubG9hZDtlLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24odCl7dmFyIGU9dC5vcHRpb25zLmhvcml6b250YWw/Imhvcml6b250YWwiOiJ2ZXJ0aWNhbCI7dGhpcy53YXlwb2ludHNbZV1bdC5rZXldPXQsdGhpcy5yZWZyZXNoKCl9LGUucHJvdG90eXBlLmNoZWNrRW1wdHk9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLkFkYXB0ZXIuaXNFbXB0eU9iamVjdCh0aGlzLndheXBvaW50cy5ob3Jpem9udGFsKSxlPXRoaXMuQWRhcHRlci5pc0VtcHR5T2JqZWN0KHRoaXMud2F5cG9pbnRzLnZlcnRpY2FsKTt0JiZlJiYodGhpcy5hZGFwdGVyLm9mZigiLndheXBvaW50cyIpLGRlbGV0ZSBpW3RoaXMua2V5XSl9LGUucHJvdG90eXBlLmNyZWF0ZVRocm90dGxlZFJlc2l6ZUhhbmRsZXI9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KCl7ZS5oYW5kbGVSZXNpemUoKSxlLmRpZFJlc2l6ZT0hMX12YXIgZT10aGlzO3RoaXMuYWRhcHRlci5vbigicmVzaXplLndheXBvaW50cyIsKGZ1bmN0aW9uKCl7ZS5kaWRSZXNpemV8fChlLmRpZFJlc2l6ZT0hMCxhLnJlcXVlc3RBbmltYXRpb25GcmFtZSh0KSl9KSl9LGUucHJvdG90eXBlLmNyZWF0ZVRocm90dGxlZFNjcm9sbEhhbmRsZXI9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KCl7ZS5oYW5kbGVTY3JvbGwoKSxlLmRpZFNjcm9sbD0hMX12YXIgZT10aGlzO3RoaXMuYWRhcHRlci5vbigic2Nyb2xsLndheXBvaW50cyIsKGZ1bmN0aW9uKCl7KCFlLmRpZFNjcm9sbHx8YS5pc1RvdWNoKSYmKGUuZGlkU2Nyb2xsPSEwLGEucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHQpKX0pKX0sZS5wcm90b3R5cGUuaGFuZGxlUmVzaXplPWZ1bmN0aW9uKCl7YS5Db250ZXh0LnJlZnJlc2hBbGwoKX0sZS5wcm90b3R5cGUuaGFuZGxlU2Nyb2xsPWZ1bmN0aW9uKCl7dmFyIHQ9e30sZT17aG9yaXpvbnRhbDp7bmV3U2Nyb2xsOnRoaXMuYWRhcHRlci5zY3JvbGxMZWZ0KCksb2xkU2Nyb2xsOnRoaXMub2xkU2Nyb2xsLngsZm9yd2FyZDoicmlnaHQiLGJhY2t3YXJkOiJsZWZ0In0sdmVydGljYWw6e25ld1Njcm9sbDp0aGlzLmFkYXB0ZXIuc2Nyb2xsVG9wKCksb2xkU2Nyb2xsOnRoaXMub2xkU2Nyb2xsLnksZm9yd2FyZDoiZG93biIsYmFja3dhcmQ6InVwIn19O2Zvcih2YXIgbiBpbiBlKXt2YXIgaT1lW25dLGE9aS5uZXdTY3JvbGw+aS5vbGRTY3JvbGw/aS5mb3J3YXJkOmkuYmFja3dhcmQ7Zm9yKHZhciBvIGluIHRoaXMud2F5cG9pbnRzW25dKXt2YXIgcj10aGlzLndheXBvaW50c1tuXVtvXSxzPWkub2xkU2Nyb2xsPHIudHJpZ2dlclBvaW50LGM9aS5uZXdTY3JvbGw+PXIudHJpZ2dlclBvaW50OyhzJiZjfHwhcyYmIWMpJiYoci5xdWV1ZVRyaWdnZXIoYSksdFtyLmdyb3VwLmlkXT1yLmdyb3VwKX19Zm9yKHZhciBsIGluIHQpdFtsXS5mbHVzaFRyaWdnZXJzKCk7dGhpcy5vbGRTY3JvbGw9e3g6ZS5ob3Jpem9udGFsLm5ld1Njcm9sbCx5OmUudmVydGljYWwubmV3U2Nyb2xsfX0sZS5wcm90b3R5cGUuaW5uZXJIZWlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbGVtZW50PT10aGlzLmVsZW1lbnQud2luZG93P2Eudmlld3BvcnRIZWlnaHQoKTp0aGlzLmFkYXB0ZXIuaW5uZXJIZWlnaHQoKX0sZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKHQpe2RlbGV0ZSB0aGlzLndheXBvaW50c1t0LmF4aXNdW3Qua2V5XSx0aGlzLmNoZWNrRW1wdHkoKX0sZS5wcm90b3R5cGUuaW5uZXJXaWR0aD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVsZW1lbnQ9PXRoaXMuZWxlbWVudC53aW5kb3c/YS52aWV3cG9ydFdpZHRoKCk6dGhpcy5hZGFwdGVyLmlubmVyV2lkdGgoKX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3ZhciB0PVtdO2Zvcih2YXIgZSBpbiB0aGlzLndheXBvaW50cylmb3IodmFyIG4gaW4gdGhpcy53YXlwb2ludHNbZV0pdC5wdXNoKHRoaXMud2F5cG9pbnRzW2VdW25dKTtmb3IodmFyIGk9MCxhPXQubGVuZ3RoO2E+aTtpKyspdFtpXS5kZXN0cm95KCl9LGUucHJvdG90eXBlLnJlZnJlc2g9ZnVuY3Rpb24oKXt2YXIgdCxlPXRoaXMuZWxlbWVudD09dGhpcy5lbGVtZW50LndpbmRvdyxuPWU/dm9pZCAwOnRoaXMuYWRhcHRlci5vZmZzZXQoKSxpPXt9O2Zvcih2YXIgbyBpbiB0aGlzLmhhbmRsZVNjcm9sbCgpLHQ9e2hvcml6b250YWw6e2NvbnRleHRPZmZzZXQ6ZT8wOm4ubGVmdCxjb250ZXh0U2Nyb2xsOmU/MDp0aGlzLm9sZFNjcm9sbC54LGNvbnRleHREaW1lbnNpb246dGhpcy5pbm5lcldpZHRoKCksb2xkU2Nyb2xsOnRoaXMub2xkU2Nyb2xsLngsZm9yd2FyZDoicmlnaHQiLGJhY2t3YXJkOiJsZWZ0IixvZmZzZXRQcm9wOiJsZWZ0In0sdmVydGljYWw6e2NvbnRleHRPZmZzZXQ6ZT8wOm4udG9wLGNvbnRleHRTY3JvbGw6ZT8wOnRoaXMub2xkU2Nyb2xsLnksY29udGV4dERpbWVuc2lvbjp0aGlzLmlubmVySGVpZ2h0KCksb2xkU2Nyb2xsOnRoaXMub2xkU2Nyb2xsLnksZm9yd2FyZDoiZG93biIsYmFja3dhcmQ6InVwIixvZmZzZXRQcm9wOiJ0b3AifX0pe3ZhciByPXRbb107Zm9yKHZhciBzIGluIHRoaXMud2F5cG9pbnRzW29dKXt2YXIgYyxsLF8sZCxwPXRoaXMud2F5cG9pbnRzW29dW3NdLHU9cC5vcHRpb25zLm9mZnNldCxmPXAudHJpZ2dlclBvaW50LGg9MCxiPW51bGw9PWY7cC5lbGVtZW50IT09cC5lbGVtZW50LndpbmRvdyYmKGg9cC5hZGFwdGVyLm9mZnNldCgpW3Iub2Zmc2V0UHJvcF0pLCJmdW5jdGlvbiI9PXR5cGVvZiB1P3U9dS5hcHBseShwKToic3RyaW5nIj09dHlwZW9mIHUmJih1PXBhcnNlRmxvYXQodSkscC5vcHRpb25zLm9mZnNldC5pbmRleE9mKCIlIik+LTEmJih1PU1hdGguY2VpbChyLmNvbnRleHREaW1lbnNpb24qdS8xMDApKSksYz1yLmNvbnRleHRTY3JvbGwtci5jb250ZXh0T2Zmc2V0LHAudHJpZ2dlclBvaW50PWgrYy11LGw9ZjxyLm9sZFNjcm9sbCxfPXAudHJpZ2dlclBvaW50Pj1yLm9sZFNjcm9sbCxkPSFsJiYhXywhYiYmKGwmJl8pPyhwLnF1ZXVlVHJpZ2dlcihyLmJhY2t3YXJkKSxpW3AuZ3JvdXAuaWRdPXAuZ3JvdXApOighYiYmZHx8YiYmci5vbGRTY3JvbGw+PXAudHJpZ2dlclBvaW50KSYmKHAucXVldWVUcmlnZ2VyKHIuZm9yd2FyZCksaVtwLmdyb3VwLmlkXT1wLmdyb3VwKX19cmV0dXJuIGEucmVxdWVzdEFuaW1hdGlvbkZyYW1lKChmdW5jdGlvbigpe2Zvcih2YXIgdCBpbiBpKWlbdF0uZmx1c2hUcmlnZ2VycygpfSkpLHRoaXN9LGUuZmluZE9yQ3JlYXRlQnlFbGVtZW50PWZ1bmN0aW9uKHQpe3JldHVybiBlLmZpbmRCeUVsZW1lbnQodCl8fG5ldyBlKHQpfSxlLnJlZnJlc2hBbGw9ZnVuY3Rpb24oKXtmb3IodmFyIHQgaW4gaSlpW3RdLnJlZnJlc2goKX0sZS5maW5kQnlFbGVtZW50PWZ1bmN0aW9uKHQpe3JldHVybiBpW3Qud2F5cG9pbnRDb250ZXh0S2V5XX0sd2luZG93Lm9ubG9hZD1mdW5jdGlvbigpe28mJm8oKSxlLnJlZnJlc2hBbGwoKX0sYS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU9ZnVuY3Rpb24oZSl7KHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5tb3pSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy53ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHQpLmNhbGwod2luZG93LGUpfSxhLkNvbnRleHQ9ZX0oKSxmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiB0KHQsZSl7cmV0dXJuIHQudHJpZ2dlclBvaW50LWUudHJpZ2dlclBvaW50fWZ1bmN0aW9uIGUodCxlKXtyZXR1cm4gZS50cmlnZ2VyUG9pbnQtdC50cmlnZ2VyUG9pbnR9ZnVuY3Rpb24gbih0KXt0aGlzLm5hbWU9dC5uYW1lLHRoaXMuYXhpcz10LmF4aXMsdGhpcy5pZD10aGlzLm5hbWUrIi0iK3RoaXMuYXhpcyx0aGlzLndheXBvaW50cz1bXSx0aGlzLmNsZWFyVHJpZ2dlclF1ZXVlcygpLGlbdGhpcy5heGlzXVt0aGlzLm5hbWVdPXRoaXN9dmFyIGk9e3ZlcnRpY2FsOnt9LGhvcml6b250YWw6e319LGE9d2luZG93LldheXBvaW50O24ucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0KXt0aGlzLndheXBvaW50cy5wdXNoKHQpfSxuLnByb3RvdHlwZS5jbGVhclRyaWdnZXJRdWV1ZXM9ZnVuY3Rpb24oKXt0aGlzLnRyaWdnZXJRdWV1ZXM9e3VwOltdLGRvd246W10sbGVmdDpbXSxyaWdodDpbXX19LG4ucHJvdG90eXBlLmZsdXNoVHJpZ2dlcnM9ZnVuY3Rpb24oKXtmb3IodmFyIG4gaW4gdGhpcy50cmlnZ2VyUXVldWVzKXt2YXIgaT10aGlzLnRyaWdnZXJRdWV1ZXNbbl0sYT0idXAiPT09bnx8ImxlZnQiPT09bjtpLnNvcnQoYT9lOnQpO2Zvcih2YXIgbz0wLHI9aS5sZW5ndGg7cj5vO28rPTEpe3ZhciBzPWlbb107KHMub3B0aW9ucy5jb250aW51b3VzfHxvPT09aS5sZW5ndGgtMSkmJnMudHJpZ2dlcihbbl0pfX10aGlzLmNsZWFyVHJpZ2dlclF1ZXVlcygpfSxuLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKGUpe3RoaXMud2F5cG9pbnRzLnNvcnQodCk7dmFyIG49YS5BZGFwdGVyLmluQXJyYXkoZSx0aGlzLndheXBvaW50cyk7cmV0dXJuIG49PT10aGlzLndheXBvaW50cy5sZW5ndGgtMT9udWxsOnRoaXMud2F5cG9pbnRzW24rMV19LG4ucHJvdG90eXBlLnByZXZpb3VzPWZ1bmN0aW9uKGUpe3RoaXMud2F5cG9pbnRzLnNvcnQodCk7dmFyIG49YS5BZGFwdGVyLmluQXJyYXkoZSx0aGlzLndheXBvaW50cyk7cmV0dXJuIG4/dGhpcy53YXlwb2ludHNbbi0xXTpudWxsfSxuLnByb3RvdHlwZS5xdWV1ZVRyaWdnZXI9ZnVuY3Rpb24odCxlKXt0aGlzLnRyaWdnZXJRdWV1ZXNbZV0ucHVzaCh0KX0sbi5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKHQpe3ZhciBlPWEuQWRhcHRlci5pbkFycmF5KHQsdGhpcy53YXlwb2ludHMpO2U+LTEmJnRoaXMud2F5cG9pbnRzLnNwbGljZShlLDEpfSxuLnByb3RvdHlwZS5maXJzdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLndheXBvaW50c1swXX0sbi5wcm90b3R5cGUubGFzdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLndheXBvaW50c1t0aGlzLndheXBvaW50cy5sZW5ndGgtMV19LG4uZmluZE9yQ3JlYXRlPWZ1bmN0aW9uKHQpe3JldHVybiBpW3QuYXhpc11bdC5uYW1lXXx8bmV3IG4odCl9LGEuR3JvdXA9bn0oKSxmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiB0KHQpe3RoaXMuJGVsZW1lbnQ9ZSh0KX12YXIgZT13aW5kb3cualF1ZXJ5LG49d2luZG93LldheXBvaW50O2UuZWFjaChbImlubmVySGVpZ2h0IiwiaW5uZXJXaWR0aCIsIm9mZiIsIm9mZnNldCIsIm9uIiwib3V0ZXJIZWlnaHQiLCJvdXRlcldpZHRoIiwic2Nyb2xsTGVmdCIsInNjcm9sbFRvcCJdLChmdW5jdGlvbihlLG4pe3QucHJvdG90eXBlW25dPWZ1bmN0aW9uKCl7dmFyIHQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gdGhpcy4kZWxlbWVudFtuXS5hcHBseSh0aGlzLiRlbGVtZW50LHQpfX0pKSxlLmVhY2goWyJleHRlbmQiLCJpbkFycmF5IiwiaXNFbXB0eU9iamVjdCJdLChmdW5jdGlvbihuLGkpe3RbaV09ZVtpXX0pKSxuLmFkYXB0ZXJzLnB1c2goe25hbWU6ImpxdWVyeSIsQWRhcHRlcjp0fSksbi5BZGFwdGVyPXR9KCksZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gdCh0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgbj1bXSxpPWFyZ3VtZW50c1swXTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgYXJndW1lbnRzWzBdJiYoKGk9dC5leHRlbmQoe30sYXJndW1lbnRzWzFdKSkuaGFuZGxlcj1hcmd1bWVudHNbMF0pLHRoaXMuZWFjaCgoZnVuY3Rpb24oKXt2YXIgYT10LmV4dGVuZCh7fSxpLHtlbGVtZW50OnRoaXN9KTsic3RyaW5nIj09dHlwZW9mIGEuY29udGV4dCYmKGEuY29udGV4dD10KHRoaXMpLmNsb3Nlc3QoYS5jb250ZXh0KVswXSksbi5wdXNoKG5ldyBlKGEpKX0pKSxufX12YXIgZT13aW5kb3cuV2F5cG9pbnQ7d2luZG93LmpRdWVyeSYmKHdpbmRvdy5qUXVlcnkuZm4ud2F5cG9pbnQ9dCh3aW5kb3cualF1ZXJ5KSksd2luZG93LlplcHRvJiYod2luZG93LlplcHRvLmZuLndheXBvaW50PXQod2luZG93LlplcHRvKSl9KCl9LGZ1bmN0aW9uKHQsZSl7ZnVuY3Rpb24gbih0KXtyZXR1cm4obj0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfSFmdW5jdGlvbih0LGUpe2Zvcih2YXIgbiBpbiBlKXRbbl09ZVtuXX0od2luZG93LGZ1bmN0aW9uKHQpe3ZhciBlPXt9O2Z1bmN0aW9uIGkobil7aWYoZVtuXSlyZXR1cm4gZVtuXS5leHBvcnRzO3ZhciBhPWVbbl09e2k6bixsOiExLGV4cG9ydHM6e319O3JldHVybiB0W25dLmNhbGwoYS5leHBvcnRzLGEsYS5leHBvcnRzLGkpLGEubD0hMCxhLmV4cG9ydHN9cmV0dXJuIGkubT10LGkuYz1lLGkuZD1mdW5jdGlvbih0LGUsbil7aS5vKHQsZSl8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse2VudW1lcmFibGU6ITAsZ2V0Om59KX0saS5yPWZ1bmN0aW9uKHQpeyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LGkudD1mdW5jdGlvbih0LGUpe2lmKDEmZSYmKHQ9aSh0KSksOCZlKXJldHVybiB0O2lmKDQmZSYmIm9iamVjdCI9PW4odCkmJnQmJnQuX19lc01vZHVsZSlyZXR1cm4gdDt2YXIgYT1PYmplY3QuY3JlYXRlKG51bGwpO2lmKGkucihhKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoYSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6dH0pLDImZSYmInN0cmluZyIhPXR5cGVvZiB0KWZvcih2YXIgbyBpbiB0KWkuZChhLG8sZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV19LmJpbmQobnVsbCxvKSk7cmV0dXJuIGF9LGkubj1mdW5jdGlvbih0KXt2YXIgZT10JiZ0Ll9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gdC5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiB0fTtyZXR1cm4gaS5kKGUsImEiLGUpLGV9LGkubz1mdW5jdGlvbih0LGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKX0saS5wPSIvIixpKGkucz0xNDQyKX0oezE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oOTEpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbil7dmFyIGE9bnVsbD09dD92b2lkIDA6aSh0LGUpO3JldHVybiB2b2lkIDA9PT1hP246YX19LDEwMDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMjcpLGE9bigyMzkpLG89bigyNDEpLHI9bigyNDIpLHM9bigyNDMpO2Z1bmN0aW9uIGModCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBpPXRbZV07dGhpcy5zZXQoaVswXSxpWzFdKX19Yy5wcm90b3R5cGUuY2xlYXI9aSxjLnByb3RvdHlwZS5kZWxldGU9YSxjLnByb3RvdHlwZS5nZXQ9byxjLnByb3RvdHlwZS5oYXM9cixjLnByb3RvdHlwZS5zZXQ9cyx0LmV4cG9ydHM9Y30sMTAxOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE0OSksYT1uKDIwOCksbz1uKDI1Nik7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZT09ZT9vKHQsZSxuKTppKHQsYSxuKX19LDEwNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3NiksYT1uKDI0NSksbz1uKDI0Nikscj1uKDI0Nykscz1uKDI0OCksYz1uKDI0OSk7ZnVuY3Rpb24gbCh0KXt2YXIgZT10aGlzLl9fZGF0YV9fPW5ldyBpKHQpO3RoaXMuc2l6ZT1lLnNpemV9bC5wcm90b3R5cGUuY2xlYXI9YSxsLnByb3RvdHlwZS5kZWxldGU9byxsLnByb3RvdHlwZS5nZXQ9cixsLnByb3RvdHlwZS5oYXM9cyxsLnByb3RvdHlwZS5zZXQ9Yyx0LmV4cG9ydHM9bH0sMTEwOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDg5KSxhPW4oMjE3KSxvPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKCFpKHQpKXJldHVybiBhKHQpO3ZhciBlPVtdO2Zvcih2YXIgbiBpbiBPYmplY3QodCkpby5jYWxsKHQsbikmJiJjb25zdHJ1Y3RvciIhPW4mJmUucHVzaChuKTtyZXR1cm4gZX19LDExMTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0OSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6aX19LDExMjpmdW5jdGlvbih0LGUsaSl7dmFyIGE9aSgzKSxvPWkoNTQpLHI9L1wufFxbKD86W15bXF1dKnwoWyInXSkoPzooPyFcMSlbXlxcXXxcXC4pKj9cMSlcXS8scz0vXlx3KiQvO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2lmKGEodCkpcmV0dXJuITE7dmFyIGk9bih0KTtyZXR1cm4hKCJudW1iZXIiIT1pJiYic3ltYm9sIiE9aSYmImJvb2xlYW4iIT1pJiZudWxsIT10JiYhbyh0KSl8fHMudGVzdCh0KXx8IXIudGVzdCh0KXx8bnVsbCE9ZSYmdCBpbiBPYmplY3QoZSl9fSwxMTY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTg1KSxhPW4oMTIpLG89big1NCkscj0vXlstK10weFswLTlhLWZdKyQvaSxzPS9eMGJbMDFdKyQvaSxjPS9eMG9bMC03XSskL2ksbD1wYXJzZUludDt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7aWYoIm51bWJlciI9PXR5cGVvZiB0KXJldHVybiB0O2lmKG8odCkpcmV0dXJuIE5hTjtpZihhKHQpKXt2YXIgZT0iZnVuY3Rpb24iPT10eXBlb2YgdC52YWx1ZU9mP3QudmFsdWVPZigpOnQ7dD1hKGUpP2UrIiI6ZX1pZigic3RyaW5nIiE9dHlwZW9mIHQpcmV0dXJuIDA9PT10P3Q6K3Q7dD1pKHQpO3ZhciBuPXMudGVzdCh0KTtyZXR1cm4gbnx8Yy50ZXN0KHQpP2wodC5zbGljZSgyKSxuPzI6OCk6ci50ZXN0KHQpP05hTjordH19LDExNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyNTApLGE9bigyOCk7dC5leHBvcnRzPWZ1bmN0aW9uIHQoZSxuLG8scixzKXtyZXR1cm4gZT09PW58fChudWxsPT1lfHxudWxsPT1ufHwhYShlKSYmIWEobik/ZSE9ZSYmbiE9bjppKGUsbixvLHIsdCxzKSl9fSwxMTg6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49LTEsaT1lLmxlbmd0aCxhPXQubGVuZ3RoOysrbjxpOyl0W2Erbl09ZVtuXTtyZXR1cm4gdH19LDExOTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0tMSxpPW51bGw9PXQ/MDp0Lmxlbmd0aCxhPTAsbz1bXTsrK248aTspe3ZhciByPXRbbl07ZShyLG4sdCkmJihvW2ErK109cil9cmV0dXJuIG99fSwxMjpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1uKHQpO3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX0sMTI0OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE2MiksYT1uKDE0KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdCYmaSh0LGUsYSl9fSwxMjg6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9LTEsbj1BcnJheSh0LnNpemUpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKHQpe25bKytlXT10fSkpLG59fSwxMzc6ZnVuY3Rpb24odCxlLGkpeyhmdW5jdGlvbihlKXt2YXIgaT0ib2JqZWN0Ij09bihlKSYmZSYmZS5PYmplY3Q9PT1PYmplY3QmJmU7dC5leHBvcnRzPWl9KS5jYWxsKHRoaXMsaSg4OCkpfSwxMzg6ZnVuY3Rpb24odCxlKXt2YXIgbj1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKG51bGwhPXQpe3RyeXtyZXR1cm4gbi5jYWxsKHQpfWNhdGNoKHQpe310cnl7cmV0dXJuIHQrIiJ9Y2F0Y2godCl7fX1yZXR1cm4iIn19LDEzOTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxNDcpLGE9bigxNzIpLG89bigxNDgpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbixyLHMsYyl7dmFyIGw9MSZuLF89dC5sZW5ndGgsZD1lLmxlbmd0aDtpZihfIT1kJiYhKGwmJmQ+XykpcmV0dXJuITE7dmFyIHA9Yy5nZXQodCksdT1jLmdldChlKTtpZihwJiZ1KXJldHVybiBwPT1lJiZ1PT10O3ZhciBmPS0xLGg9ITAsYj0yJm4/bmV3IGk6dm9pZCAwO2ZvcihjLnNldCh0LGUpLGMuc2V0KGUsdCk7KytmPF87KXt2YXIgdj10W2ZdLG09ZVtmXTtpZihyKXZhciBnPWw/cihtLHYsZixlLHQsYyk6cih2LG0sZix0LGUsYyk7aWYodm9pZCAwIT09Zyl7aWYoZyljb250aW51ZTtoPSExO2JyZWFrfWlmKGIpe2lmKCFhKGUsKGZ1bmN0aW9uKHQsZSl7aWYoIW8oYixlKSYmKHY9PT10fHxzKHYsdCxuLHIsYykpKXJldHVybiBiLnB1c2goZSl9KSkpe2g9ITE7YnJlYWt9fWVsc2UgaWYodiE9PW0mJiFzKHYsbSxuLHIsYykpe2g9ITE7YnJlYWt9fXJldHVybiBjLmRlbGV0ZSh0KSxjLmRlbGV0ZShlKSxofX0sMTQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTYzKSxhPW4oMTEwKSxvPW4oMzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbyh0KT9pKHQpOmEodCl9fSwxNDA6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTE5KSxhPW4oMTY0KSxvPU9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUscj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzLHM9cj9mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD9bXToodD1PYmplY3QodCksaShyKHQpLChmdW5jdGlvbihlKXtyZXR1cm4gby5jYWxsKHQsZSl9KSkpfTphO3QuZXhwb3J0cz1zfSwxNDQyOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKHQpe3ZhciBlPW4oMzg3KSxpPW4oNDUyKSxhPW4oMTQ0Myk7IWZ1bmN0aW9uKG4pe3ZhciBvPW4oImJvZHkiKS5oYXNDbGFzcygiZXQtYmxvY2stbGF5b3V0LXByZXZpZXciKSxyPW4oIi5ldC1sLS1oZWFkZXIiKS5maXJzdCgpLHM9MDtpZih3aW5kb3cuZXRfcGJfZGVib3VuY2U9ZnVuY3Rpb24odCxlLG4pe3ZhciBpLGEsbyxyLHMsYz1EYXRlLm5vd3x8KG5ldyBEYXRlKS5nZXRUaW1lKCksbD1mdW5jdGlvbiBsKCl7dmFyIF89Yy1yO188ZSYmXz49MD9pPXNldFRpbWVvdXQobCxlLV8pOihpPW51bGwsbnx8KHM9dC5hcHBseShvLGEpLGl8fChvPWE9bnVsbCkpKX07cmV0dXJuIGZ1bmN0aW9uKCl7bz10aGlzLGE9YXJndW1lbnRzLHI9Yzt2YXIgXz1uJiYhaTtyZXR1cm4gaXx8KGk9c2V0VGltZW91dChsLGUpKSxfJiYocz10LmFwcGx5KG8sYSksbz1hPW51bGwpLHN9fSxyLmxlbmd0aCl7dmFyIGM9ci5maW5kKCIuZXRfYnVpbGRlcl9pbm5lcl9jb250ZW50IikuY2hpbGRyZW4oIi5ldF9wYl9zZWN0aW9uLS1maXhlZCIpLGw9ZXRfcGJfZGVib3VuY2UoKGZ1bmN0aW9uKHQpe3M9MCxuLmVhY2goYywoZnVuY3Rpb24odCxlKXt2YXIgaT1uKGUpLm91dGVySGVpZ2h0KCEwKTtzKz1pfSkpfSksMzAwKTtuKHdpbmRvdykub24oInJlc2l6ZSIsbCl9d2luZG93LmV0X3BiX3Ntb290aF9zY3JvbGw9ZnVuY3Rpb24odCxlLGksbyl7dmFyIGM9dC5vZmZzZXQoKS50b3AsbD1uKHdpbmRvdykud2lkdGgoKSxfPTAsZD0wLHA9IiIsdT0iIixmPXIuZmluZCgiLmV0X3BiX3NlY3Rpb24iKTtpZighKDAsYS5pc1RhcmdldFN0aWNreVN0YXRlKSh0KSl7Xz1uKCJib2R5IikuaGFzQ2xhc3MoImV0X2ZpeGVkX25hdiIpJiZsPjk4MD8obigiI3RvcC1oZWFkZXIiKS5vdXRlckhlaWdodCgpfHwwKSsobigiI21haW4taGVhZGVyIikub3V0ZXJIZWlnaHQoKXx8MCktMTowLG4oIiN3cGFkbWluYmFyIikubGVuZ3RoJiZsPjYwMCYmKF8rPW4oIiN3cGFkbWluYmFyIikub3V0ZXJIZWlnaHQoKXx8MCksci5sZW5ndGgmJihmLmhhc0NsYXNzKCJldF9wYl9zZWN0aW9uLS1maXhlZCIpJiYocD1NYXRoLmNlaWwocGFyc2VGbG9hdChmLmNzcygibGVmdCIpKSksdT1NYXRoLmNlaWwocGFyc2VGbG9hdChmLmNzcygicmlnaHQiKSkpLGw8OTgwJiYoXys9OTApKSwwPT09cCt1JiYoXys9cykpO3ZhciBoPSgwLGEuZ2V0Q2xvc2VzdFN0aWNreU1vZHVsZU9mZnNldFRvcCkodCk7aCYmKF8rPWgpLGQ9ZT8wOk1hdGgucm91bmQoYyktXyx2b2lkIDA9PT1vJiYobz0ic3dpbmciKSxuKCJodG1sLCBib2R5IikuYW5pbWF0ZSh7c2Nyb2xsVG9wOmR9LGksbyl9fSx3aW5kb3cuZXRfcGJfZm9ybV9wbGFjZWhvbGRlcnNfaW5pdD1mdW5jdGlvbihlKXtlLmZpbmQoJ2lucHV0OnRleHQsIGlucHV0W3R5cGU9ImVtYWlsIl0sIGlucHV0W3R5cGU9InVybCJdLCB0ZXh0YXJlYScpLmVhY2goKGZ1bmN0aW9uKGUsbil7dmFyIGk9dChuKSxhPWkuc2libGluZ3MoImxhYmVsIiksbz1pLnNpYmxpbmdzKCJsYWJlbCIpLnRleHQoKTthLmxlbmd0aCYmKGEuaGlkZSgpLGkuc2libGluZ3MoInNwYW4ucmVxdWlyZWQiKSYmKG8rPWkuc2libGluZ3MoInNwYW4ucmVxdWlyZWQiKS50ZXh0KCksaS5zaWJsaW5ncygic3Bhbi5yZXF1aXJlZCIpLmhpZGUoKSksaS52YWwobykpfSkpLm9uKCJmb2N1cyIsKGZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKS5zaWJsaW5ncygibGFiZWwiKS50ZXh0KCk7dCh0aGlzKS5zaWJsaW5ncygic3Bhbi5yZXF1aXJlZCIpLmxlbmd0aCYmKGUrPXQodGhpcykuc2libGluZ3MoInNwYW4ucmVxdWlyZWQiKS50ZXh0KCkpLHQodGhpcykudmFsKCk9PT1lJiZ0KHRoaXMpLnZhbCgiIil9KSkub24oImJsdXIiLChmdW5jdGlvbigpe3ZhciBlPXQodGhpcykuc2libGluZ3MoImxhYmVsIikudGV4dCgpO3QodGhpcykuc2libGluZ3MoInNwYW4ucmVxdWlyZWQiKS5sZW5ndGgmJihlKz10KHRoaXMpLnNpYmxpbmdzKCJzcGFuLnJlcXVpcmVkIikudGV4dCgpKSwiIj09PXQodGhpcykudmFsKCkmJnQodGhpcykudmFsKGUpfSkpfSx3aW5kb3cuZXRfZHVwbGljYXRlX21lbnU9ZnVuY3Rpb24odCxlLGEsbyxyKXtlLmVhY2goKGZ1bmN0aW9uKCl7dmFyIGUscz1uKHRoaXMpO2lmKCFzLmZpbmQoIiMiLmNvbmNhdChhKSkubGVuZ3RoJiYoIiIhPT10JiZ0LmNsb25lKCkuYXR0cigiaWQiLGEpLnJlbW92ZUNsYXNzKCkuYXR0cigiY2xhc3MiLG8pLmFwcGVuZFRvKHMpLChlPXMuZmluZCgiPiB1bCIpKS5maW5kKCIubWVudV9zbGlkZSIpLnJlbW92ZSgpLGUuZmluZCgiLmV0X3BiX21lbnVfX2xvZ28tc2xvdCIpLnJlbW92ZSgpLGUuZmluZCgibGkiKS5maXJzdCgpLmFkZENsYXNzKCJldF9maXJzdF9tb2JpbGVfaXRlbSIpLGUuZmluZCgiYSIpLm9uKCJjbGljayIsKGZ1bmN0aW9uKCl7bih0aGlzKS5wYXJlbnRzKCIuZXRfbW9iaWxlX21lbnUiKS5zaWJsaW5ncygiLm1vYmlsZV9tZW51X2JhciIpLnRyaWdnZXIoImNsaWNrIil9KSksIm5vX2NsaWNrX2V2ZW50IiE9PXIpKXtpLmlzQnVpbGRlciYmcy5vZmYoImNsaWNrIik7dmFyIGM9cy5jbG9zZXN0KCIuZXRfcGJfc2VjdGlvbiIpLGw9cy5jbG9zZXN0KCIuZXRfcGJfcm93IiksXz0iMHB4IiE9PWMuY3NzKCJib3JkZXItcmFkaXVzIiksZD0iMHB4IiE9PWwuY3NzKCJib3JkZXItcmFkaXVzIik7cy5vbigiY2xpY2siLCIubW9iaWxlX21lbnVfYmFyIiwoZnVuY3Rpb24oKXtyZXR1cm4gbigiLm1vYmlsZV9uYXYub3BlbmVkIC5tb2JpbGVfbWVudV9iYXIiKS5ub3Qobih0aGlzKSkudHJpZ2dlcigiY2xpY2siKSxzLmhhc0NsYXNzKCJjbG9zZWQiKT8ocy5yZW1vdmVDbGFzcygiY2xvc2VkIikuYWRkQ2xhc3MoIm9wZW5lZCIpLChffHxkKSYmKGMuY3NzKCJvdmVyZmxvdyIsInZpc2libGUiKSxsLmNzcygib3ZlcmZsb3ciLCJ2aXNpYmxlIikpLGUuc3RvcCgpLnNsaWRlRG93big1MDApKToocy5yZW1vdmVDbGFzcygib3BlbmVkIikuYWRkQ2xhc3MoImNsb3NlZCIpLGUuc3RvcCgpLnNsaWRlVXAoNTAwKSwoX3x8ZCkmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Yy5jc3MoIm92ZXJmbG93IiwiaGlkZGVuIiksbC5jc3MoIm92ZXJmbG93IiwiaGlkZGVuIil9KSw1MDApKSwhMX0pKX19KSksbigiI21vYmlsZV9tZW51IC5jZW50ZXJlZC1pbmxpbmUtbG9nby13cmFwIikucmVtb3ZlKCl9LHdpbmRvdy5ldF9wYl9yZW1vdmVfcGxhY2Vob2xkZXJfdGV4dD1mdW5jdGlvbihlKXtlLmZpbmQoImlucHV0OnRleHQsIHRleHRhcmVhIikuZWFjaCgoZnVuY3Rpb24oZSxuKXt2YXIgaT10KG4pLGE9aS5zaWJsaW5ncygibGFiZWwiKTtpLnNpYmxpbmdzKCJsYWJlbCIpLnRleHQoKSxhLmxlbmd0aCYmYS5pcygiOmhpZGRlbiIpJiZhLnRleHQoKT09aS52YWwoKSYmaS52YWwoIiIpfSkpfSx3aW5kb3cuZXRfZml4X2Z1bGxzY3JlZW5fc2VjdGlvbj1mdW5jdGlvbigpe3ZhciB0PW4obz9lLnRvcF93aW5kb3c6d2luZG93KTtuKCJzZWN0aW9uLmV0X3BiX2Z1bGxzY3JlZW4iKS5lYWNoKChmdW5jdGlvbigpe3ZhciBlPW4odGhpcyk7ZXRfY2FsY19mdWxsc2NyZWVuX3NlY3Rpb24uYmluZChlKSx0Lm9uKCJyZXNpemUiLGV0X2NhbGNfZnVsbHNjcmVlbl9zZWN0aW9uLmJpbmQoZSkpfSkpfSx3aW5kb3cuZXRfYmFyX2NvdW50ZXJzX2luaXQ9ZnVuY3Rpb24odCl7dC5sZW5ndGgmJnQuY3NzKHt3aWR0aDoiIi5jb25jYXQocGFyc2VGbG9hdCh0LmF0dHIoImRhdGEtd2lkdGgiKSksIiUiKX0pfSx3aW5kb3cuZXRfZml4X3ByaWNpbmdfY3VycmVuY3lfcG9zaXRpb249ZnVuY3Rpb24odCl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt2YXIgZT12b2lkIDAhPT10P3Q6bigiLmV0X3BiX3ByaWNpbmdfdGFibGUiKTtlLmxlbmd0aCYmZS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcykuZmluZCgiLmV0X3BiX2V0X3ByaWNlIiksZT0hIXQubGVuZ3RoJiZ0LmZpbmQoIi5ldF9wYl9kb2xsYXJfc2lnbiIpLGk9ISF0Lmxlbmd0aCYmdC5maW5kKCIuZXRfcGJfc3VtIik7ZSYmaSYmZS5jc3Moe21hcmdpbkxlZnQ6IiIuY29uY2F0KC1lLndpZHRoKCksInB4Iil9KX0pKX0pLDEpfSx3aW5kb3cuZXRfcGJfc2V0X3Jlc3BvbnNpdmVfZ3JpZD1mdW5jdGlvbih0LGUpe3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dmFyIGk9dC5pbm5lcldpZHRoKCksYT10LmZpbmQoZSksbz1hLm91dGVyV2lkdGgoITApLHI9by1hLm91dGVyV2lkdGgoKSxzPU1hdGgucm91bmQoKGkrcikvbyksYz0xLGw9MSxfPW4oKTtpZihhLnJlbW92ZUNsYXNzKCJsYXN0X2luX3JvdyBmaXJzdF9pbl9yb3cgb25fbGFzdF9yb3ciKSxhLmZpbHRlcigiOnZpc2libGUiKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyk7dC5oYXNDbGFzcygiaW5hY3RpdmUiKXx8KGw9PT1jPyh0LmFkZENsYXNzKCJmaXJzdF9pbl9yb3ciKSxfPXQpOjA9PWMlcyYmKHQuYWRkQ2xhc3MoImxhc3RfaW5fcm93IiksbD1jKzEpLGMrKyl9KSksXy5sZW5ndGgpe3ZhciBkPV8ucGFyZW50cygiLmV0X3BiX21vZHVsZSIpO2lmKGQuaXMoIjpsYXN0LWNoaWxkIikpe3ZhciBwPV8ucGFyZW50cygiLmV0X3BiX2NvbHVtbiIpWzBdO24ocCkuZmluZCgiLmV0X3BiX2dyaWRfaXRlbSIpLnJlbW92ZUNsYXNzKCJvbl9sYXN0X3JvdyIpO3ZhciB1PWQuZmluZCgiLmV0X3BiX2dhbGxlcnlfcGFnaW5hdGlvbiIpOzA9PT11Lmxlbmd0aCYmKHU9ZC5maW5kKCIuZXRfcGJfcG9ydG9mb2xpb19wYWdpbmF0aW9uIikpLCgwPT09dS5sZW5ndGh8fHUubGVuZ3RoPjAmJiF1LmlzKCI6dmlzaWJsZSIpKSYmKHM+MSYmXy5hZGRDbGFzcygib25fbGFzdF9yb3ciKSxfLm5leHRBbGwoKS5hZGRDbGFzcygib25fbGFzdF9yb3ciKSl9fX0pLDEpfSx3aW5kb3cuZXRfcGJfc2V0X3RhYnNfaGVpZ2h0PWZ1bmN0aW9uKHQpe3ZvaWQgMD09PXQmJih0PW4oIi5ldF9wYl90YWJzIikpLHQubGVuZ3RoJiZ0LmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKS5maW5kKCIuZXRfcGJfdGFic19jb250cm9scyIpLGU9dC5maW5kKCJsaSIpLGk9MCxhPW4odGhpcykucGFyZW50cygiLmV0X3BiX2NvbHVtbl8xXzMsIC5ldF9wYl9jb2x1bW5fMV80LCAuZXRfcGJfY29sdW1uXzNfOCIpLmxlbmd0aD4wLG89cGFyc2VGbG9hdChuKHdpbmRvdykud2lkdGgoKSk8NzY4LHI9YXx8bztyJiZuKHRoaXMpLmFkZENsYXNzKCJldF9wYl90YWJzX3ZlcnRpY2FsbHlfc3RhY2tlZCIpLGUubGVuZ3RoJiYodC5jaGlsZHJlbigibGkiKS5yZW1vdmVBdHRyKCJzdHlsZSIpLGUuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLm91dGVySGVpZ2h0KCk7cnx8dD5pJiYoaT10KX0pKSksMCE9PWkmJnQuY2hpbGRyZW4oImxpIikuY3NzKCJoZWlnaHQiLCIiLmNvbmNhdChpLCJweCIpKX0pKX0sd2luZG93LmV0X3BiX2JveF9zaGFkb3dfYXBwbHlfb3ZlcmxheT1mdW5jdGlvbih0KXt2b2lkIDAhPT1kb2N1bWVudC5ib2R5LnN0eWxlLnBvaW50ZXJFdmVudHMmJih2b2lkIDA9PT1kb2N1bWVudC5kb2N1bWVudE1vZGV8fGRvY3VtZW50LmRvY3VtZW50TW9kZT49MTEpP24odCkuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmNoaWxkcmVuKCIuYm94LXNoYWRvdy1vdmVybGF5IikubGVuZ3RofHxuKHRoaXMpLmFkZENsYXNzKCJoYXMtYm94LXNoYWRvdy1vdmVybGF5IikucHJlcGVuZCgnPGRpdiBjbGFzcz0iYm94LXNoYWRvdy1vdmVybGF5Ij48L2Rpdj4nKX0pKTpuKHQpLmFkZENsYXNzKCIuZXQtYm94LXNoYWRvdy1uby1vdmVybGF5Iil9LHdpbmRvdy5ldF9wYl9pbml0X25hdl9tZW51PWZ1bmN0aW9uKHQpe3QuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO3QuZGF0YSgiZXQtaXMtbWVudS1yZWFkeSIpfHwodC5maW5kKCJsaSIpLm9uKCJtb3VzZWVudGVyIiwoZnVuY3Rpb24oKXt3aW5kb3cuZXRfcGJfdG9nZ2xlX25hdl9tZW51KG4odGhpcyksIm9wZW4iKX0pKS5vbigibW91c2VsZWF2ZSIsKGZ1bmN0aW9uKCl7d2luZG93LmV0X3BiX3RvZ2dsZV9uYXZfbWVudShuKHRoaXMpLCJjbG9zZSIpfSkpLG4oImJvZHkiKS5vbigidG91Y2hlbmQiLChmdW5jdGlvbih0KXtuKHQudGFyZ2V0KS5jbG9zZXN0KCJ1bC5uYXYsIHVsLm1lbnUiKS5sZW5ndGg8MSYmbigiLmV0LWhvdmVyIikubGVuZ3RoPjAmJndpbmRvdy5ldF9wYl90b2dnbGVfbmF2X21lbnUobigiLmV0LWhvdmVyIiksImNsb3NlIil9KSksdC5maW5kKCJsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIikub24oInRvdWNoZW5kIiwoZnVuY3Rpb24odCl7dmFyIGU9bih0LnRhcmdldCkuY2xvc2VzdCgiLm1lbnUtaXRlbSIpO2lmKGUuaGFzQ2xhc3MoIm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4iKSl7dmFyIGk9bih0aGlzKSxhPWUuY2xvc2VzdCgiLm1lZ2EtbWVudS1wYXJlbnQuZXQtdG91Y2gtaG92ZXIiKS5sZW5ndGg+MDtpZihpLmhhc0NsYXNzKCJldC10b3VjaC1ob3ZlciIpfHxhKXZvaWQgMCE9PWkuZmluZCgiPmEiKS5hdHRyKCJocmVmIikmJih3aW5kb3cubG9jYXRpb249aS5maW5kKCI+YSIpLmF0dHIoImhyZWYiKSk7ZWxzZXt2YXIgbz1uKHQudGFyZ2V0KSxyPW8uY2xvc2VzdCgiLm1lbnUtaXRlbSIpLnNpYmxpbmdzKCIuZXQtdG91Y2gtaG92ZXIiKTtpZihvLmNsb3Nlc3QoIi5ldC10b3VjaC1ob3ZlciIpLmxlbmd0aDwxJiZ3aW5kb3cuZXRfcGJfdG9nZ2xlX25hdl9tZW51KG4oIi5ldC1ob3ZlciIpLCJjbG9zZSIsMCksaS5hZGRDbGFzcygiZXQtdG91Y2gtaG92ZXIiKSxyLmxlbmd0aD4wKXt2YXIgcz1yLmZpbmQoIi5ldC10b3VjaC1ob3ZlciIpO3dpbmRvdy5ldF9wYl90b2dnbGVfbmF2X21lbnUociwiY2xvc2UiKSx3aW5kb3cuZXRfcGJfdG9nZ2xlX25hdl9tZW51KHMsImNsb3NlIil9d2luZG93LmV0X3BiX3RvZ2dsZV9uYXZfbWVudShpLCJvcGVuIil9dC5wcmV2ZW50RGVmYXVsdCgpLHQuc3RvcFByb3BhZ2F0aW9uKCl9fSkpLHQuZmluZCgibGkubWVnYS1tZW51IikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLGU9dC5jaGlsZHJlbigidWwiKS5jaGlsZHJlbigibGkiKS5sZW5ndGg7ZTw0JiZ0LmFkZENsYXNzKCJtZWdhLW1lbnUtcGFyZW50IG1lZ2EtbWVudS1wYXJlbnQtIi5jb25jYXQoZSkpfSkpLHQuZGF0YSgiZXQtaXMtbWVudS1yZWFkeSIsInJlYWR5IikpfSkpfSx3aW5kb3cuZXRfcGJfdG9nZ2xlX25hdl9tZW51PWZ1bmN0aW9uKHQsZSxuKXtpZigib3BlbiI9PT1lKXQuY2xvc2VzdCgibGkubWVnYS1tZW51IikubGVuZ3RoJiYhdC5oYXNDbGFzcygibWVnYS1tZW51Iil8fCh0LmFkZENsYXNzKCJldC1zaG93LWRyb3Bkb3duIiksdC5yZW1vdmVDbGFzcygiZXQtaG92ZXIiKS5hZGRDbGFzcygiZXQtaG92ZXIiKSk7ZWxzZXt2YXIgaT12b2lkIDAhPT1uP246MjAwO3QucmVtb3ZlQ2xhc3MoImV0LXNob3ctZHJvcGRvd24iKSx0LnJlbW92ZUNsYXNzKCJldC10b3VjaC1ob3ZlciIpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dC5oYXNDbGFzcygiZXQtc2hvdy1kcm9wZG93biIpfHx0LnJlbW92ZUNsYXNzKCJldC1ob3ZlciIpfSksaSl9fSx3aW5kb3cuZXRfcGJfYXBwbHlfc3RpY2t5X2ltYWdlX2VmZmVjdD1mdW5jdGlvbih0KXt2YXIgZT10LmNsb3Nlc3QoIi5ldF9wYl9yb3ciKSxuPWUuY2xvc2VzdCgiLmV0X3BiX3NlY3Rpb24iKSxpPXQuY2xvc2VzdCgiLmV0X3BiX2NvbHVtbiIpLGE9ImV0X3BiX3NlY3Rpb25fc3RpY2t5IixvPSJldF9wYl9zZWN0aW9uX3N0aWNreV9tb2JpbGUiLHI9bi5jaGlsZHJlbigiLmV0X3BiX3JvdyIpLmxhc3QoKSxzPWUuY2hpbGRyZW4oIi5ldF9wYl9jb2x1bW4iKS5sYXN0KCksYz1pLmNoaWxkcmVuKCIuZXRfcGJfbW9kdWxlIikubGFzdCgpO3JldHVybiFlLmlzKHIpfHwoci5hZGRDbGFzcygiZXQtbGFzdC1jaGlsZCIpLCF0LmlzKGMpfHwobi5oYXNDbGFzcyhhKXx8bi5hZGRDbGFzcyhhKSxpLmFkZENsYXNzKCJldF9wYl9yb3dfc3RpY2t5Iiksdm9pZCghbi5oYXNDbGFzcyhvKSYmaS5pcyhzKSYmbi5hZGRDbGFzcyhvKSkpKX0sd2luZG93LmV0X3BiX21lbnVfaW5qZWN0X2lubGluZV9jZW50ZXJlZF9sb2dvPWZ1bmN0aW9uKHQpe3ZhciBlPW4odCkuZmluZCgibmF2ID4gdWwgPiBsaSIpLGk9TWF0aC5yb3VuZChlLmxlbmd0aC8yKSxhPXdpbmRvdy5ldF9wYl9tZW51X2luamVjdF9pdGVtKHQsaSwhMCk7cmV0dXJuIGEmJm4oYSkuYWRkQ2xhc3MoImV0X3BiX21lbnVfX2xvZ28tc2xvdCIpLGF9LHdpbmRvdy5ldF9wYl9tZW51X2luamVjdF9pdGVtPWZ1bmN0aW9uKHQsZSxpKXtpPXZvaWQgMD09PWl8fGksZT1NYXRoLm1heChlLDApO3ZhciBhPW4odCkuZmluZCgibmF2ID4gdWwiKS5maXJzdCgpO2lmKDA9PT1hLmxlbmd0aClyZXR1cm4gbnVsbDt2YXIgbz1hLmZpbmQoIj4gbGkiKSxyPW4oIjxsaT48L2xpPiIpO2lmKDA9PT1vLmxlbmd0aClhLmFwcGVuZChyKTtlbHNle3ZhciBzPWk/ImJlZm9yZSI6ImFmdGVyIixjPWk/by5lcShlKTpvLmVxKG8ubGVuZ3RoLTEtZSk7MD09PWMubGVuZ3RoJiYocz1pPyJhZnRlciI6ImJlZm9yZSIsYz1pP28ubGFzdCgpOm8uZmlyc3QoKSksY1tzXShyKX1yZXR1cm4gci5nZXQoMCl9LHdpbmRvdy5ldF9wYl9yZXBvc2l0aW9uX21lbnVfbW9kdWxlX2Ryb3Bkb3ducz1ldF9wYl9kZWJvdW5jZSgoZnVuY3Rpb24odCl7bih0fHwiLmV0X3BiX21lbnUsIC5ldF9wYl9mdWxsd2lkdGhfbWVudSIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKS5maW5kKCIuZXRfcGJfcm93IikuZmlyc3QoKTtpZigwPT09dC5sZW5ndGgpcmV0dXJuITA7dmFyIGU9dC5vZmZzZXQoKS50b3AsaT1uKHRoaXMpLmF0dHIoImNsYXNzIikucmVwbGFjZSgvXi4qPyhldF9wYig/Ol9mdWxsd2lkdGgpP19tZW51X1xkK1teXHNdKikuKiQvaSwiJDEiKSxhPW4odGhpcykuZmluZCgiLmV0X3BiX21lbnVfX21lbnUgdWwiKS5maXJzdCgpLmhhc0NsYXNzKCJ1cHdhcmRzIiksbz0iIjtuKHRoaXMpLmZpbmQoIi5ldF9wYl9tZW51X19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZWdhLW1lbnUubWVudS1pdGVtLWhhcy1jaGlsZHJlbiIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHI9bih0aGlzKSxzPXIuYXR0cigiY2xhc3MiKS5yZXBsYWNlKC9eLio/KG1lbnUtaXRlbS1cZCspLiokL2ksIiQxIiksYz0iLiIuY29uY2F0KGksIiBsaS4iKS5jb25jYXQocywiID4gLnN1Yi1tZW51Iik7aWYoYSl7dmFyIGw9TWF0aC5mbG9vcihlK3Qub3V0ZXJIZWlnaHQoKS1yLm9mZnNldCgpLnRvcCktMTtvKz0iIi5jb25jYXQoYywieyBib3R0b206ICIpLmNvbmNhdChsLnRvU3RyaW5nKCksInB4ICFpbXBvcnRhbnQ7IH0iKX1lbHNlIGw9TWF0aC5mbG9vcihyLm9mZnNldCgpLnRvcCtyLm91dGVySGVpZ2h0KCktZSktMSxvKz0iIi5jb25jYXQoYywieyB0b3A6ICIpLmNvbmNhdChsLnRvU3RyaW5nKCksInB4ICFpbXBvcnRhbnQ7IH0iKX0pKTt2YXIgcj1uKCJzdHlsZS5ldC1tZW51LXN0eWxlLSIuY29uY2F0KGkpKS5maXJzdCgpOzA9PT1yLmxlbmd0aCYmKChyPW4oIjxzdHlsZT48L3N0eWxlPiIpKS5hZGRDbGFzcygiZXQtbWVudS1zdHlsZSIpLHIuYWRkQ2xhc3MoImV0LW1lbnUtc3R5bGUtIi5jb25jYXQoaSkpLHIuYXBwZW5kVG8obigiaGVhZCIpKSk7dmFyIHM9ci5odG1sKCk7byE9PXMmJnIuaHRtbChvKX0pKX0pLDIwMCl9KHQpfSkuY2FsbCh0aGlzLG4oOCkpfSwxNDQzOmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUudHJpbVRyYW5zaXRpb25WYWx1ZT1lLmlzVGFyZ2V0U3RpY2t5U3RhdGU9ZS5nZXRTdGlja3lTdHlsZXM9ZS5nZXRMaW1pdFNlbGVjdG9yPWUuZ2V0TGltaXQ9ZS5nZXRDbG9zZXN0U3RpY2t5TW9kdWxlT2Zmc2V0VG9wPWUuZmlsdGVySW52YWxpZE1vZHVsZXM9dm9pZCAwO3ZhciBpPXAobig2OCkpLGE9cChuKDkpKSxvPXAobigxKSkscj1wKG4oMTYwKSkscz1wKG4oNykpLGM9cChuKDUpKSxsPXAobigzNykpLF89cChuKDgpKSxkPW4oNDUyKTtmdW5jdGlvbiBwKHQpe3JldHVybiB0JiZ0Ll9fZXNNb2R1bGU/dDp7ZGVmYXVsdDp0fX1mdW5jdGlvbiB1KHQsZSl7dmFyIG49T2JqZWN0LmtleXModCk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtlJiYoaT1pLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKS5lbnVtZXJhYmxlfSkpKSxuLnB1c2guYXBwbHkobixpKX1yZXR1cm4gbn1mdW5jdGlvbiBmKHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBuPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP3UoT2JqZWN0KG4pLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtoKHQsZSxuW2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG4pKTp1KE9iamVjdChuKSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG4sZSkpfSkpfXJldHVybiB0fWZ1bmN0aW9uIGgodCxlLG4pe3JldHVybiBlIGluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bix0fWUuZ2V0TGltaXQ9ZnVuY3Rpb24odCxlKXtpZighKDAscy5kZWZhdWx0KShbImJvZHkiLCJzZWN0aW9uIiwicm93IiwiY29sdW1uIl0sZSkpcmV0dXJuITE7dmFyIG49Yih0LGUpO2lmKCFuKXJldHVybiExO3ZhciBpPW4ub3V0ZXJIZWlnaHQoKSxhPW4ub3V0ZXJXaWR0aCgpO3JldHVybntsaW1pdDplLGhlaWdodDppLHdpZHRoOmEsb2Zmc2V0czooMCxkLmdldE9mZnNldHMpKG4sYSxpKX19O3ZhciBiPWZ1bmN0aW9uKHQsZSl7dmFyIG49ITE7c3dpdGNoKGUpe2Nhc2UiYm9keSI6bj0iLmV0X2J1aWxkZXJfaW5uZXJfY29udGVudCI7YnJlYWs7Y2FzZSJzZWN0aW9uIjpuPSIuZXRfcGJfc2VjdGlvbiI7YnJlYWs7Y2FzZSJyb3ciOm49Ii5ldF9wYl9yb3ciO2JyZWFrO2Nhc2UiY29sdW1uIjpuPSIuZXRfcGJfY29sdW1uIn1yZXR1cm4hIW4mJnQuY2xvc2VzdChuKX07ZS5nZXRMaW1pdFNlbGVjdG9yPWIsZS5maWx0ZXJJbnZhbGlkTW9kdWxlcz1mdW5jdGlvbih0KXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e30sbj17fTtyZXR1cm4oMCxhLmRlZmF1bHQpKHQsKGZ1bmN0aW9uKHQsaSl7KDAsXy5kZWZhdWx0KSh0LnNlbGVjdG9yKS5wYXJlbnRzKCIuZXRfcGJfc3RpY2t5X21vZHVsZSIpLmxlbmd0aD4wfHwoISgwLGMuZGVmYXVsdCkoZSkmJmVbaV0/bltpXT1mKGYoe30sZVtpXSksdCk6bltpXT10KX0pKSxufSxlLmdldFN0aWNreVN0eWxlcz1mdW5jdGlvbih0LGUsbil7dmFyIGk9ZS5jbG9uZSgpLmFkZENsYXNzKCJldF9wYl9zdGlja3kgZXRfcGJfc3RpY2t5X3N0eWxlX2RvbSIpLmF0dHIoeyJkYXRhLXN0aWNreS1zdHlsZS1kb20taWQiOnQsc3R5bGU6IiJ9KS5jc3Moe29wYWNpdHk6MCx0cmFuc2l0aW9uOiJub25lIixhbmltYXRpb246Im5vbmUifSk7aS5maW5kKCJpbWciKS5lYWNoKChmdW5jdGlvbih0KXt2YXIgbj0oMCxfLmRlZmF1bHQpKHRoaXMpLGk9ZS5maW5kKCJpbWciKS5lcSh0KSxhPSgwLG8uZGVmYXVsdCkoaSxbMCwibmF0dXJhbFdpZHRoIl0sZS5maW5kKCJpbWciKS5lcSh0KS5vdXRlcldpZHRoKCkpLHI9KDAsby5kZWZhdWx0KShpLFswLCJuYXR1cmFsSGVpZ2h0Il0sZS5maW5kKCJpbWciKS5lcSh0KS5vdXRlckhlaWdodCgpKTtuLmF0dHIoe3NjcnNldDoiIixzcmM6J2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iJy5jb25jYXQoYSwnIiBoZWlnaHQ9IicpLmNvbmNhdChyLCciPjxyZWN0IHdpZHRoPSInKS5jb25jYXQoYSwnIiBoZWlnaHQ9IicpLmNvbmNhdChyLCciIC8+PC9zdmc+Jyl9KX0pKSxlLmFmdGVyKGkpO3ZhciBhPWZ1bmN0aW9uKHQpe3ZhciBhPSJtYXJnaW4iLmNvbmNhdCh0KSxvPWUuaGFzQ2xhc3MoImV0X3BiX3N0aWNreSIpP246ZTtyZXR1cm4gcGFyc2VGbG9hdChpLmNzcyhhKSktcGFyc2VGbG9hdChvLmNzcyhhKSl9LHI9e2hlaWdodDppLm91dGVySGVpZ2h0KCksd2lkdGg6aS5vdXRlcldpZHRoKCksbWFyZ2luUmlnaHQ6YSgiUmlnaHQiKSxtYXJnaW5MZWZ0OmEoIkxlZnQiKSxwYWRkaW5nOmkuY3NzKCJwYWRkaW5nIil9O3JldHVybigwLF8uZGVmYXVsdCkoJy5ldF9wYl9zdGlja3lfc3R5bGVfZG9tW2RhdGEtc3RpY2t5LXN0eWxlLWRvbS1pZD0iJy5jb25jYXQodCwnIl0nKSkucmVtb3ZlKCkscn0sZS50cmltVHJhbnNpdGlvblZhbHVlPWZ1bmN0aW9uKHQsZSl7KDAsbC5kZWZhdWx0KSh0KXx8KHQ9IiIpO3ZhciBuPXQuc3BsaXQoIiwgIiksYT0oMCxpLmRlZmF1bHQpKG4sKGZ1bmN0aW9uKHQpe3JldHVybiEoMCxzLmRlZmF1bHQpKGUsKDAsci5kZWZhdWx0KSh0LnNwbGl0KCIgIikpKX0pKTtyZXR1cm4oMCxjLmRlZmF1bHQpKGEpPyJub25lIjphLmpvaW4oIiwgIil9LGUuZ2V0Q2xvc2VzdFN0aWNreU1vZHVsZU9mZnNldFRvcD1mdW5jdGlvbih0KXt2YXIgZT10Lm9mZnNldCgpO2UucmlnaHQ9ZS5sZWZ0K3Qub3V0ZXJXaWR0aCgpO3ZhciBuPW51bGwsaT0wLHI9KDAsby5kZWZhdWx0KSh3aW5kb3cuRVRfRkUsInN0b3Jlcy5zdGlja3kubW9kdWxlcyIse30pO2lmKCgwLGEuZGVmYXVsdCkociwoZnVuY3Rpb24oaSl7aWYoKDAscy5kZWZhdWx0KShbInRvcF9ib3R0b20iLCJ0b3AiXSxpLnBvc2l0aW9uKSYmIXQuaXMoKDAsby5kZWZhdWx0KShpLCJzZWxlY3RvciIpKSYmISgoMCxvLmRlZmF1bHQpKGksIm9mZnNldHMucmlnaHQiLDApPGUubGVmdHx8KDAsby5kZWZhdWx0KShpLCJvZmZzZXRzLmxlZnQiLDApPmUucmlnaHR8fCgwLG8uZGVmYXVsdCkoaSwib2Zmc2V0cy50b3AiLDApPmUudG9wKSl7dmFyIGE9KDAsby5kZWZhdWx0KShpLCJib3R0b21MaW1pdFNldHRpbmdzLm9mZnNldHMuYm90dG9tIik7YSYmYTxlLnRvcHx8KG49aSl9fSkpLCgwLG8uZGVmYXVsdCkobiwidG9wT2Zmc2V0TW9kdWxlcyIsITEpKXsoMCxhLmRlZmF1bHQpKCgwLG8uZGVmYXVsdCkobiwidG9wT2Zmc2V0TW9kdWxlcyIsW10pLChmdW5jdGlvbih0KXt2YXIgZT0oMCxvLmRlZmF1bHQpKHIsW3QsImhlaWdodFN0aWNreSJdLCgwLG8uZGVmYXVsdCkocixbdCwiaGVpZ2h0Il0sMCkpO2krPWV9KSk7dmFyIGM9KDAsby5kZWZhdWx0KShyLFtuLmlkLCJoZWlnaHRTdGlja3kiXSwoMCxvLmRlZmF1bHQpKHIsW24uaWQsImhlaWdodCJdLDApKTtpKz1jfXJldHVybiBpfSxlLmlzVGFyZ2V0U3RpY2t5U3RhdGU9ZnVuY3Rpb24odCl7dmFyIGU9KDAsby5kZWZhdWx0KSh3aW5kb3cuRVRfRkUsInN0b3Jlcy5zdGlja3kubW9kdWxlcyIse30pLG49ITE7cmV0dXJuKDAsYS5kZWZhdWx0KShlLChmdW5jdGlvbihlKXt2YXIgaT10LmlzKCgwLG8uZGVmYXVsdCkoZSwic2VsZWN0b3IiKSksYT1lLmlzU3RpY2t5LHI9ZS5pc1BhdXNlZDtpZihpJiZhJiYhcilyZXR1cm4gbj0hMCwhMX0pKSxufX0sMTQ2OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEwMCk7ZnVuY3Rpb24gYSh0LGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0fHxudWxsIT1lJiYiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZ1bmN0aW9uIik7dmFyIG49ZnVuY3Rpb24gbigpe3ZhciBpPWFyZ3VtZW50cyxhPWU/ZS5hcHBseSh0aGlzLGkpOmlbMF0sbz1uLmNhY2hlO2lmKG8uaGFzKGEpKXJldHVybiBvLmdldChhKTt2YXIgcj10LmFwcGx5KHRoaXMsaSk7cmV0dXJuIG4uY2FjaGU9by5zZXQoYSxyKXx8byxyfTtyZXR1cm4gbi5jYWNoZT1uZXcoYS5DYWNoZXx8aSksbn1hLkNhY2hlPWksdC5leHBvcnRzPWF9LDE0NzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMDApLGE9bigyNTEpLG89bigyNTIpO2Z1bmN0aW9uIHIodCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuX19kYXRhX189bmV3IGk7KytlPG47KXRoaXMuYWRkKHRbZV0pfXIucHJvdG90eXBlLmFkZD1yLnByb3RvdHlwZS5wdXNoPWEsci5wcm90b3R5cGUuaGFzPW8sdC5leHBvcnRzPXJ9LDE0ODpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiB0LmhhcyhlKX19LDE0OTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbixpKXtmb3IodmFyIGE9dC5sZW5ndGgsbz1uKyhpPzE6LTEpO2k/by0tOisrbzxhOylpZihlKHRbb10sbyx0KSlyZXR1cm4gbztyZXR1cm4tMX19LDE1MDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMTYpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdD8odD1pKHQpKT09PTEvMHx8dD09PS0xLzA/MTc5NzY5MzEzNDg2MjMxNTdlMjkyKih0PDA/LTE6MSk6dD09dD90OjA6MD09PXQ/dDowfX0sMTYwOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0Lmxlbmd0aD90WzBdOnZvaWQgMH19LDE2MjpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMDMpKCk7dC5leHBvcnRzPWl9LDE2MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxODQpLGE9big4MCksbz1uKDMpLHI9big3Mikscz1uKDY3KSxjPW4oODIpLGw9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgbj1vKHQpLF89IW4mJmEodCksZD0hbiYmIV8mJnIodCkscD0hbiYmIV8mJiFkJiZjKHQpLHU9bnx8X3x8ZHx8cCxmPXU/aSh0Lmxlbmd0aCxTdHJpbmcpOltdLGg9Zi5sZW5ndGg7Zm9yKHZhciBiIGluIHQpIWUmJiFsLmNhbGwodCxiKXx8dSYmKCJsZW5ndGgiPT1ifHxkJiYoIm9mZnNldCI9PWJ8fCJwYXJlbnQiPT1iKXx8cCYmKCJidWZmZXIiPT1ifHwiYnl0ZUxlbmd0aCI9PWJ8fCJieXRlT2Zmc2V0Ij09Yil8fHMoYixoKSl8fGYucHVzaChiKTtyZXR1cm4gZn19LDE2NDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbigpe3JldHVybltdfX0sMTY4OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiB0KGUobikpfX19LDE2OTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MykobigyMyksIlNldCIpO3QuZXhwb3J0cz1pfSwxNzA6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNDMpKG4oMjMpLCJXZWFrTWFwIik7dC5leHBvcnRzPWl9LDE3MTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMjYpLGE9L1teLltcXV0rfFxbKD86KC0/XGQrKD86XC5cZCspPyl8KFsiJ10pKCg/Oig/IVwyKVteXFxdfFxcLikqPylcMilcXXwoPz0oPzpcLnxcW1xdKSg/OlwufFxbXF18JCkpL2csbz0vXFwoXFwpPy9nLHI9aSgoZnVuY3Rpb24odCl7dmFyIGU9W107cmV0dXJuIDQ2PT09dC5jaGFyQ29kZUF0KDApJiZlLnB1c2goIiIpLHQucmVwbGFjZShhLChmdW5jdGlvbih0LG4saSxhKXtlLnB1c2goaT9hLnJlcGxhY2UobywiJDEiKTpufHx0KX0pKSxlfSkpO3QuZXhwb3J0cz1yfSwxNzI6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49LTEsaT1udWxsPT10PzA6dC5sZW5ndGg7KytuPGk7KWlmKGUodFtuXSxuLHQpKXJldHVybiEwO3JldHVybiExfX0sMTczOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIzKS5VaW50OEFycmF5O3QuZXhwb3J0cz1pfSwxNzQ6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9LTEsbj1BcnJheSh0LnNpemUpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKHQsaSl7blsrK2VdPVtpLHRdfSkpLG59fSwxNzU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTc2KSxhPW4oMTQwKSxvPW4oMTQpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gaSh0LG8sYSl9fSwxNzY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTE4KSxhPW4oMyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXt2YXIgbz1lKHQpO3JldHVybiBhKHQpP286aShvLG4odCkpfX0sMTc3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEyKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PXQmJiFpKHQpfX0sMTc4OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBudWxsIT1uJiZuW3RdPT09ZSYmKHZvaWQgMCE9PWV8fHQgaW4gT2JqZWN0KG4pKX19fSwxODM6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4hMX19LDE4NDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0tMSxpPUFycmF5KHQpOysrbjx0OylpW25dPWUobik7cmV0dXJuIGl9fSwxODU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTg2KSxhPS9eXHMrLzt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLGkodCkrMSkucmVwbGFjZShhLCIiKTp0fX0sMTg2OmZ1bmN0aW9uKHQsZSl7dmFyIG49L1xzLzt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXQubGVuZ3RoO2UtLSYmbi50ZXN0KHQuY2hhckF0KGUpKTspO3JldHVybiBlfX0sMTg3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDQ1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gaShlLChmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0pKX19LDIwMTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzNSksYT1uKDIyMSksbz1uKDEyKSxyPW4oMTM4KSxzPS9eXFtvYmplY3QgLis/Q29uc3RydWN0b3JcXSQvLGM9RnVuY3Rpb24ucHJvdG90eXBlLGw9T2JqZWN0LnByb3RvdHlwZSxfPWMudG9TdHJpbmcsZD1sLmhhc093blByb3BlcnR5LHA9UmVnRXhwKCJeIitfLmNhbGwoZCkucmVwbGFjZSgvW1xcXiQuKis/KClbXF17fXxdL2csIlxcJCYiKS5yZXBsYWNlKC9oYXNPd25Qcm9wZXJ0eXwoZnVuY3Rpb24pLio/KD89XFxcKCl8IGZvciAuKz8oPz1cXFxdKS9nLCIkMS4qPyIpKyIkIik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiEoIW8odCl8fGEodCkpJiYoaSh0KT9wOnMpLnRlc3Qocih0KSl9fSwyMDI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMjMpWyJfX2NvcmUtanNfc2hhcmVkX18iXTt0LmV4cG9ydHM9aX0sMjAzOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlLG4saSl7Zm9yKHZhciBhPS0xLG89T2JqZWN0KGUpLHI9aShlKSxzPXIubGVuZ3RoO3MtLTspe3ZhciBjPXJbdD9zOisrYV07aWYoITE9PT1uKG9bY10sYyxvKSlicmVha31yZXR1cm4gZX19fSwyMDQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiBmdW5jdGlvbihuLGEpe2lmKG51bGw9PW4pcmV0dXJuIG47aWYoIWkobikpcmV0dXJuIHQobixhKTtmb3IodmFyIG89bi5sZW5ndGgscj1lP286LTEscz1PYmplY3Qobik7KGU/ci0tOisrcjxvKSYmITEhPT1hKHNbcl0scixzKTspO3JldHVybiBufX19LDIwNTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3MyksYT1uKDgwKSxvPW4oMykscj1uKDY3KSxzPW4oOTcpLGM9big1Mik7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIGw9LTEsXz0oZT1pKGUsdCkpLmxlbmd0aCxkPSExOysrbDxfOyl7dmFyIHA9YyhlW2xdKTtpZighKGQ9bnVsbCE9dCYmbih0LHApKSlicmVhazt0PXRbcF19cmV0dXJuIGR8fCsrbCE9Xz9kOiEhKF89bnVsbD09dD8wOnQubGVuZ3RoKSYmcyhfKSYmcihwLF8pJiYobyh0KXx8YSh0KSl9fSwyMDY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMjg3KSxhPW4oMjA1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gbnVsbCE9dCYmYSh0LGUsaSl9fSwyMDc6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3ZvaWQgMDplW3RdfX19LDIwODpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdCE9dH19LDIxNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxNjgpKE9iamVjdC5rZXlzLE9iamVjdCk7dC5leHBvcnRzPWl9LDIxODpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MykobigyMyksIkRhdGFWaWV3Iik7dC5leHBvcnRzPWl9LDIxOTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big1OCksYT1PYmplY3QucHJvdG90eXBlLG89YS5oYXNPd25Qcm9wZXJ0eSxyPWEudG9TdHJpbmcscz1pP2kudG9TdHJpbmdUYWc6dm9pZCAwO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1vLmNhbGwodCxzKSxuPXRbc107dHJ5e3Rbc109dm9pZCAwO3ZhciBpPSEwfWNhdGNoKHQpe312YXIgYT1yLmNhbGwodCk7cmV0dXJuIGkmJihlP3Rbc109bjpkZWxldGUgdFtzXSksYX19LDIyMDpmdW5jdGlvbih0LGUpe3ZhciBuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBuLmNhbGwodCl9fSwyMjE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpLGE9bigyMDIpLG89KGk9L1teLl0rJC8uZXhlYyhhJiZhLmtleXMmJmEua2V5cy5JRV9QUk9UT3x8IiIpKT8iU3ltYm9sKHNyYylfMS4iK2k6IiI7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiEhbyYmbyBpbiB0fX0sMjIyOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbZV19fSwyMjM6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNDMpKG4oMjMpLCJQcm9taXNlIik7dC5leHBvcnRzPWl9LDIyNDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzNiksYT1uKDI4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGEodCkmJiJbb2JqZWN0IEFyZ3VtZW50c10iPT1pKHQpfX0sMjI1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM2KSxhPW4oOTcpLG89bigyOCkscj17fTtyWyJbb2JqZWN0IEZsb2F0MzJBcnJheV0iXT1yWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1yWyJbb2JqZWN0IEludDhBcnJheV0iXT1yWyJbb2JqZWN0IEludDE2QXJyYXldIl09clsiW29iamVjdCBJbnQzMkFycmF5XSJdPXJbIltvYmplY3QgVWludDhBcnJheV0iXT1yWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPXJbIltvYmplY3QgVWludDE2QXJyYXldIl09clsiW29iamVjdCBVaW50MzJBcnJheV0iXT0hMCxyWyJbb2JqZWN0IEFyZ3VtZW50c10iXT1yWyJbb2JqZWN0IEFycmF5XSJdPXJbIltvYmplY3QgQXJyYXlCdWZmZXJdIl09clsiW29iamVjdCBCb29sZWFuXSJdPXJbIltvYmplY3QgRGF0YVZpZXddIl09clsiW29iamVjdCBEYXRlXSJdPXJbIltvYmplY3QgRXJyb3JdIl09clsiW29iamVjdCBGdW5jdGlvbl0iXT1yWyJbb2JqZWN0IE1hcF0iXT1yWyJbb2JqZWN0IE51bWJlcl0iXT1yWyJbb2JqZWN0IE9iamVjdF0iXT1yWyJbb2JqZWN0IFJlZ0V4cF0iXT1yWyJbb2JqZWN0IFNldF0iXT1yWyJbb2JqZWN0IFN0cmluZ10iXT1yWyJbb2JqZWN0IFdlYWtNYXBdIl09ITEsdC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBvKHQpJiZhKHQubGVuZ3RoKSYmISFyW2kodCldfX0sMjI2OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE0Nik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPWkodCwoZnVuY3Rpb24odCl7cmV0dXJuIDUwMD09PW4uc2l6ZSYmbi5jbGVhcigpLHR9KSksbj1lLmNhY2hlO3JldHVybiBlfX0sMjI3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIyOCksYT1uKDc2KSxvPW4oOTYpO3QuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMuc2l6ZT0wLHRoaXMuX19kYXRhX189e2hhc2g6bmV3IGksbWFwOm5ldyhvfHxhKSxzdHJpbmc6bmV3IGl9fX0sMjI4OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIyOSksYT1uKDIzMCksbz1uKDIzMSkscj1uKDIzMikscz1uKDIzMyk7ZnVuY3Rpb24gYyh0KXt2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrZTxuOyl7dmFyIGk9dFtlXTt0aGlzLnNldChpWzBdLGlbMV0pfX1jLnByb3RvdHlwZS5jbGVhcj1pLGMucHJvdG90eXBlLmRlbGV0ZT1hLGMucHJvdG90eXBlLmdldD1vLGMucHJvdG90eXBlLmhhcz1yLGMucHJvdG90eXBlLnNldD1zLHQuZXhwb3J0cz1jfSwyMjk6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzUpO3QuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189aT9pKG51bGwpOnt9LHRoaXMuc2l6ZT0wfX0sMjM6ZnVuY3Rpb24odCxlLGkpe3ZhciBhPWkoMTM3KSxvPSJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiBzZWxmPyJ1bmRlZmluZWQiOm4oc2VsZikpJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZixyPWF8fG98fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCk7dC5leHBvcnRzPXJ9LDIzMDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX19LDIzMTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3NSksYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9fZGF0YV9fO2lmKGkpe3ZhciBuPWVbdF07cmV0dXJuIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iPT09bj92b2lkIDA6bn1yZXR1cm4gYS5jYWxsKGUsdCk/ZVt0XTp2b2lkIDB9fSwyMzI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzUpLGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXztyZXR1cm4gaT92b2lkIDAhPT1lW3RdOmEuY2FsbChlLHQpfX0sMjMzOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDc1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fO3JldHVybiB0aGlzLnNpemUrPXRoaXMuaGFzKHQpPzA6MSxuW3RdPWkmJnZvaWQgMD09PWU/Il9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iOmUsdGhpc319LDIzNDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9fSwyMzU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzcpLGE9QXJyYXkucHJvdG90eXBlLnNwbGljZTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWkoZSx0KTtyZXR1cm4hKG48MHx8KG49PWUubGVuZ3RoLTE/ZS5wb3AoKTphLmNhbGwoZSxuLDEpLC0tdGhpcy5zaXplLDApKX19LDIzNjpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3Nyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18sbj1pKGUsdCk7cmV0dXJuIG48MD92b2lkIDA6ZVtuXVsxXX19LDIzNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3Nyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBpKHRoaXMuX19kYXRhX18sdCk+LTF9fSwyMzg6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzcpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX18sYT1pKG4sdCk7cmV0dXJuIGE8MD8oKyt0aGlzLnNpemUsbi5wdXNoKFt0LGVdKSk6blthXVsxXT1lLHRoaXN9fSwyMzk6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1pKHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9fSwyNDA6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9bih0KTtyZXR1cm4ic3RyaW5nIj09ZXx8Im51bWJlciI9PWV8fCJzeW1ib2wiPT1lfHwiYm9vbGVhbiI9PWU/Il9fcHJvdG9fXyIhPT10Om51bGw9PT10fX0sMjQxOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDc4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGkodGhpcyx0KS5nZXQodCl9fSwyNDI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gaSh0aGlzLHQpLmhhcyh0KX19LDI0MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3OCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49aSh0aGlzLHQpLGE9bi5zaXplO3JldHVybiBuLnNldCh0LGUpLHRoaXMuc2l6ZSs9bi5zaXplPT1hPzA6MSx0aGlzfX0sMjQ0OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEwNyksYT1uKDExNyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLG8pe3ZhciByPW4ubGVuZ3RoLHM9cixjPSFvO2lmKG51bGw9PXQpcmV0dXJuIXM7Zm9yKHQ9T2JqZWN0KHQpO3ItLTspe3ZhciBsPW5bcl07aWYoYyYmbFsyXT9sWzFdIT09dFtsWzBdXTohKGxbMF1pbiB0KSlyZXR1cm4hMX1mb3IoOysrcjxzOyl7dmFyIF89KGw9bltyXSlbMF0sZD10W19dLHA9bFsxXTtpZihjJiZsWzJdKXtpZih2b2lkIDA9PT1kJiYhKF8gaW4gdCkpcmV0dXJuITF9ZWxzZXt2YXIgdT1uZXcgaTtpZihvKXZhciBmPW8oZCxwLF8sdCxlLHUpO2lmKCEodm9pZCAwPT09Zj9hKHAsZCwzLG8sdSk6ZikpcmV0dXJuITF9fXJldHVybiEwfX0sMjQ1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDc2KTt0LmV4cG9ydHM9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW5ldyBpLHRoaXMuc2l6ZT0wfX0sMjQ2OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18sbj1lLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplPWUuc2l6ZSxufX0sMjQ3OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmdldCh0KX19LDI0ODpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9fSwyNDk6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzYpLGE9big5Niksbz1uKDEwMCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcy5fX2RhdGFfXztpZihuIGluc3RhbmNlb2YgaSl7dmFyIHI9bi5fX2RhdGFfXztpZighYXx8ci5sZW5ndGg8MTk5KXJldHVybiByLnB1c2goW3QsZV0pLHRoaXMuc2l6ZT0rK24uc2l6ZSx0aGlzO249dGhpcy5fX2RhdGFfXz1uZXcgbyhyKX1yZXR1cm4gbi5zZXQodCxlKSx0aGlzLnNpemU9bi5zaXplLHRoaXN9fSwyNTA6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTA3KSxhPW4oMTM5KSxvPW4oMjUzKSxyPW4oMjU0KSxzPW4oNjYpLGM9bigzKSxsPW4oNzIpLF89big4MiksZD0iW29iamVjdCBBcmd1bWVudHNdIixwPSJbb2JqZWN0IEFycmF5XSIsdT0iW29iamVjdCBPYmplY3RdIixmPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLGgsYix2KXt2YXIgbT1jKHQpLGc9YyhlKSx3PW0/cDpzKHQpLHk9Zz9wOnMoZSkseD0odz13PT1kP3U6dyk9PXUsQz0oeT15PT1kP3U6eSk9PXUsaz13PT15O2lmKGsmJmwodCkpe2lmKCFsKGUpKXJldHVybiExO209ITAseD0hMX1pZihrJiYheClyZXR1cm4gdnx8KHY9bmV3IGkpLG18fF8odCk/YSh0LGUsbixoLGIsdik6byh0LGUsdyxuLGgsYix2KTtpZighKDEmbikpe3ZhciBqPXgmJmYuY2FsbCh0LCJfX3dyYXBwZWRfXyIpLFQ9QyYmZi5jYWxsKGUsIl9fd3JhcHBlZF9fIik7aWYoanx8VCl7dmFyIE89aj90LnZhbHVlKCk6dCxTPVQ/ZS52YWx1ZSgpOmU7cmV0dXJuIHZ8fCh2PW5ldyBpKSxiKE8sUyxuLGgsdil9fXJldHVybiEhayYmKHZ8fCh2PW5ldyBpKSxyKHQsZSxuLGgsYix2KSl9fSwyNTE6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uc2V0KHQsIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iKSx0aGlzfX0sMjUyOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmhhcyh0KX19LDI1MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big1OCksYT1uKDE3Myksbz1uKDU5KSxyPW4oMTM5KSxzPW4oMTc0KSxjPW4oMTI4KSxsPWk/aS5wcm90b3R5cGU6dm9pZCAwLF89bD9sLnZhbHVlT2Y6dm9pZCAwO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbixpLGwsZCxwKXtzd2l0Y2gobil7Y2FzZSJbb2JqZWN0IERhdGFWaWV3XSI6aWYodC5ieXRlTGVuZ3RoIT1lLmJ5dGVMZW5ndGh8fHQuYnl0ZU9mZnNldCE9ZS5ieXRlT2Zmc2V0KXJldHVybiExO3Q9dC5idWZmZXIsZT1lLmJ1ZmZlcjtjYXNlIltvYmplY3QgQXJyYXlCdWZmZXJdIjpyZXR1cm4hKHQuYnl0ZUxlbmd0aCE9ZS5ieXRlTGVuZ3RofHwhZChuZXcgYSh0KSxuZXcgYShlKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuIG8oK3QsK2UpO2Nhc2UiW29iamVjdCBFcnJvcl0iOnJldHVybiB0Lm5hbWU9PWUubmFtZSYmdC5tZXNzYWdlPT1lLm1lc3NhZ2U7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjpyZXR1cm4gdD09ZSsiIjtjYXNlIltvYmplY3QgTWFwXSI6dmFyIHU9cztjYXNlIltvYmplY3QgU2V0XSI6dmFyIGY9MSZpO2lmKHV8fCh1PWMpLHQuc2l6ZSE9ZS5zaXplJiYhZilyZXR1cm4hMTt2YXIgaD1wLmdldCh0KTtpZihoKXJldHVybiBoPT1lO2l8PTIscC5zZXQodCxlKTt2YXIgYj1yKHUodCksdShlKSxpLGwsZCxwKTtyZXR1cm4gcC5kZWxldGUodCksYjtjYXNlIltvYmplY3QgU3ltYm9sXSI6aWYoXylyZXR1cm4gXy5jYWxsKHQpPT1fLmNhbGwoZSl9cmV0dXJuITF9fSwyNTQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTc1KSxhPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLG8scixzKXt2YXIgYz0xJm4sbD1pKHQpLF89bC5sZW5ndGg7aWYoXyE9aShlKS5sZW5ndGgmJiFjKXJldHVybiExO2Zvcih2YXIgZD1fO2QtLTspe3ZhciBwPWxbZF07aWYoIShjP3AgaW4gZTphLmNhbGwoZSxwKSkpcmV0dXJuITF9dmFyIHU9cy5nZXQodCksZj1zLmdldChlKTtpZih1JiZmKXJldHVybiB1PT1lJiZmPT10O3ZhciBoPSEwO3Muc2V0KHQsZSkscy5zZXQoZSx0KTtmb3IodmFyIGI9YzsrK2Q8Xzspe3ZhciB2PXRbcD1sW2RdXSxtPWVbcF07aWYobyl2YXIgZz1jP28obSx2LHAsZSx0LHMpOm8odixtLHAsdCxlLHMpO2lmKCEodm9pZCAwPT09Zz92PT09bXx8cih2LG0sbixvLHMpOmcpKXtoPSExO2JyZWFrfWJ8fChiPSJjb25zdHJ1Y3RvciI9PXApfWlmKGgmJiFiKXt2YXIgdz10LmNvbnN0cnVjdG9yLHk9ZS5jb25zdHJ1Y3Rvcjt3PT15fHwhKCJjb25zdHJ1Y3RvciJpbiB0KXx8ISgiY29uc3RydWN0b3IiaW4gZSl8fCJmdW5jdGlvbiI9PXR5cGVvZiB3JiZ3IGluc3RhbmNlb2YgdyYmImZ1bmN0aW9uIj09dHlwZW9mIHkmJnkgaW5zdGFuY2VvZiB5fHwoaD0hMSl9cmV0dXJuIHMuZGVsZXRlKHQpLHMuZGVsZXRlKGUpLGh9fSwyNTU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTc3KSxhPW4oMTQpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtmb3IodmFyIGU9YSh0KSxuPWUubGVuZ3RoO24tLTspe3ZhciBvPWVbbl0scj10W29dO2Vbbl09W28scixpKHIpXX1yZXR1cm4gZX19LDI1NjpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbil7Zm9yKHZhciBpPW4tMSxhPXQubGVuZ3RoOysraTxhOylpZih0W2ldPT09ZSlyZXR1cm4gaTtyZXR1cm4tMX19LDI3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDgxKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/IiI6aSh0KX19LDI3MTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyNDQpLGE9bigyNTUpLG89bigxNzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1hKHQpO3JldHVybiAxPT1lLmxlbmd0aCYmZVswXVsyXT9vKGVbMF1bMF0sZVswXVsxXSk6ZnVuY3Rpb24obil7cmV0dXJuIG49PT10fHxpKG4sdCxlKX19fSwyNzI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTE3KSxhPW4oMSksbz1uKDIwNikscj1uKDExMikscz1uKDE3NyksYz1uKDE3OCksbD1uKDUyKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gcih0KSYmcyhlKT9jKGwodCksZSk6ZnVuY3Rpb24obil7dmFyIHI9YShuLHQpO3JldHVybiB2b2lkIDA9PT1yJiZyPT09ZT9vKG4sdCk6aShlLHIsMyl9fX0sMjczOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIwNyksYT1uKDI4OCksbz1uKDExMikscj1uKDUyKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG8odCk/aShyKHQpKTphKHQpfX0sMjg6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiJvYmplY3QiPT1uKHQpfX0sMjg3OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGwhPXQmJmUgaW4gT2JqZWN0KHQpfX0sMjg4OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDkxKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBpKGUsdCl9fX0sMzpmdW5jdGlvbih0LGUpe3ZhciBuPUFycmF5LmlzQXJyYXk7dC5leHBvcnRzPW59LDMyOmZ1bmN0aW9uKHQsZSxpKXt2YXIgYT1pKDI3MSksbz1pKDI3Mikscj1pKDQ5KSxzPWkoMyksYz1pKDI3Myk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6bnVsbD09dD9yOiJvYmplY3QiPT1uKHQpP3ModCk/byh0WzBdLHRbMV0pOmEodCk6Yyh0KX19LDMyODpmdW5jdGlvbih0LGUsbil7dmFyIGk9big4NSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49W107cmV0dXJuIGkodCwoZnVuY3Rpb24odCxpLGEpe2UodCxpLGEpJiZuLnB1c2godCl9KSksbn19LDMzOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE1MCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPWkodCksbj1lJTE7cmV0dXJuIGU9PWU/bj9lLW46ZTowfX0sMzU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzYpLGE9bigxMik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKCFhKHQpKXJldHVybiExO3ZhciBlPWkodCk7cmV0dXJuIltvYmplY3QgRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgQXN5bmNGdW5jdGlvbl0iPT1lfHwiW29iamVjdCBQcm94eV0iPT1lfX0sMzY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTgpLGE9bigyMTkpLG89bigyMjApLHI9aT9pLnRvU3RyaW5nVGFnOnZvaWQgMDt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwPT09dD8iW29iamVjdCBVbmRlZmluZWRdIjoiW29iamVjdCBOdWxsXSI6ciYmciBpbiBPYmplY3QodCk/YSh0KTpvKHQpfX0sMzc6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzYpLGE9bigzKSxvPW4oMjgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHR8fCFhKHQpJiZvKHQpJiYiW29iamVjdCBTdHJpbmddIj09aSh0KX19LDM4OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM1KSxhPW4oOTcpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmYSh0Lmxlbmd0aCkmJiFpKHQpfX0sMzg3OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUudG9wX3dpbmRvdz1lLmlzX2lmcmFtZT12b2lkIDA7dmFyIGk9d2luZG93O2UudG9wX3dpbmRvdz1pO3ZhciBhLG89ITE7ZS5pc19pZnJhbWU9bzt0cnl7YT0hIXdpbmRvdy50b3AuZG9jdW1lbnQmJndpbmRvdy50b3B9Y2F0Y2godCl7YT0hMX1hJiZhLl9fQ3lwcmVzc19fP3dpbmRvdy5wYXJlbnQ9PT1hPyhlLnRvcF93aW5kb3c9aT13aW5kb3csZS5pc19pZnJhbWU9bz0hMSk6KGUudG9wX3dpbmRvdz1pPXdpbmRvdy5wYXJlbnQsZS5pc19pZnJhbWU9bz0hMCk6YSYmKGUudG9wX3dpbmRvdz1pPWEsZS5pc19pZnJhbWU9bz1hIT09d2luZG93LnNlbGYpfSw0MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMDEpLGE9bigyMjIpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciBuPWEodCxlKTtyZXR1cm4gaShuKT9uOnZvaWQgMH19LDQ1OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPS0xLGk9bnVsbD09dD8wOnQubGVuZ3RoLGE9QXJyYXkoaSk7KytuPGk7KWFbbl09ZSh0W25dLG4sdCk7cmV0dXJuIGF9fSw0NTI6ZnVuY3Rpb24odCxlLGkpeyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5zZXRJbXBvcnRhbnRJbmxpbmVWYWx1ZT1lLnJlZ2lzdGVyRnJvbnRlbmRDb21wb25lbnQ9ZS5tYXliZUluY3JlYXNlRW1pdHRlck1heExpc3RlbmVycz1lLm1heWJlRGVjcmVhc2VFbWl0dGVyTWF4TGlzdGVuZXJzPWUuaXNWQj1lLmlzVEI9ZS5pc0xCUD1lLmlzTEJCPWUuaXNGRT1lLmlzRXh0cmFUaGVtZT1lLmlzRGl2aVRoZW1lPWUuaXNCdWlsZGVyVHlwZT1lLmlzQnVpbGRlcj1lLmlzQmxvY2tFZGl0b3I9ZS5pc0JGQj1lLmlzPWUuZ2V0T2Zmc2V0cz1lLmdldEJ1aWxkZXJVdGlsc1BhcmFtcz1lLmdldEJ1aWxkZXJUeXBlPXZvaWQgMDt2YXIgYT1jKGkoNykpLG89YyhpKDEpKSxyPWMoaSg4KSkscz1pKDM4Nyk7ZnVuY3Rpb24gYyh0KXtyZXR1cm4gdCYmdC5fX2VzTW9kdWxlP3Q6e2RlZmF1bHQ6dH19ZnVuY3Rpb24gbCh0KXtyZXR1cm4obD0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09bihTeW1ib2wuaXRlcmF0b3IpP2Z1bmN0aW9uKHQpe3JldHVybiBuKHQpfTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6bih0KX0pKHQpfXZhciBfPWZ1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5ldF9idWlsZGVyX3V0aWxzX3BhcmFtcz93aW5kb3cuZXRfYnVpbGRlcl91dGlsc19wYXJhbXM6cy50b3Bfd2luZG93LmV0X2J1aWxkZXJfdXRpbHNfcGFyYW1zP3MudG9wX3dpbmRvdy5ldF9idWlsZGVyX3V0aWxzX3BhcmFtczp7fX07ZS5nZXRCdWlsZGVyVXRpbHNQYXJhbXM9Xzt2YXIgZD1mdW5jdGlvbigpe3JldHVybigwLG8uZGVmYXVsdCkoXygpLCJidWlsZGVyVHlwZSIsIiIpfTtlLmdldEJ1aWxkZXJUeXBlPWQ7dmFyIHA9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PT1kKCl9O2UuaXNCdWlsZGVyVHlwZT1wO3ZhciB1PWZ1bmN0aW9uKHQpe3JldHVybigwLG8uZGVmYXVsdCkoXygpLCJjb25kaXRpb24uIi5jb25jYXQodCkpfTtlLmlzPXU7dmFyIGY9cCgiZmUiKTtlLmlzRkU9Zjt2YXIgaD1wKCJ2YiIpO2UuaXNWQj1oO3ZhciBiPXAoImJmYiIpO2UuaXNCRkI9Yjt2YXIgdj1wKCJ0YiIpO2UuaXNUQj12O3ZhciBtPXAoImxiYiIpO2UuaXNMQkI9bTt2YXIgZz11KCJkaXZpVGhlbWUiKTtlLmlzRGl2aVRoZW1lPWc7dmFyIHc9dSgiZXh0cmFUaGVtZSIpO2UuaXNFeHRyYVRoZW1lPXc7dmFyIHk9cCgibGJwIik7ZS5pc0xCUD15O3ZhciB4PTA8KDAsci5kZWZhdWx0KShzLnRvcF93aW5kb3cuZG9jdW1lbnQpLmZpbmQoIi5lZGl0LXBvc3QtbGF5b3V0X19jb250ZW50IikubGVuZ3RoO2UuaXNCbG9ja0VkaXRvcj14O3ZhciBDPSgwLGEuZGVmYXVsdCkoWyJ2YiIsImJmYiIsInRiIiwibGJiIl0sZCgpKTtlLmlzQnVpbGRlcj1DLGUuZ2V0T2Zmc2V0cz1mdW5jdGlvbih0KXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCxuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTowLGk9QyYmdC5oYXNDbGFzcygiZXRfcGJfc3RpY2t5IikmJiJmaXhlZCIhPT10LmNzcygicG9zaXRpb24iKSxhPXQuZGF0YSgiZXQtb2Zmc2V0cyIpLHI9dC5kYXRhKCJldC1vZmZzZXRzLWRldmljZSIpLHM9KDAsby5kZWZhdWx0KSh3aW5kb3cuRVRfRkUsInN0b3Jlcy53aW5kb3cuYnJlYWtwb2ludCIsIiIpO2lmKGkmJnZvaWQgMCE9PWEmJnI9PT1zKXJldHVybiBhO3ZhciBjPXQub2Zmc2V0KCk7aWYodm9pZCAwPT09YylyZXR1cm57fTt2YXIgbD1DP3QuY2hpbGRyZW4oJy5ldC1mYi1jdXN0b20tY3NzLW91dHB1dFtkYXRhLXN0aWNreS1oYXMtdHJhbnNmb3JtPSJvbiJdJykubGVuZ3RoPjA6dC5oYXNDbGFzcygiZXRfcGJfc3RpY2t5LS1oYXMtdHJhbnNmb3JtIiksXz12b2lkIDA9PT1jLnRvcD8wOmMudG9wLGQ9dm9pZCAwPT09Yy5sZWZ0PzA6Yy5sZWZ0O2lmKGwpe3ZhciBwPXQucGFyZW50KCkub2Zmc2V0KCksdT17dG9wOmMudG9wLXAudG9wLGxlZnQ6Yy5sZWZ0LXAubGVmdH0sZj17dG9wOnRbMF0ub2Zmc2V0VG9wLGxlZnQ6dFswXS5vZmZzZXRMZWZ0fTtfKz1mLnRvcC11LnRvcCxjLnRvcD1fLGQrPWYubGVmdC11LmxlZnQsYy5sZWZ0PWR9cmV0dXJuIGMucmlnaHQ9ZCtlLGMuYm90dG9tPV8rbix0LmRhdGEoImV0LW9mZnNldHMiLGMpLCIiIT09cyYmdC5kYXRhKCJldC1vZmZzZXRzLWRldmljZSIsYyksY30sZS5tYXliZUluY3JlYXNlRW1pdHRlck1heExpc3RlbmVycz1mdW5jdGlvbih0LGUpe3ZhciBuPXQubGlzdGVuZXJDb3VudChlKSxpPXQuZ2V0TWF4TGlzdGVuZXJzKCk7bj09PWkmJnQuc2V0TWF4TGlzdGVuZXJzKGkrMSl9LGUubWF5YmVEZWNyZWFzZUVtaXR0ZXJNYXhMaXN0ZW5lcnM9ZnVuY3Rpb24odCxlKXt2YXIgbj10Lmxpc3RlbmVyQ291bnQoZSk7dC5nZXRNYXhMaXN0ZW5lcnMoKT4xMCYmdC5zZXRNYXhMaXN0ZW5lcnMobil9LGUucmVnaXN0ZXJGcm9udGVuZENvbXBvbmVudD1mdW5jdGlvbih0LGUsbil7dm9pZCAwPT09d2luZG93LkVUX0ZFJiYod2luZG93LkVUX0ZFPXt9KSwib2JqZWN0IiE9PWwod2luZG93LkVUX0ZFW3RdKSYmKHdpbmRvdy5FVF9GRVt0XT17fSksd2luZG93LkVUX0ZFW3RdW2VdPW59LGUuc2V0SW1wb3J0YW50SW5saW5lVmFsdWU9ZnVuY3Rpb24odCxlLG4pe3QuY3NzKGUsIiIpO3ZhciBpPXQuYXR0cigic3R5bGUiKTt0LmF0dHIoInN0eWxlIiwiIi5jb25jYXQoaSwiICIpLmNvbmNhdChlLCI6ICIpLmNvbmNhdChuLCIgIWltcG9ydGFudDsiKSl9fSw0OTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdH19LDU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTEwKSxhPW4oNjYpLG89big4MCkscj1uKDMpLHM9bigzOCksYz1uKDcyKSxsPW4oODkpLF89big4MiksZD1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3QuZXhwb3J0cz1mdW5jdGlvbih0KXtpZihudWxsPT10KXJldHVybiEwO2lmKHModCkmJihyKHQpfHwic3RyaW5nIj09dHlwZW9mIHR8fCJmdW5jdGlvbiI9PXR5cGVvZiB0LnNwbGljZXx8Yyh0KXx8Xyh0KXx8byh0KSkpcmV0dXJuIXQubGVuZ3RoO3ZhciBlPWEodCk7aWYoIltvYmplY3QgTWFwXSI9PWV8fCJbb2JqZWN0IFNldF0iPT1lKXJldHVybiF0LnNpemU7aWYobCh0KSlyZXR1cm4haSh0KS5sZW5ndGg7Zm9yKHZhciBuIGluIHQpaWYoZC5jYWxsKHQsbikpcmV0dXJuITE7cmV0dXJuITB9fSw1MjpmdW5jdGlvbih0LGUsbil7dmFyIGk9big1NCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdHx8aSh0KSlyZXR1cm4gdDt2YXIgZT10KyIiO3JldHVybiIwIj09ZSYmMS90PT0tMS8wPyItMCI6ZX19LDU0OmZ1bmN0aW9uKHQsZSxpKXt2YXIgYT1pKDM2KSxvPWkoMjgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4ic3ltYm9sIj09bih0KXx8byh0KSYmIltvYmplY3QgU3ltYm9sXSI9PWEodCl9fSw1ODpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMykuU3ltYm9sO3QuZXhwb3J0cz1pfSw1OTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiB0PT09ZXx8dCE9dCYmZSE9ZX19LDY2OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIxOCksYT1uKDk2KSxvPW4oMjIzKSxyPW4oMTY5KSxzPW4oMTcwKSxjPW4oMzYpLGw9bigxMzgpLF89IltvYmplY3QgTWFwXSIsZD0iW29iamVjdCBQcm9taXNlXSIscD0iW29iamVjdCBTZXRdIix1PSJbb2JqZWN0IFdlYWtNYXBdIixmPSJbb2JqZWN0IERhdGFWaWV3XSIsaD1sKGkpLGI9bChhKSx2PWwobyksbT1sKHIpLGc9bChzKSx3PWM7KGkmJncobmV3IGkobmV3IEFycmF5QnVmZmVyKDEpKSkhPWZ8fGEmJncobmV3IGEpIT1ffHxvJiZ3KG8ucmVzb2x2ZSgpKSE9ZHx8ciYmdyhuZXcgcikhPXB8fHMmJncobmV3IHMpIT11KSYmKHc9ZnVuY3Rpb24odCl7dmFyIGU9Yyh0KSxuPSJbb2JqZWN0IE9iamVjdF0iPT1lP3QuY29uc3RydWN0b3I6dm9pZCAwLGk9bj9sKG4pOiIiO2lmKGkpc3dpdGNoKGkpe2Nhc2UgaDpyZXR1cm4gZjtjYXNlIGI6cmV0dXJuIF87Y2FzZSB2OnJldHVybiBkO2Nhc2UgbTpyZXR1cm4gcDtjYXNlIGc6cmV0dXJuIHV9cmV0dXJuIGV9KSx0LmV4cG9ydHM9d30sNjc6ZnVuY3Rpb24odCxlKXt2YXIgaT0vXig/OjB8WzEtOV1cZCopJC87dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIGE9bih0KTtyZXR1cm4hIShlPW51bGw9PWU/OTAwNzE5OTI1NDc0MDk5MTplKSYmKCJudW1iZXIiPT1hfHwic3ltYm9sIiE9YSYmaS50ZXN0KHQpKSYmdD4tMSYmdCUxPT0wJiZ0PGV9fSw2ODpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMTkpLGE9bigzMjgpLG89bigzMikscj1uKDMpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybihyKHQpP2k6YSkodCxvKGUsMykpfX0sNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMDEpLGE9bigzOCksbz1uKDM3KSxyPW4oMzMpLHM9big4NCksYz1NYXRoLm1heDt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLG4sbCl7dD1hKHQpP3Q6cyh0KSxuPW4mJiFsP3Iobik6MDt2YXIgXz10Lmxlbmd0aDtyZXR1cm4gbjwwJiYobj1jKF8rbiwwKSksbyh0KT9uPD1fJiZ0LmluZGV4T2YoZSxuKT4tMTohIV8mJmkodCxlLG4pPi0xfX0sNzI6ZnVuY3Rpb24odCxlLGkpeyhmdW5jdGlvbih0KXt2YXIgYT1pKDIzKSxvPWkoMTgzKSxyPWUmJiFlLm5vZGVUeXBlJiZlLHM9ciYmIm9iamVjdCI9PW4odCkmJnQmJiF0Lm5vZGVUeXBlJiZ0LGM9cyYmcy5leHBvcnRzPT09cj9hLkJ1ZmZlcjp2b2lkIDAsbD0oYz9jLmlzQnVmZmVyOnZvaWQgMCl8fG87dC5leHBvcnRzPWx9KS5jYWxsKHRoaXMsaSg5NSkodCkpfSw3MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzKSxhPW4oMTEyKSxvPW4oMTcxKSxyPW4oMjcpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiBpKHQpP3Q6YSh0LGUpP1t0XTpvKHIodCkpfX0sNzQ6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB0KGUpfX19LDc1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDQzKShPYmplY3QsImNyZWF0ZSIpO3QuZXhwb3J0cz1pfSw3NjpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMzQpLGE9bigyMzUpLG89bigyMzYpLHI9bigyMzcpLHM9bigyMzgpO2Z1bmN0aW9uIGModCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBpPXRbZV07dGhpcy5zZXQoaVswXSxpWzFdKX19Yy5wcm90b3R5cGUuY2xlYXI9aSxjLnByb3RvdHlwZS5kZWxldGU9YSxjLnByb3RvdHlwZS5nZXQ9byxjLnByb3RvdHlwZS5oYXM9cixjLnByb3RvdHlwZS5zZXQ9cyx0LmV4cG9ydHM9Y30sNzc6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTkpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10Lmxlbmd0aDtuLS07KWlmKGkodFtuXVswXSxlKSlyZXR1cm4gbjtyZXR1cm4tMX19LDc4OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDI0MCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dC5fX2RhdGFfXztyZXR1cm4gaShlKT9uWyJzdHJpbmciPT10eXBlb2YgZT8ic3RyaW5nIjoiaGFzaCJdOm4ubWFwfX0sODpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz13aW5kb3cualF1ZXJ5fSw4MDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMjQpLGE9bigyOCksbz1PYmplY3QucHJvdG90eXBlLHI9by5oYXNPd25Qcm9wZXJ0eSxzPW8ucHJvcGVydHlJc0VudW1lcmFibGUsYz1pKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSk/aTpmdW5jdGlvbih0KXtyZXR1cm4gYSh0KSYmci5jYWxsKHQsImNhbGxlZSIpJiYhcy5jYWxsKHQsImNhbGxlZSIpfTt0LmV4cG9ydHM9Y30sODE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTgpLGE9big0NSksbz1uKDMpLHI9big1NCkscz1pP2kucHJvdG90eXBlOnZvaWQgMCxjPXM/cy50b1N0cmluZzp2b2lkIDA7dC5leHBvcnRzPWZ1bmN0aW9uIHQoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2lmKG8oZSkpcmV0dXJuIGEoZSx0KSsiIjtpZihyKGUpKXJldHVybiBjP2MuY2FsbChlKToiIjt2YXIgbj1lKyIiO3JldHVybiIwIj09biYmMS9lPT0tMS8wPyItMCI6bn19LDgyOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIyNSksYT1uKDc0KSxvPW4oOTgpLHI9byYmby5pc1R5cGVkQXJyYXkscz1yP2Eocik6aTt0LmV4cG9ydHM9c30sODQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTg3KSxhPW4oMTQpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD9bXTppKHQsYSh0KSl9fSw4NTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMjQpLGE9bigyMDQpKGkpO3QuZXhwb3J0cz1hfSw4ODpmdW5jdGlvbih0LGUpe3ZhciBpO2k9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKTt0cnl7aT1pfHxuZXcgRnVuY3Rpb24oInJldHVybiB0aGlzIikoKX1jYXRjaCh0KXsib2JqZWN0Ij09KCJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93PyJ1bmRlZmluZWQiOm4od2luZG93KSkmJihpPXdpbmRvdyl9dC5leHBvcnRzPWl9LDg5OmZ1bmN0aW9uKHQsZSl7dmFyIG49T2JqZWN0LnByb3RvdHlwZTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9dCYmdC5jb25zdHJ1Y3RvcjtyZXR1cm4gdD09PSgiZnVuY3Rpb24iPT10eXBlb2YgZSYmZS5wcm90b3R5cGV8fG4pfX0sOTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big5OSksYT1uKDg1KSxvPW4oMTExKSxyPW4oMyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuKHIodCk/aTphKSh0LG8oZSkpfX0sOTE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzMpLGE9big1Mik7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTAsbz0oZT1pKGUsdCkpLmxlbmd0aDtudWxsIT10JiZuPG87KXQ9dFthKGVbbisrXSldO3JldHVybiBuJiZuPT1vP3Q6dm9pZCAwfX0sOTU6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQud2VicGFja1BvbHlmaWxsfHwodC5kZXByZWNhdGU9ZnVuY3Rpb24oKXt9LHQucGF0aHM9W10sdC5jaGlsZHJlbnx8KHQuY2hpbGRyZW49W10pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJsb2FkZWQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0Lmx9fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsImlkIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdC5pfX0pLHQud2VicGFja1BvbHlmaWxsPTEpLHR9fSw5NjpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MykobigyMyksIk1hcCIpO3QuZXhwb3J0cz1pfSw5NzpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJnQ+LTEmJnQlMT09MCYmdDw9OTAwNzE5OTI1NDc0MDk5MX19LDk4OmZ1bmN0aW9uKHQsZSxpKXsoZnVuY3Rpb24odCl7dmFyIGE9aSgxMzcpLG89ZSYmIWUubm9kZVR5cGUmJmUscj1vJiYib2JqZWN0Ij09bih0KSYmdCYmIXQubm9kZVR5cGUmJnQscz1yJiZyLmV4cG9ydHM9PT1vJiZhLnByb2Nlc3MsYz1mdW5jdGlvbigpe3RyeXtyZXR1cm4gciYmci5yZXF1aXJlJiZyLnJlcXVpcmUoInV0aWwiKS50eXBlc3x8cyYmcy5iaW5kaW5nJiZzLmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpO3QuZXhwb3J0cz1jfSkuY2FsbCh0aGlzLGkoOTUpKHQpKX0sOTk6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49LTEsaT1udWxsPT10PzA6dC5sZW5ndGg7KytuPGkmJiExIT09ZSh0W25dLG4sdCk7KTtyZXR1cm4gdH19fSkpfSxmdW5jdGlvbih0LGUsbil7ZnVuY3Rpb24gaSh0KXtyZXR1cm4oaT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpfSFmdW5jdGlvbih0LGUpe2Zvcih2YXIgbiBpbiBlKXRbbl09ZVtuXX0od2luZG93LGZ1bmN0aW9uKHQpe3ZhciBlPXt9O2Z1bmN0aW9uIG4oaSl7aWYoZVtpXSlyZXR1cm4gZVtpXS5leHBvcnRzO3ZhciBhPWVbaV09e2k6aSxsOiExLGV4cG9ydHM6e319O3JldHVybiB0W2ldLmNhbGwoYS5leHBvcnRzLGEsYS5leHBvcnRzLG4pLGEubD0hMCxhLmV4cG9ydHN9cmV0dXJuIG4ubT10LG4uYz1lLG4uZD1mdW5jdGlvbih0LGUsaSl7bi5vKHQsZSl8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse2VudW1lcmFibGU6ITAsZ2V0Oml9KX0sbi5yPWZ1bmN0aW9uKHQpeyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LG4udD1mdW5jdGlvbih0LGUpe2lmKDEmZSYmKHQ9bih0KSksOCZlKXJldHVybiB0O2lmKDQmZSYmIm9iamVjdCI9PWkodCkmJnQmJnQuX19lc01vZHVsZSlyZXR1cm4gdDt2YXIgYT1PYmplY3QuY3JlYXRlKG51bGwpO2lmKG4ucihhKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoYSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6dH0pLDImZSYmInN0cmluZyIhPXR5cGVvZiB0KWZvcih2YXIgbyBpbiB0KW4uZChhLG8sZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV19LmJpbmQobnVsbCxvKSk7cmV0dXJuIGF9LG4ubj1mdW5jdGlvbih0KXt2YXIgZT10JiZ0Ll9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gdC5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiB0fTtyZXR1cm4gbi5kKGUsImEiLGUpLGV9LG4ubz1mdW5jdGlvbih0LGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKX0sbi5wPSIvIixuKG4ucz0xNDQ0KX0oezE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oOTEpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbil7dmFyIGE9bnVsbD09dD92b2lkIDA6aSh0LGUpO3JldHVybiB2b2lkIDA9PT1hP246YX19LDEwMDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMjcpLGE9bigyMzkpLG89bigyNDEpLHI9bigyNDIpLHM9bigyNDMpO2Z1bmN0aW9uIGModCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBpPXRbZV07dGhpcy5zZXQoaVswXSxpWzFdKX19Yy5wcm90b3R5cGUuY2xlYXI9aSxjLnByb3RvdHlwZS5kZWxldGU9YSxjLnByb3RvdHlwZS5nZXQ9byxjLnByb3RvdHlwZS5oYXM9cixjLnByb3RvdHlwZS5zZXQ9cyx0LmV4cG9ydHM9Y30sMTAxOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE0OSksYT1uKDIwOCksbz1uKDI1Nik7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZT09ZT9vKHQsZSxuKTppKHQsYSxuKX19LDEwNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3NiksYT1uKDI0NSksbz1uKDI0Nikscj1uKDI0Nykscz1uKDI0OCksYz1uKDI0OSk7ZnVuY3Rpb24gbCh0KXt2YXIgZT10aGlzLl9fZGF0YV9fPW5ldyBpKHQpO3RoaXMuc2l6ZT1lLnNpemV9bC5wcm90b3R5cGUuY2xlYXI9YSxsLnByb3RvdHlwZS5kZWxldGU9byxsLnByb3RvdHlwZS5nZXQ9cixsLnByb3RvdHlwZS5oYXM9cyxsLnByb3RvdHlwZS5zZXQ9Yyx0LmV4cG9ydHM9bH0sMTA5OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXt2YXIgaT0tMSxhPXQubGVuZ3RoO2U8MCYmKGU9LWU+YT8wOmErZSksKG49bj5hP2E6bik8MCYmKG4rPWEpLGE9ZT5uPzA6bi1lPj4+MCxlPj4+PTA7Zm9yKHZhciBvPUFycmF5KGEpOysraTxhOylvW2ldPXRbaStlXTtyZXR1cm4gb319LDExOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB2b2lkIDA9PT10fX0sMTEwOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDg5KSxhPW4oMjE3KSxvPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKCFpKHQpKXJldHVybiBhKHQpO3ZhciBlPVtdO2Zvcih2YXIgbiBpbiBPYmplY3QodCkpby5jYWxsKHQsbikmJiJjb25zdHJ1Y3RvciIhPW4mJmUucHVzaChuKTtyZXR1cm4gZX19LDExMTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0OSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6aX19LDExMjpmdW5jdGlvbih0LGUsbil7dmFyIGE9bigzKSxvPW4oNTQpLHI9L1wufFxbKD86W15bXF1dKnwoWyInXSkoPzooPyFcMSlbXlxcXXxcXC4pKj9cMSlcXS8scz0vXlx3KiQvO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2lmKGEodCkpcmV0dXJuITE7dmFyIG49aSh0KTtyZXR1cm4hKCJudW1iZXIiIT1uJiYic3ltYm9sIiE9biYmImJvb2xlYW4iIT1uJiZudWxsIT10JiYhbyh0KSl8fHMudGVzdCh0KXx8IXIudGVzdCh0KXx8bnVsbCE9ZSYmdCBpbiBPYmplY3QoZSl9fSwxMTY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTg1KSxhPW4oMTIpLG89big1NCkscj0vXlstK10weFswLTlhLWZdKyQvaSxzPS9eMGJbMDFdKyQvaSxjPS9eMG9bMC03XSskL2ksbD1wYXJzZUludDt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7aWYoIm51bWJlciI9PXR5cGVvZiB0KXJldHVybiB0O2lmKG8odCkpcmV0dXJuIE5hTjtpZihhKHQpKXt2YXIgZT0iZnVuY3Rpb24iPT10eXBlb2YgdC52YWx1ZU9mP3QudmFsdWVPZigpOnQ7dD1hKGUpP2UrIiI6ZX1pZigic3RyaW5nIiE9dHlwZW9mIHQpcmV0dXJuIDA9PT10P3Q6K3Q7dD1pKHQpO3ZhciBuPXMudGVzdCh0KTtyZXR1cm4gbnx8Yy50ZXN0KHQpP2wodC5zbGljZSgyKSxuPzI6OCk6ci50ZXN0KHQpP05hTjordH19LDExNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyNTApLGE9bigyOCk7dC5leHBvcnRzPWZ1bmN0aW9uIHQoZSxuLG8scixzKXtyZXR1cm4gZT09PW58fChudWxsPT1lfHxudWxsPT1ufHwhYShlKSYmIWEobik/ZSE9ZSYmbiE9bjppKGUsbixvLHIsdCxzKSl9fSwxMTg6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49LTEsaT1lLmxlbmd0aCxhPXQubGVuZ3RoOysrbjxpOyl0W2Erbl09ZVtuXTtyZXR1cm4gdH19LDExOTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0tMSxpPW51bGw9PXQ/MDp0Lmxlbmd0aCxhPTAsbz1bXTsrK248aTspe3ZhciByPXRbbl07ZShyLG4sdCkmJihvW2ErK109cil9cmV0dXJuIG99fSwxMjpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1pKHQpO3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX0sMTIwOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIxMCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXsiX19wcm90b19fIj09ZSYmaT9pKHQsZSx7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6bix3cml0YWJsZTohMH0pOnRbZV09bn19LDEyNDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxNjIpLGE9bigxNCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQmJmkodCxlLGEpfX0sMTI4OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPS0xLG49QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtuWysrZV09dH0pKSxufX0sMTM3OmZ1bmN0aW9uKHQsZSxuKXsoZnVuY3Rpb24oZSl7dmFyIG49Im9iamVjdCI9PWkoZSkmJmUmJmUuT2JqZWN0PT09T2JqZWN0JiZlO3QuZXhwb3J0cz1ufSkuY2FsbCh0aGlzLG4oODgpKX0sMTM4OmZ1bmN0aW9uKHQsZSl7dmFyIG49RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtpZihudWxsIT10KXt0cnl7cmV0dXJuIG4uY2FsbCh0KX1jYXRjaCh0KXt9dHJ5e3JldHVybiB0KyIifWNhdGNoKHQpe319cmV0dXJuIiJ9fSwxMzk6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTQ3KSxhPW4oMTcyKSxvPW4oMTQ4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLG4scixzLGMpe3ZhciBsPTEmbixfPXQubGVuZ3RoLGQ9ZS5sZW5ndGg7aWYoXyE9ZCYmIShsJiZkPl8pKXJldHVybiExO3ZhciBwPWMuZ2V0KHQpLHU9Yy5nZXQoZSk7aWYocCYmdSlyZXR1cm4gcD09ZSYmdT09dDt2YXIgZj0tMSxoPSEwLGI9MiZuP25ldyBpOnZvaWQgMDtmb3IoYy5zZXQodCxlKSxjLnNldChlLHQpOysrZjxfOyl7dmFyIHY9dFtmXSxtPWVbZl07aWYocil2YXIgZz1sP3IobSx2LGYsZSx0LGMpOnIodixtLGYsdCxlLGMpO2lmKHZvaWQgMCE9PWcpe2lmKGcpY29udGludWU7aD0hMTticmVha31pZihiKXtpZighYShlLChmdW5jdGlvbih0LGUpe2lmKCFvKGIsZSkmJih2PT09dHx8cyh2LHQsbixyLGMpKSlyZXR1cm4gYi5wdXNoKGUpfSkpKXtoPSExO2JyZWFrfX1lbHNlIGlmKHYhPT1tJiYhcyh2LG0sbixyLGMpKXtoPSExO2JyZWFrfX1yZXR1cm4gYy5kZWxldGUodCksYy5kZWxldGUoZSksaH19LDE0OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE2MyksYT1uKDExMCksbz1uKDM4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG8odCk/aSh0KTphKHQpfX0sMTQwOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDExOSksYT1uKDE2NCksbz1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLHI9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyxzPXI/ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/W106KHQ9T2JqZWN0KHQpLGkocih0KSwoZnVuY3Rpb24oZSl7cmV0dXJuIG8uY2FsbCh0LGUpfSkpKX06YTt0LmV4cG9ydHM9c30sMTQ0NDpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiOyhmdW5jdGlvbih0KXt2YXIgZT1wKG4oNykpLGE9cChuKDExKSksbz1wKG4oMykpLHI9cChuKDEpKSxzPXAobig1NSkpLGM9cChuKDkpKSxsPXAobigyODYpKSxfPW4oMzI5KSxkPW4oNDUyKTtmdW5jdGlvbiBwKHQpe3JldHVybiB0JiZ0Ll9fZXNNb2R1bGU/dDp7ZGVmYXVsdDp0fX1mdW5jdGlvbiB1KHQpe3JldHVybih1PSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT1pKFN5bWJvbC5pdGVyYXRvcik/ZnVuY3Rpb24odCl7cmV0dXJuIGkodCl9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbnN0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjppKHQpfSkodCl9bigxNDQ1KSxldF9wYl9jdXN0b20ucGFnZV9pZCxmdW5jdGlvbihuKXt2YXIgaT12b2lkIDAhPT13aW5kb3cuRVRCbG9ja0xheW91dE1vZHVsZXNTY3JpcHQmJm4oImJvZHkiKS5oYXNDbGFzcygiZXQtYmxvY2stbGF5b3V0LXByZXZpZXciKSxwPWQuaXNCdWlsZGVyfHxpP0VUX0J1aWxkZXIuRnJhbWVzLnRvcDp3aW5kb3csZj1uKHdpbmRvdyksaD1uKGk/cDp3aW5kb3cpLGI9ZC5pc0J1aWxkZXI/cC5qUXVlcnkocCk6bih3aW5kb3cpLHY9bigiYm9keSIpLmhhc0NsYXNzKCJldC10YiIpLG09bigiYm9keSIpLmhhc0NsYXNzKCJldC1iZmIiKSxnPWQuaXNCdWlsZGVyJiYhbSx3PWZ1bmN0aW9uKCl7cmV0dXJuIWkmJmcmJihuKCJodG1sIikuaXMoIi5ldC1mYi1wcmV2aWV3LS13aXJlZnJhbWUiKXx8bigiaHRtbCIpLmlzKCIuZXQtZmItcHJldmlldy0tZGVza3RvcCIpKX0seT1mdW5jdGlvbigpe3JldHVybiBkLmlzQnVpbGRlciYmbigiaHRtbCIpLmlzKCIuZXQtZmItcHJldmlldy0tem9vbSIpfSx4PWZ1bmN0aW9uKHQpe3JldHVybiB0LmNsb3Nlc3QoIiNldC1mYi1hcHAiKS5sZW5ndGg+MH07d2luZG93LmV0X2xvYWRfZXZlbnRfZmlyZWQ9ITEsd2luZG93LmV0X2lzX3RyYW5zcGFyZW50X25hdj1uKCJib2R5IikuaGFzQ2xhc3MoImV0X3RyYW5zcGFyZW50X25hdiIpLHdpbmRvdy5ldF9pc192ZXJ0aWNhbF9uYXY9bigiYm9keSIpLmhhc0NsYXNzKCJldF92ZXJ0aWNhbF9uYXYiKSx3aW5kb3cuZXRfaXNfZml4ZWRfbmF2PW4oImJvZHkiKS5oYXNDbGFzcygiZXRfZml4ZWRfbmF2Iiksd2luZG93LmV0X2lzX21pbmlmaWVkX2pzPW4oImJvZHkiKS5oYXNDbGFzcygiZXRfbWluaWZpZWRfanMiKSx3aW5kb3cuZXRfaXNfbWluaWZpZWRfY3NzPW4oImJvZHkiKS5oYXNDbGFzcygiZXRfbWluaWZpZWRfY3NzIiksd2luZG93LmV0X2ZvcmNlX3dpZHRoX2NvbnRhaW5lcl9jaGFuZ2U9ITEsdC5mbi5yZXZlcnNlPVtdLnJldmVyc2UsdC5mbi5jbG9zZXN0X2Rlc2NlbmRlbnQ9ZnVuY3Rpb24odCl7Zm9yKHZhciBlLG49dGhpcy5jaGlsZHJlbigpO24ubGVuZ3RoJiYhKGU9bi5maWx0ZXIodCkpLmxlbmd0aDspbj1uLmNoaWxkcmVuKCk7cmV0dXJuIGV9LHdpbmRvdy5ldF9wYl9pbml0X3dvb19zdGFyX3JhdGluZz1mdW5jdGlvbih0KXt2YXIgZT10LmNsb3Nlc3QoImRpdiIpLmZpbmQoInAuc3RhcnMiKTtlLmxlbmd0aD4wJiZlLnJlbW92ZSgpLHQuaGlkZSgpLmJlZm9yZSgnPHAgY2xhc3M9InN0YXJzIj5cdFx0XHRcdDxzcGFuPlx0XHRcdFx0XHQ8YSBjbGFzcz0ic3Rhci0xIiBocmVmPSIjIj4xPC9hPlx0XHRcdFx0XHQ8YSBjbGFzcz0ic3Rhci0yIiBocmVmPSIjIj4yPC9hPlx0XHRcdFx0XHQ8YSBjbGFzcz0ic3Rhci0zIiBocmVmPSIjIj4zPC9hPlx0XHRcdFx0XHQ8YSBjbGFzcz0ic3Rhci00IiBocmVmPSIjIj40PC9hPlx0XHRcdFx0XHQ8YSBjbGFzcz0ic3Rhci01IiBocmVmPSIjIj41PC9hPlx0XHRcdFx0PC9zcGFuPlx0XHRcdDwvcD4nKX0sd2luZG93LmV0X3BiX3dyYXBfd29vX2F0dHJpYnV0ZV9maWVsZHNfaW5fc3Bhbj1mdW5jdGlvbigpe3ZhciB0PW4oImZvcm0udmFyaWF0aW9uc19mb3JtIik7bi5lYWNoKHQsKGZ1bmN0aW9uKHQsZSl7dmFyIGk9bihlKSxhPWkuZmluZCgiLnZhcmlhdGlvbnMgc2VsZWN0Iiksbz1pLmZpbmQoIi52YXJpYXRpb25zIHNlbGVjdCIpLnBhcmVudCgidGQudmFsdWUiKSxyPWkuZmluZCgiLnJlc2V0X3ZhcmlhdGlvbnMiKTswPT09by5sZW5ndGh8fG8uYXR0cigiZGF0YS1pcy1zcGFuLWFkZGVkIil8fChvLmF0dHIoImRhdGEtaXMtc3Bhbi1hZGRlZCIsIjEiKSxuKGEpLndyYXAoIjxzcGFuPjwvc3Bhbj4iKSxnJiZyLmxlbmd0aD4wJiZuKHIpLnJlbW92ZSgpKX0pKX07dmFyIEM9ITE7ZnVuY3Rpb24gaygpe3JldHVybiBuKCIuZXQtbDpub3QoLmV0LWwtLWZvb3RlcikgLmV0X3BiX3NlY3Rpb246dmlzaWJsZSIpLmZpcnN0KCl9ZnVuY3Rpb24gaigpe3ZhciB0PW4oIi5ldF9wYl9ibG9nX2dyaWQiKTtpZigwIT09dC5sZW5ndGgpdmFyIGU9dC5maW5kKCIuZXRfcGJfc2FsdmF0dG9yZV9jb250ZW50IiksaT1zZXRJbnRlcnZhbCgoZnVuY3Rpb24oKXtlLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKSxlPXRbMF0sYT1nZXRDb21wdXRlZFN0eWxlKGUsIjpiZWZvcmUiKS5jb250ZW50OyJub25lIiE9PWEmJmNsZWFySW50ZXJ2YWwoaSksdC5jaGlsZHJlbigiLmNvbHVtbiIpLmxlbmd0aHx8Im5vbmUiIT09YSYmKHQuY2hpbGRyZW4oImRpdiIpLmxlbmd0aCYmIXQuY2hpbGRyZW4oImRpdiIpWzBdLmNsYXNzTGlzdC5sZW5ndGg/c2FsdmF0dG9yZS5yZWNyZWF0ZUNvbHVtbnMoZSk6c2FsdmF0dG9yZS5yZWdpc3RlckdyaWQoZSkpfSkpfSksMTAwKX1pZih3aW5kb3cuZXRfY2FsY3VsYXRlX2Z1bGxzY3JlZW5fc2VjdGlvbl9zaXplPWZ1bmN0aW9uKCl7bigic2VjdGlvbi5ldF9wYl9mdWxsc2NyZWVuIikuZWFjaCgoZnVuY3Rpb24oKXtldF9jYWxjX2Z1bGxzY3JlZW5fc2VjdGlvbi5iaW5kKG4odGhpcykpKCl9KSksZC5pc0J1aWxkZXJ8fChjbGVhclRpbWVvdXQoQyksQz1zZXRUaW1lb3V0KChmdW5jdGlvbigpe2gub2ZmKCJyZXNpemUiLGV0X2NhbGN1bGF0ZV9mdWxsc2NyZWVuX3NlY3Rpb25fc2l6ZSksaC5vZmYoImV0LXBiLWhlYWRlci1oZWlnaHQtY2FsY3VsYXRlZCIsZXRfY2FsY3VsYXRlX2Z1bGxzY3JlZW5fc2VjdGlvbl9zaXplKSxoLnRyaWdnZXIoInJlc2l6ZSIpLGgub24oInJlc2l6ZSIsZXRfY2FsY3VsYXRlX2Z1bGxzY3JlZW5fc2VjdGlvbl9zaXplKSxoLm9uKCJldC1wYi1oZWFkZXItaGVpZ2h0LWNhbGN1bGF0ZWQiLGV0X2NhbGN1bGF0ZV9mdWxsc2NyZWVuX3NlY3Rpb25fc2l6ZSl9KSkpfSx3aW5kb3cuZXRfcGJfaW5pdF9tb2R1bGVzPWZ1bmN0aW9uKCl7bi5ldF9wYl9zaW1wbGVfc2xpZGVyPWZ1bmN0aW9uKHQsZSl7dmFyIGksYSxvLHI9bi5leHRlbmQoe3NsaWRlOiIuZXQtc2xpZGUiLGFycm93czoiLmV0LXBiLXNsaWRlci1hcnJvd3MiLHByZXZfYXJyb3c6Ii5ldC1wYi1hcnJvdy1wcmV2IixuZXh0X2Fycm93OiIuZXQtcGItYXJyb3ctbmV4dCIsY29udHJvbHM6Ii5ldC1wYi1jb250cm9sbGVycyBhIixjYXJvdXNlbF9jb250cm9sczoiLmV0X3BiX2Nhcm91c2VsX2l0ZW0iLGNvbnRyb2xfYWN0aXZlX2NsYXNzOiJldC1wYi1hY3RpdmUtY29udHJvbCIscHJldmlvdXNfdGV4dDpldF9wYl9jdXN0b20ucHJldmlvdXMsbmV4dF90ZXh0OmV0X3BiX2N1c3RvbS5uZXh0LGZhZGVfc3BlZWQ6NTAwLHVzZV9hcnJvd3M6ITAsdXNlX2NvbnRyb2xzOiEwLG1hbnVhbF9hcnJvd3M6IiIsYXBwZW5kX2NvbnRyb2xzX3RvOiIiLGNvbnRyb2xzX2JlbG93OiExLGNvbnRyb2xzX2NsYXNzOiJldC1wYi1jb250cm9sbGVycyIsc2xpZGVzaG93OiExLHNsaWRlc2hvd19zcGVlZDo3ZTMsc2hvd19wcm9ncmVzc19iYXI6ITEsdGFic19hbmltYXRpb246ITEsdXNlX2Nhcm91c2VsOiExLGFjdGl2ZV9zbGlkZTowfSxlKSxzPW4odCksYz1zLmNsb3Nlc3RfZGVzY2VuZGVudChyLnNsaWRlKSxsPWMubGVuZ3RoLF89ci5mYWRlX3NwZWVkLHA9ci5hY3RpdmVfc2xpZGUsdT0iIixoPSIiLGI9KHMuZmluZCgiLmV0X3BiX2NvbnRhaW5lciIpLndpZHRoKCkscy5oYXNDbGFzcygiZXRfcGJfcG9zdF9zbGlkZXIiKSksdj0hMTtpZihzLmV0X2FuaW1hdGlvbl9ydW5uaW5nPSExLG4uZGF0YSh0LCJldF9wYl9zaW1wbGVfc2xpZGVyIixzKSxjLmVxKDApLmFkZENsYXNzKCJldC1wYi1hY3RpdmUtc2xpZGUiKSxzLmF0dHIoImRhdGEtYWN0aXZlLXNsaWRlIixjLmRhdGEoInNsaWRlLWlkIikpLHIudGFic19hbmltYXRpb258fHMuaGFzQ2xhc3MoImV0X3BiX2JnX2xheW91dF9kYXJrIil8fHMuaGFzQ2xhc3MoImV0X3BiX2JnX2xheW91dF9saWdodCIpfHxzLmFkZENsYXNzKEMoYy5lcSgwKSkpLHIudXNlX2Fycm93cyYmbD4xJiYoIiI9PXIubWFudWFsX2Fycm93cz9yLmhhc093blByb3BlcnR5KCJzbGlkZSIpJiYiLmV0X3BiX2dhbGxlcnlfaXRlbSI9PT1yLnNsaWRlP3MuYXBwZW5kKCIiLmNvbmNhdCgnPGRpdiBjbGFzcz0iZXQtcGItc2xpZGVyLWFycm93cyI+PGEgY2xhc3M9ImV0LXBiLWFycm93LXByZXYiIGhyZWY9IiMiIHN0eWxlPSJjb2xvcjppbmhlcml0Ij48c3Bhbj4nKS5jb25jYXQoci5wcmV2aW91c190ZXh0LCI8L3NwYW4+IikrJzwvYT48YSBjbGFzcz0iZXQtcGItYXJyb3ctbmV4dCIgaHJlZj0iIyIgc3R5bGU9ImNvbG9yOmluaGVyaXQiPicrIjxzcGFuPiIuY29uY2F0KHIubmV4dF90ZXh0LCI8L3NwYW4+IikrIjwvYT48L2Rpdj4iKTpzLmFwcGVuZCgiIi5jb25jYXQoJzxkaXYgY2xhc3M9ImV0LXBiLXNsaWRlci1hcnJvd3MiPjxhIGNsYXNzPSJldC1wYi1hcnJvdy1wcmV2IiBocmVmPSIjIiA+PHNwYW4+JykuY29uY2F0KHIucHJldmlvdXNfdGV4dCwiPC9zcGFuPiIpKyc8L2E+PGEgY2xhc3M9ImV0LXBiLWFycm93LW5leHQiIGhyZWY9IiMiPicrIjxzcGFuPiIuY29uY2F0KHIubmV4dF90ZXh0LCI8L3NwYW4+IikrIjwvYT48L2Rpdj4iKTpzLmFwcGVuZChyLm1hbnVhbF9hcnJvd3MpLHMuZmluZChyLmFycm93cykscy5maW5kKHIucHJldl9hcnJvdykscy5maW5kKHIubmV4dF9hcnJvdykscy5vbigiY2xpY2suZXRfcGJfc2ltcGxlX3NsaWRlciIsci5uZXh0X2Fycm93LChmdW5jdGlvbigpe3JldHVybiBzLmV0X2FuaW1hdGlvbl9ydW5uaW5nfHxzLmV0X3NsaWRlcl9tb3ZlX3RvKCJuZXh0IiksITF9KSkscy5vbigiY2xpY2suZXRfcGJfc2ltcGxlX3NsaWRlciIsci5wcmV2X2Fycm93LChmdW5jdGlvbigpe3JldHVybiBzLmV0X2FuaW1hdGlvbl9ydW5uaW5nfHxzLmV0X3NsaWRlcl9tb3ZlX3RvKCJwcmV2aW91cyIpLCExfSkpLHMub24oInN3aXBlbGVmdC5ldF9wYl9zaW1wbGVfc2xpZGVyIixyLnNsaWRlLChmdW5jdGlvbih0KXtuKHQudGFyZ2V0KS5jbG9zZXN0KCIuZXQtZmItcG9wb3Zlci10aW55bWNlIikubGVuZ3RofHxuKHQudGFyZ2V0KS5jbG9zZXN0KCIuZXQtZmItZWRpdGFibGUtZWxlbWVudCIpLmxlbmd0aHx8cy5ldF9zbGlkZXJfbW92ZV90bygibmV4dCIpfSkpLHMub24oInN3aXBlcmlnaHQuZXRfcGJfc2ltcGxlX3NsaWRlciIsci5zbGlkZSwoZnVuY3Rpb24odCl7bih0LnRhcmdldCkuY2xvc2VzdCgiLmV0LWZiLXBvcG92ZXItdGlueW1jZSIpLmxlbmd0aHx8bih0LnRhcmdldCkuY2xvc2VzdCgiLmV0LWZiLWVkaXRhYmxlLWVsZW1lbnQiKS5sZW5ndGh8fHMuZXRfc2xpZGVyX21vdmVfdG8oInByZXZpb3VzIil9KSkpLHIudXNlX2NvbnRyb2xzJiZsPjEpe2Zvcih2YXIgbT0xO208PWw7bSsrKXUrPSc8YSBocmVmPSIjIicuY29uY2F0KDE9PW0/JyBjbGFzcz0iJy5jb25jYXQoci5jb250cm9sX2FjdGl2ZV9jbGFzcywnIicpOiIiLCI+IikuY29uY2F0KG0sIjwvYT4iKTtzLmZpbmQoInZpZGVvIikubGVuZ3RoPjAmJihyLmNvbnRyb2xzX2NsYXNzKz0iIGV0LXBiLWNvbnRyb2xsZXJzLWhhcy12aWRlby10YWciKSx1PSc8ZGl2IGNsYXNzPSInLmNvbmNhdChyLmNvbnRyb2xzX2NsYXNzLCciPicpLmNvbmNhdCh1LCI8L2Rpdj4iKSwiIj09ci5hcHBlbmRfY29udHJvbHNfdG8/cy5hcHBlbmQodSk6bihyLmFwcGVuZF9jb250cm9sc190bykuYXBwZW5kKHUpLChpPXIuY29udHJvbHNfYmVsb3c/cy5wYXJlbnQoKS5maW5kKHIuY29udHJvbHMpOnMuZmluZChyLmNvbnRyb2xzKSkub24oImNsaWNrLmV0X3BiX3NpbXBsZV9zbGlkZXIiLChmdW5jdGlvbigpe3JldHVybiBzLmV0X2FuaW1hdGlvbl9ydW5uaW5nfHxzLmV0X3NsaWRlcl9tb3ZlX3RvKG4odGhpcykuaW5kZXgoKSksITF9KSl9aWYoci51c2VfY2Fyb3VzZWwmJmw+MSl7Zm9yKG09MTttPD1sO20rKyl7dmFyIGc9bS0xLHc9dm9pZCAwIT09Yy5lcShnKS5kYXRhKCJpbWFnZSIpPyJ1cmwoIi5jb25jYXQoYy5lcShnKS5kYXRhKCJpbWFnZSIpLCIpIik6Im5vbmUiO2grPSc8ZGl2IGNsYXNzPSJldF9wYl9jYXJvdXNlbF9pdGVtICcuY29uY2F0KDE9PT1tP3IuY29udHJvbF9hY3RpdmVfY2xhc3M6IiIsJyIgZGF0YS1zbGlkZS1pZD0iJykuY29uY2F0KGcsJyI+JykrJzxkaXYgY2xhc3M9ImV0X3BiX3ZpZGVvX292ZXJsYXkiIGhyZWY9IiMiIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiAnLmNvbmNhdCh3LCc7Ij4nKSsnPGRpdiBjbGFzcz0iZXRfcGJfdmlkZW9fb3ZlcmxheV9ob3ZlciI+PGEgaHJlZj0iIyIgY2xhc3M9ImV0X3BiX3ZpZGVvX3BsYXkiPjwvYT48L2Rpdj48L2Rpdj48L2Rpdj4nfWg9IiIuY29uY2F0KCc8ZGl2IGNsYXNzPSJldF9wYl9jYXJvdXNlbCI+PGRpdiBjbGFzcz0iZXRfcGJfY2Fyb3VzZWxfaXRlbXMiPicpLmNvbmNhdChoLCI8L2Rpdj4iKSsiPC9kaXY+IixzLmFmdGVyKGgpLChhPXMuc2libGluZ3MoIi5ldF9wYl9jYXJvdXNlbCIpLmZpbmQoci5jYXJvdXNlbF9jb250cm9scykpLm9uKCJjbGljay5ldF9wYl9zaW1wbGVfc2xpZGVyIiwoZnVuY3Rpb24oKXtpZihzLmV0X2FuaW1hdGlvbl9ydW5uaW5nKXJldHVybiExO3ZhciB0PW4odGhpcyk7cmV0dXJuIHMuZXRfc2xpZGVyX21vdmVfdG8odC5kYXRhKCJzbGlkZS1pZCIpKSwhMX0pKX1mdW5jdGlvbiB5KCl7dnx8KHMuaGFzQ2xhc3MoImV0X3BiX3BhdXNlX3NsaWRlciIpP3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7eSgpfSksMmUzKTpyLnNsaWRlc2hvdyYmbD4xJiYhcy5oYXNDbGFzcygiZXRfc2xpZGVyX2hvdmVyZWQiKSYmKG89c2V0VGltZW91dCgoZnVuY3Rpb24oKXtzLmV0X3NsaWRlcl9tb3ZlX3RvKCJuZXh0Iil9KSxyLnNsaWRlc2hvd19zcGVlZCkpKX1mdW5jdGlvbiB4KCl7dmFyIHQ9cyxlPXQuZmluZCgiLmV0LXBiLWFjdGl2ZS1zbGlkZSAuZXRfcGJfc2xpZGVfaW1hZ2UiKSxuPWUuZmluZCgiaW1nIiksaT10LmZpbmQoIi5ldC1wYi1hY3RpdmUtc2xpZGUgLmV0X3BiX3NsaWRlX3ZpZGVvIiksYT1lLmNsb3Nlc3QoIi5ldF9wYl9zbGlkZSIpLG89YS5jbG9zZXN0KCIuZXRfcGJfc2xpZGVyIikscj1wYXJzZUZsb2F0KG8uaW5uZXJIZWlnaHQoKSksYz1wYXJzZUZsb2F0KC44KnIpLGw9cGFyc2VGbG9hdChlLmhlaWdodCgpKSxfPXBhcnNlRmxvYXQoaS5oZWlnaHQoKSksZD1rKCkuY2hpbGRyZW4oIi5ldF9wYl9tb2R1bGU6dmlzaWJsZSIpLmZpcnN0KCkscD1kLmZpbmQoIi5ldF9wYl9zbGlkZSAuZXRfcGJfY29udGFpbmVyIiksdT1rKCkuaXMoIi5ldF9wYl9mdWxsd2lkdGhfc2VjdGlvbiIpLGY9cGFyc2VGbG9hdChwLmhlaWdodCgpKSxoPXBhcnNlRmxvYXQoLjgqZik7aXNOYU4oYyl8fChlLmZpbmQoImltZyIpLmNzcygibWF4SGVpZ2h0IiwiIi5jb25jYXQoYywicHgiKSksbD1wYXJzZUludChlLmhlaWdodCgpKSx3aW5kb3cuZXRfaXNfdHJhbnNwYXJlbnRfbmF2JiZkLmlzKCIuZXRfcGJfc2xpZGVyIikmJnUmJihlLmZpbmQoImltZyIpLmNzcygibWF4SGVpZ2h0IiwiIi5jb25jYXQoaCwicHgiKSksbD1wYXJzZUludChlLmhlaWdodCgpKSkpLCFpc05hTihsKSYmYS5oYXNDbGFzcygiZXRfcGJfbWVkaWFfYWxpZ25tZW50X2NlbnRlciIpJiYoZS5jc3MoIm1hcmdpblRvcCIsIi0iLmNvbmNhdChsLzIsInB4IikpLG4uZGF0YSgiaGFzTG9hZEV2ZW50Iil8fChuLmRhdGEoImhhc0xvYWRFdmVudCIsITApLG4ub24oImxvYWQiLChmdW5jdGlvbigpe2w9cGFyc2VGbG9hdChlLmhlaWdodCgpKSxlLmNzcygibWFyZ2luVG9wIiwiLSIuY29uY2F0KGwvMiwicHgiKSl9KSkpKSxpc05hTihfKXx8aS5jc3MoIm1hcmdpblRvcCIsIi0iLmNvbmNhdChfLzIsInB4IikpfWZ1bmN0aW9uIEModCl7cmV0dXJuIHQuaGFzQ2xhc3MoImV0X3BiX2JnX2xheW91dF9saWdodCIpPyJldF9wYl9iZ19sYXlvdXRfbGlnaHQiOiJldF9wYl9iZ19sYXlvdXRfZGFyayJ9ci5zbGlkZXNob3cmJmw+MSYmcy5vbigibW91c2VlbnRlci5ldF9wYl9zaW1wbGVfc2xpZGVyIiwoZnVuY3Rpb24oKXtzLmhhc0NsYXNzKCJldF9zbGlkZXJfYXV0b19pZ25vcmVfaG92ZXIiKXx8KHMuYWRkQ2xhc3MoImV0X3NsaWRlcl9ob3ZlcmVkIiksdm9pZCAwIT09byYmY2xlYXJUaW1lb3V0KG8pKX0pKS5vbigibW91c2VsZWF2ZS5ldF9wYl9zaW1wbGVfc2xpZGVyIiwoZnVuY3Rpb24oKXtzLmhhc0NsYXNzKCJldF9zbGlkZXJfYXV0b19pZ25vcmVfaG92ZXIiKXx8KHMucmVtb3ZlQ2xhc3MoImV0X3NsaWRlcl9ob3ZlcmVkIikseSgpKX0pKSx5KCkscy5ldF9zbGlkZXJfZGVzdHJveT1mdW5jdGlvbigpe3ZvaWQgMCE9PW8mJmNsZWFyVGltZW91dChvKSx2PSEwLHMub2ZmKCIuZXRfcGJfc2ltcGxlX3NsaWRlciIpLHMuZmluZCgiLmV0X3BiX3NsaWRlIikuY3NzKHsiei1pbmRleCI6IiIsZGlzcGxheToiIixvcGFjaXR5OiIifSkscy5maW5kKCIuZXQtcGItYWN0aXZlLXNsaWRlIikucmVtb3ZlQ2xhc3MoImV0LXBiLWFjdGl2ZS1zbGlkZSIpLHMuZmluZCgiLmV0LXBiLW1vdmVkLXNsaWRlIikucmVtb3ZlQ2xhc3MoImV0LXBiLW1vdmVkLXNsaWRlIikscy5maW5kKCIuZXQtcGItc2xpZGVyLWFycm93cywgLmV0LXBiLWNvbnRyb2xsZXJzIikucmVtb3ZlKCkscy5zaWJsaW5ncygiLmV0X3BiX2Nhcm91c2VsLCAuZXQtcGItY29udHJvbGxlcnMiKS5yZW1vdmUoKSxzLnJlbW92ZURhdGEoImV0X3BiX3NpbXBsZV9zbGlkZXIiKX0scy5ldF9maXhfc2xpZGVyX2NvbnRlbnRfaW1hZ2VzPXgsd2luZG93LmV0X2xvYWRfZXZlbnRfZmlyZWQ/ImZ1bmN0aW9uIj09dHlwZW9mIGV0X2ZpeF9zbGlkZXJfaGVpZ2h0JiZldF9maXhfc2xpZGVyX2hlaWdodChzKTpmLm9uKCJsb2FkIiwoZnVuY3Rpb24oKXsiZnVuY3Rpb24iPT10eXBlb2YgZXRfZml4X3NsaWRlcl9oZWlnaHQmJmV0X2ZpeF9zbGlkZXJfaGVpZ2h0KHMpfSkpLGYub24oInJlc2l6ZS5ldF9zaW1wbGVfc2xpZGVyIiwoZnVuY3Rpb24oKXtldF9maXhfc2xpZGVyX2hlaWdodChzKX0pKSxzLmV0X3NsaWRlcl9tb3ZlX3RvPWZ1bmN0aW9uKHQpe3ZhciBlPShjPXMuY2xvc2VzdF9kZXNjZW5kZW50KHIuc2xpZGUpKS5lcShwKTtpZihzLmV0X2FuaW1hdGlvbl9ydW5uaW5nPSEwLHMucmVtb3ZlQ2xhc3MoImV0X3NsaWRlX3RyYW5zaXRpb25fdG9fbmV4dCBldF9zbGlkZV90cmFuc2l0aW9uX3RvX3ByZXZpb3VzIikuYWRkQ2xhc3MoImV0X3NsaWRlX3RyYW5zaXRpb25fdG9fIi5jb25jYXQodCkpLHMuZmluZCgiLmV0LXBiLW1vdmVkLXNsaWRlIikucmVtb3ZlQ2xhc3MoImV0LXBiLW1vdmVkLXNsaWRlIiksIm5leHQiPT09dHx8InByZXZpb3VzIj09PXQpcD0ibmV4dCI9PT10P3ArMTxsP3ArMTowOnAtMT49MD9wLTE6bC0xO2Vsc2V7aWYocD09PXQpcmV0dXJuIHMuZmluZCgiLmV0LXBiLWluYWN0aXZlLXNsaWRlIikuY3NzKHsiei1pbmRleCI6IiIsZGlzcGxheToiIixvcGFjaXR5OjB9KSxlLmNzcyh7ZGlzcGxheToiYmxvY2siLG9wYWNpdHk6MX0pLmRhdGEoInNsaWRlLXN0YXR1cyIsImFjdGl2ZSIpLHZvaWQocy5ldF9hbmltYXRpb25fcnVubmluZz0hMSk7cD10fXMuYXR0cigiZGF0YS1hY3RpdmUtc2xpZGUiLGMuZXEocCkuZGF0YSgic2xpZGUtaWQiKSksdm9pZCAwIT09byYmY2xlYXJUaW1lb3V0KG8pO3ZhciB1PWMuZXEocCk7cy50cmlnZ2VyKCJzbGlkZSIse2N1cnJlbnQ6ZSxuZXh0OnV9KSx2b2lkIDAhPT1lLmZpbmQoInZpZGVvIilbMF0mJnZvaWQgMCE9PWUuZmluZCgidmlkZW8iKVswXS5wbGF5ZXImJmUuZmluZCgidmlkZW8iKVswXS5wbGF5ZXIucGF1c2UoKSx2b2lkIDAhPT11LmZpbmQoInZpZGVvIilbMF0mJnZvaWQgMCE9PXUuZmluZCgidmlkZW8iKVswXS5wbGF5ZXImJnUuZmluZCgidmlkZW8iKVswXS5wbGF5ZXIucGxheSgpO3ZhciBmLGgsdixtPWUuZmluZCgiLmV0X3BiX3ZpZGVvX2JveCBpZnJhbWUiKTtpZihtLmxlbmd0aCl7dmFyIGc9bS5hdHRyKCJzcmMiKTtnPShnPShnPWcucmVwbGFjZSgvXD9hdXRvcGxheT0xJC8sIiIpKS5yZXBsYWNlKC9cP2F1dG9wbGF5PTEmKGFtcDspPy8sIj8iKSkucmVwbGFjZSgvJihhbXA7KT9hdXRvcGxheT0xLywiIiksc2V0VGltZW91dCgoZnVuY3Rpb24oKXttLmF0dHIoe3NyYzpnfSl9KSxyLmZhZGVfc3BlZWQpLG0ucGFyZW50cygiLmV0X3BiX3ZpZGVvX2JveCIpLm5leHQoIi5ldF9wYl92aWRlb19vdmVybGF5IikuY3NzKHtkaXNwbGF5OiJibG9jayIsb3BhY2l0eToxfSl9cy50cmlnZ2VyKCJzaW1wbGVfc2xpZGVyX2JlZm9yZV9tb3ZlX3RvIix7ZGlyZWN0aW9uOnQsbmV4dF9zbGlkZTp1fSksYy5lYWNoKChmdW5jdGlvbigpe24odGhpcykuY3NzKCJ6SW5kZXgiLDEpfSkpLGUuY3NzKCJ6SW5kZXgiLDIpLnJlbW92ZUNsYXNzKCJldC1wYi1hY3RpdmUtc2xpZGUiKS5hZGRDbGFzcygiZXQtcGItbW92ZWQtc2xpZGUiKS5kYXRhKCJzbGlkZS1zdGF0dXMiLCJpbmFjdGl2ZSIpLHUuY3NzKHtkaXNwbGF5OiJibG9jayIsb3BhY2l0eTowfSkuYWRkQ2xhc3MoImV0LXBiLWFjdGl2ZS1zbGlkZSIpLmRhdGEoInNsaWRlLXN0YXR1cyIsImFjdGl2ZSIpLGg9KGY9cykuZmluZCgiLmV0LXBiLWFjdGl2ZS1zbGlkZSAuZXRfcGJfc2xpZGVfdmlkZW8iKSx2PXBhcnNlRmxvYXQoaC5oZWlnaHQoKSksZi5maW5kKCIuZXRfcGJfc2xpZGVfdmlkZW8gLndwLXZpZGVvLXNob3J0Y29kZSIpLmNzcyh7d2lkdGg6IiIsaGVpZ2h0OiIifSksaXNOYU4odil8fGguY3NzKCJtYXJnaW5Ub3AiLCItIi5jb25jYXQodi8yLCJweCIpKSx4KCksYiYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXt2YXIgdD1uKCIuZXRfcGJfY2lyY2xlX2NvdW50ZXIiKSxlPW4oIi5ldF9wYl9udW1iZXJfY291bnRlciIpO3dpbmRvdy5ldF9maXhfdGVzdGltb25pYWxfaW5uZXJfd2lkdGgoKSx0Lmxlbmd0aCYmd2luZG93LmV0X3BiX3JlaW5pdF9jaXJjbGVfY291bnRlcnModCksZS5sZW5ndGgmJndpbmRvdy5ldF9wYl9yZWluaXRfbnVtYmVyX2NvdW50ZXJzKGUpLHdpbmRvdy5ldF9yZWluaXRfd2F5cG9pbnRfbW9kdWxlcygpfSksMWUzKSxyLnVzZV9jb250cm9scyYmaS5yZW1vdmVDbGFzcyhyLmNvbnRyb2xfYWN0aXZlX2NsYXNzKS5lcShwKS5hZGRDbGFzcyhyLmNvbnRyb2xfYWN0aXZlX2NsYXNzKSxyLnVzZV9jYXJvdXNlbCYmYSYmYS5yZW1vdmVDbGFzcyhyLmNvbnRyb2xfYWN0aXZlX2NsYXNzKS5lcShwKS5hZGRDbGFzcyhyLmNvbnRyb2xfYWN0aXZlX2NsYXNzKSxyLnRhYnNfYW5pbWF0aW9uPyh1LmNzcyh7ZGlzcGxheToibm9uZSIsb3BhY2l0eTowfSksZS5hZGRDbGFzcygiZXRfc2xpZGVfdHJhbnNpdGlvbiIpLmNzcyh7ZGlzcGxheToiYmxvY2siLG9wYWNpdHk6MX0pLmFuaW1hdGUoe29wYWNpdHk6MH0sXywoZnVuY3Rpb24oKXtuKHRoaXMpLmNzcygiZGlzcGxheSIsIm5vbmUiKS5yZW1vdmVDbGFzcygiZXRfc2xpZGVfdHJhbnNpdGlvbiIpLHUuY3NzKHtkaXNwbGF5OiJibG9jayIsb3BhY2l0eTowfSkuYW5pbWF0ZSh7b3BhY2l0eToxfSxfLChmdW5jdGlvbigpe3MuZXRfYW5pbWF0aW9uX3J1bm5pbmc9ITEscy50cmlnZ2VyKCJzaW1wbGVfc2xpZGVyX2FmdGVyX21vdmVfdG8iLHtuZXh0X3NsaWRlOnV9KSxuKHdpbmRvdykudHJpZ2dlcigicmVzaXplIil9KSl9KSkpOih1LmFuaW1hdGUoe29wYWNpdHk6MX0sXyksZS5hZGRDbGFzcygiZXRfc2xpZGVfdHJhbnNpdGlvbiIpLmNzcyh7ZGlzcGxheToibGlzdC1pdGVtIixvcGFjaXR5OjF9KS5hbmltYXRlKHtvcGFjaXR5OjB9LF8sKGZ1bmN0aW9uKCl7dmFyIHQsaSxhLG89QyhlKSxyPUModSk7ZC5pc0J1aWxkZXI/bih0aGlzKS5yZW1vdmVDbGFzcygiZXRfc2xpZGVfdHJhbnNpdGlvbiIpOm4odGhpcykuY3NzKCJkaXNwbGF5Iiwibm9uZSIpLnJlbW92ZUNsYXNzKCJldF9zbGlkZV90cmFuc2l0aW9uIiksKHQ9ZSkuaGFzKCJpZnJhbWUiKS5sZW5ndGg/KGE9KGk9dC5maW5kKCJpZnJhbWUiKSkuYXR0cigic3JjIiksaS5hdHRyKCJzcmMiLCIiKSxpLmF0dHIoInNyYyIsYSkpOnQuaGFzKCJ2aWRlbyIpLmxlbmd0aCYmKHQuZmluZCgiLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmciKS5sZW5ndGh8fChpPXQuZmluZCgidmlkZW8iKSlbMF0ucGF1c2UoKSkscy5yZW1vdmVDbGFzcyhvKS5hZGRDbGFzcyhyKSxzLmV0X2FuaW1hdGlvbl9ydW5uaW5nPSExLHMuaGFzQ2xhc3MoImV0X3BiX2dhbGxlcnkiKSYmIm5vbmUiPT09dS5jc3MoIm1heEhlaWdodCIpJiZ1LmNzcygibWF4SGVpZ2h0Iix1Lm91dGVySGVpZ2h0KCkpLHMudHJpZ2dlcigic2ltcGxlX3NsaWRlcl9hZnRlcl9tb3ZlX3RvIix7bmV4dF9zbGlkZTp1fSl9KSkpLHUuZmluZCgiLmV0X3BhcmFsbGF4X2JnIikubGVuZ3RoJiZ3aW5kb3cuZXRfcGJfcGFyYWxsYXhfaW5pdCh1LmZpbmQoIi5ldF9wYXJhbGxheF9iZyIpKSx5KCl9fSxuLmZuLmV0X3BiX3NpbXBsZV9zbGlkZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtyZXR1cm4gbi5kYXRhKHRoaXMsImV0X3BiX3NpbXBsZV9zbGlkZXIiKXx8bmV3IG4uZXRfcGJfc2ltcGxlX3NsaWRlcih0aGlzLHQpfSkpfTt2YXIgZT0ifHwiLGw9InwiO2Z1bmN0aW9uIEModCl7dmFyIGk9dC5zcGxpdChsKVswXTtpZihuKCIjIi5jb25jYXQoaSkpLmxlbmd0aCl7aWYod2luZG93LmxvY2F0aW9uLmhhc2gpe3ZhciBhPXdpbmRvdy5sb2NhdGlvbi5oYXNoLnN1YnN0cmluZygxKSxvPVtdO2lmKC0xIT09YS5pbmRleE9mKGUsMCkpe2Zvcih2YXIgcj1hLnNwbGl0KGUpLHM9ITEsYz0wO2M8ci5sZW5ndGg7YysrKXJbY10uc3BsaXQobClbMF09PT1pPyhvLnB1c2godCkscz0hMCk6by5wdXNoKHJbY10pO3N8fG8ucHVzaCh0KX1lbHNlIGEuc3BsaXQobClbMF0hPT1pJiZvLnB1c2goYSksby5wdXNoKHQpO2E9by5qb2luKGUpfWVsc2UgYT10O3ZhciBfPWRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wO3dpbmRvdy5sb2NhdGlvbi5oYXNoPWEsZG9jdW1lbnQuYm9keS5zY3JvbGxUb3A9X319ZnVuY3Rpb24gVCgpe3ZhciBlO3ZvaWQgMCE9PXQuZm4ubWVkaWFlbGVtZW50cGxheWVyJiYoZT0iLmV0X2F1ZGlvX2NvbnRhaW5lciIsInN0cmluZyI9PXR5cGVvZiBlJiYoZT1uKGUpKSxlLm5vdCgiI2V0LWZiLWFwcCAqIikpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKTtlLmZpbmQoIi5tZWpzLWNvbnRhaW5lciIpLmZpcnN0KCkubGVuZ3RoPjB8fGUuZmluZCgiYXVkaW8iKS5tZWRpYWVsZW1lbnRwbGF5ZXIod2luZG93Ll93cG1lanNTZXR0aW5ncyl9KSl9bi5ldF9wYl9zaW1wbGVfY2Fyb3VzZWw9ZnVuY3Rpb24odCxlKXt2YXIgaT1uLmV4dGVuZCh7c2xpZGVfZHVyYXRpb246NTAwfSxlKSxhPW4odCksbz1hLmZpbmQoIi5ldF9wYl9jYXJvdXNlbF9pdGVtcyIpLHI9by5maW5kKCIuZXRfcGJfY2Fyb3VzZWxfaXRlbSIpO2Z1bmN0aW9uIHModCl7ci53aWR0aCgpO3ZhciBlPXIuaGVpZ2h0KCk7dC5wYXJlbnQoKS5oYXNDbGFzcygiZXRfcGJfd2l0aF9ib3JkZXIiKSYmKGU9ci5vdXRlckhlaWdodCgpKSxvLmNzcygiaGVpZ2h0IiwiIi5jb25jYXQoZSwicHgiKSl9ZnVuY3Rpb24gYyh0KXt2YXIgZT0zLGk9dC5wYXJlbnRzKCcuZXRfcGJfY29sdW1uOm5vdCgiLmV0X3BiX3NwZWNpYWx0eV9jb2x1bW4iKScpO2lmKGkuaGFzQ2xhc3MoImV0X3BiX2NvbHVtbl80XzQiKXx8aS5oYXNDbGFzcygiZXRfcGJfY29sdW1uXzNfNCIpfHxpLmhhc0NsYXNzKCJldF9wYl9jb2x1bW5fMl8zIik/Zi53aWR0aCgpPj03NjgmJihlPTQpOmkuaGFzQ2xhc3MoImV0X3BiX2NvbHVtbl8xXzQiKT9mLndpZHRoKCk8PTQ4MCYmZi53aWR0aCgpPj05ODAmJihlPTIpOmkuaGFzQ2xhc3MoImV0X3BiX2NvbHVtbl8zXzUiKT9lPTQ6KGkuaGFzQ2xhc3MoImV0X3BiX2NvbHVtbl8xXzUiKXx8aS5oYXNDbGFzcygiZXRfcGJfY29sdW1uXzFfNiIpKSYmKGU9MiksZSE9PW8uZGF0YSgicG9ydGZvbGlvLWNvbHVtbnMiKSYmIXQuZGF0YSgiY29sdW1uc19zZXR0aW5nX3VwIikpe3QuZGF0YSgiY29sdW1uc19zZXR0aW5nX3VwIiwhMCksby5yZW1vdmVDbGFzcygiY29sdW1ucy0iLmNvbmNhdChvLmRhdGEoInBvcnRmb2xpby1jb2x1bW5zIikpKSxvLmFkZENsYXNzKCJjb2x1bW5zLSIuY29uY2F0KGUpKSxvLmRhdGEoInBvcnRmb2xpby1jb2x1bW5zIixlKSxvLmZpbmQoIi5ldC1jYXJvdXNlbC1ncm91cCIpLmxlbmd0aCYmKHIuYXBwZW5kVG8obyksby5maW5kKCIuZXQtY2Fyb3VzZWwtZ3JvdXAiKS5yZW1vdmUoKSk7dmFyIGE9by5kYXRhKCJpdGVtcyIpLHM9bignPGRpdiBjbGFzcz0iZXQtY2Fyb3VzZWwtZ3JvdXAgYWN0aXZlIj4nKS5hcHBlbmRUbyhvKTtyLmRhdGEoInBvc2l0aW9uIiwiIiksYS5sZW5ndGg8PWU/by5maW5kKCIuZXQtcGItc2xpZGVyLWFycm93cyIpLmhpZGUoKTpvLmZpbmQoIi5ldC1wYi1zbGlkZXItYXJyb3dzIikuc2hvdygpO2Zvcih2YXIgYz0xLGw9MDtsPGEubGVuZ3RoO2wrKyxjKyspbDxlPyhuKGFbbF0pLnNob3coKSxuKGFbbF0pLmFwcGVuZFRvKHMpLG4oYVtsXSkuZGF0YSgicG9zaXRpb24iLGMpLG4oYVtsXSkuYWRkQ2xhc3MoInBvc2l0aW9uXyIuY29uY2F0KGMpKSk6KGM9bihhW2xdKS5kYXRhKCJwb3NpdGlvbiIpLG4oYVtsXSkucmVtb3ZlQ2xhc3MoInBvc2l0aW9uXyIuY29uY2F0KGMpKSxuKGFbbF0pLmRhdGEoInBvc2l0aW9uIiwiIiksbihhW2xdKS5oaWRlKCkpO3QuZGF0YSgiY29sdW1uc19zZXR0aW5nX3VwIiwhMSl9fWEuZXRfYW5pbWF0aW9uX3J1bm5pbmc9ITEsYS5hZGRDbGFzcygiY29udGFpbmVyLXdpZHRoLWNoYW5nZS1ub3RpZnkiKS5vbigiY29udGFpbmVyV2lkdGhDaGFuZ2VkIiwoZnVuY3Rpb24odCl7YyhhKSxzKGEpfSkpLG8uZGF0YSgiaXRlbXMiLHIudG9BcnJheSgpKSxhLmRhdGEoImNvbHVtbnNfc2V0dGluZ191cCIsITEpLG8ucHJlcGVuZCgiIi5jb25jYXQoJzxkaXYgY2xhc3M9ImV0LXBiLXNsaWRlci1hcnJvd3MiPjxhIGNsYXNzPSJldC1wYi1zbGlkZXItYXJyb3cgZXQtcGItYXJyb3ctcHJldiIgaHJlZj0iIyI+PHNwYW4+JykuY29uY2F0KGV0X3BiX2N1c3RvbS5wcmV2aW91cywiPC9zcGFuPiIpKyc8L2E+PGEgY2xhc3M9ImV0LXBiLXNsaWRlci1hcnJvdyBldC1wYi1hcnJvdy1uZXh0IiBocmVmPSIjIj4nKyI8c3Bhbj4iLmNvbmNhdChldF9wYl9jdXN0b20ubmV4dCwiPC9zcGFuPiIpKyI8L2E+PC9kaXY+IiksYyhhKSxzKGEpLGEuZmluZCgiLmV0LXBiLWFycm93LW5leHQiKSxhLmZpbmQoIi5ldC1wYi1hcnJvdy1wcmV2IiksYS5vbigiY2xpY2siLCIuZXQtcGItYXJyb3ctbmV4dCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGEuZXRfYW5pbWF0aW9uX3J1bm5pbmd8fGEuZXRfY2Fyb3VzZWxfbW92ZV90bygibmV4dCIpLCExfSkpLGEub24oImNsaWNrIiwiLmV0LXBiLWFycm93LXByZXYiLChmdW5jdGlvbigpe3JldHVybiBhLmV0X2FuaW1hdGlvbl9ydW5uaW5nfHxhLmV0X2Nhcm91c2VsX21vdmVfdG8oInByZXZpb3VzIiksITF9KSksYS5vbigic3dpcGVsZWZ0IiwoZnVuY3Rpb24oKXthLmV0X2Nhcm91c2VsX21vdmVfdG8oIm5leHQiKX0pKSxhLm9uKCJzd2lwZXJpZ2h0IiwoZnVuY3Rpb24oKXthLmV0X2Nhcm91c2VsX21vdmVfdG8oInByZXZpb3VzIil9KSksYS5ldF9jYXJvdXNlbF9tb3ZlX3RvPWZ1bmN0aW9uKHQpe3ZhciBlPW8uZmluZCgiLmV0LWNhcm91c2VsLWdyb3VwLmFjdGl2ZSIpLHM9by5kYXRhKCJpdGVtcyIpLGM9by5kYXRhKCJwb3J0Zm9saW8tY29sdW1ucyIpO2EuZXRfYW5pbWF0aW9uX3J1bm5pbmc9ITA7dmFyIGw9MDtlLmNoaWxkcmVuKCkuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIixsZWZ0OiIiLmNvbmNhdChsLCJweCIpfSksbCs9bih0aGlzKS5vdXRlcldpZHRoKCEwKX0pKSxuKCJib2R5IikuYWRkQ2xhc3MoImV0LXBiLWlzLXNsaWRpbmctY2Fyb3VzZWwiKTt2YXIgXz1lLmZpbmQoIi5ldF9wYl9jYXJvdXNlbF9pdGVtIikubGVuZ3RoLGQ9MDtpZigibmV4dCI9PXQpe3ZhciBwLHU9MSxmPTEsaD1DPSh4PXMuaW5kZXhPZihlLmNoaWxkcmVuKCkuZmlyc3QoKVswXSkpK2MsYj1oK2M7KHA9bignPGRpdiBjbGFzcz0iZXQtY2Fyb3VzZWwtZ3JvdXAgbmV4dCIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7bGVmdDogMTAwJTtwb3NpdGlvbjogYWJzb2x1dGU7dG9wOiAwOyI+JykuaW5zZXJ0QWZ0ZXIoZSkpLmNzcyh7d2lkdGg6IiIuY29uY2F0KGUuaW5uZXJXaWR0aCgpLCJweCIpfSkuc2hvdygpO2Zvcih2YXIgdj0wLG09MDttPj14JiZtPEMmJihuKHNbdl0pLmFkZENsYXNzKCJjaGFuZ2luZ19wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb25fIi5jb25jYXQodSkpLG4oc1t2XSkuZGF0YSgiY3VycmVudF9wb3NpdGlvbiIsdSksdSsrKSxtPj1oJiZtPGImJihuKHNbdl0pLmRhdGEoIm5leHRfcG9zaXRpb24iLGYpLG4oc1t2XSkuYWRkQ2xhc3MoImNoYW5naW5nX3Bvc2l0aW9uIG5leHRfcG9zaXRpb24gbmV4dF9wb3NpdGlvbl8iLmNvbmNhdChmKSksbihzW3ZdKS5oYXNDbGFzcygiY3VycmVudF9wb3NpdGlvbiIpPyhuKHNbdl0pLmNsb25lKCEwKS5hcHBlbmRUbyhlKS5oaWRlKCkuYWRkQ2xhc3MoImRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZF9kdXAiKS5hdHRyKCJpZCIsIiIuY29uY2F0KG4oc1t2XSkuYXR0cigiaWQiKSwiLWR1cCIpKSxuKHNbdl0pLmFkZENsYXNzKCJkZWxheWVkX2NvbnRhaW5lcl9hcHBlbmQiKSk6bihzW3ZdKS5hZGRDbGFzcygiY29udGFpbmVyX2FwcGVuZCIpLGYrKyksIShmPmMpO3YrKyxtKyspdj49cy5sZW5ndGgtMSYmKHY9LTEpO3ZhciBnPW8uZmluZCgiLmNvbnRhaW5lcl9hcHBlbmQsIC5kZWxheWVkX2NvbnRhaW5lcl9hcHBlbmRfZHVwIikuc29ydCgoZnVuY3Rpb24odCxlKXt2YXIgaT1wYXJzZUludChuKHQpLmRhdGEoIm5leHRfcG9zaXRpb24iKSksYT1wYXJzZUludChuKGUpLmRhdGEoIm5leHRfcG9zaXRpb24iKSk7cmV0dXJuIGk8YT8tMTppPmE/MTowfSkpO24oZykuc2hvdygpLmFwcGVuZFRvKHApLGw9MCxwLmNoaWxkcmVuKCkuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIixsZWZ0OiIiLmNvbmNhdChsLCJweCIpfSksbCs9bih0aGlzKS5vdXRlcldpZHRoKCEwKX0pKSxlLmFuaW1hdGUoe2xlZnQ6Ii0xMDAlIn0se2R1cmF0aW9uOmkuc2xpZGVfZHVyYXRpb24scHJvZ3Jlc3M6ZnVuY3Rpb24odCxuKXtuPmQvXyYmKGQrKyxlLmZpbmQoIi5ldF9wYl9jYXJvdXNlbF9pdGVtOm50aC1jaGlsZCgiLmNvbmNhdChkLCIpIikpLmFkZENsYXNzKCJpdGVtLWZhZGUtb3V0IikscC5maW5kKCIuZXRfcGJfY2Fyb3VzZWxfaXRlbTpudGgtY2hpbGQoIi5jb25jYXQoZCwiKSIpKS5hZGRDbGFzcygiaXRlbS1mYWRlLWluIikpfSxjb21wbGV0ZTpmdW5jdGlvbigpe28uZmluZCgiLmRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZCIpLmVhY2goKGZ1bmN0aW9uKCl7bD1uKCIjIi5jb25jYXQobih0aGlzKS5hdHRyKCJpZCIpLCItZHVwIikpLmNzcygibGVmdCIpLG4odGhpcykuY3NzKHtwb3NpdGlvbjoiYWJzb2x1dGUiLGxlZnQ6bH0pLG4odGhpcykuYXBwZW5kVG8ocCl9KSksZS5yZW1vdmVDbGFzcygiYWN0aXZlIiksZS5jaGlsZHJlbigpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKS5kYXRhKCJwb3NpdGlvbiIpO3U9bih0aGlzKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIiksbih0aGlzKS5yZW1vdmVDbGFzcygicG9zaXRpb25fIi5jb25jYXQodCwiICIpKyJjaGFuZ2luZ19wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb25fIi5jb25jYXQodSkpLG4odGhpcykuZGF0YSgicG9zaXRpb24iLCIiKSxuKHRoaXMpLmRhdGEoImN1cnJlbnRfcG9zaXRpb24iLCIiKSxuKHRoaXMpLmhpZGUoKSxuKHRoaXMpLmNzcyh7cG9zaXRpb246IiIsbGVmdDoiIn0pLG4odGhpcykuYXBwZW5kVG8obyl9KSksby5maW5kKCIuaXRlbS1mYWRlLW91dCIpLnJlbW92ZUNsYXNzKCJpdGVtLWZhZGUtb3V0IikscC5maW5kKCIuaXRlbS1mYWRlLWluIikucmVtb3ZlQ2xhc3MoIml0ZW0tZmFkZS1pbiIpLG4oImJvZHkiKS5yZW1vdmVDbGFzcygiZXQtcGItaXMtc2xpZGluZy1jYXJvdXNlbCIpLGUucmVtb3ZlKCl9fSk7dmFyIHc9ZS53aWR0aCgpK3BhcnNlSW50KHIuZmlyc3QoKS5jc3MoIm1hcmdpblJpZ2h0Iikuc2xpY2UoMCwtMikpO3AuYWRkQ2xhc3MoImFjdGl2ZSIpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIix0b3A6IjBweCIsbGVmdDoiIi5jb25jYXQodywicHgiKX0pLHAuYW5pbWF0ZSh7bGVmdDoiMCUifSx7ZHVyYXRpb246aS5zbGlkZV9kdXJhdGlvbixjb21wbGV0ZTpmdW5jdGlvbigpe3AucmVtb3ZlQ2xhc3MoIm5leHQiKS5hZGRDbGFzcygiYWN0aXZlIikuY3NzKHtwb3NpdGlvbjoiIix3aWR0aDoiIix0b3A6IiIsbGVmdDoiIn0pLHAuZmluZCgiLmNoYW5naW5nX3Bvc2l0aW9uIikuZWFjaCgoZnVuY3Rpb24odCl7dmFyIGU9bih0aGlzKS5kYXRhKCJwb3NpdGlvbiIpO3U9bih0aGlzKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIiksZj1uKHRoaXMpLmRhdGEoIm5leHRfcG9zaXRpb24iKSxuKHRoaXMpLnJlbW92ZUNsYXNzKCJjb250YWluZXJfYXBwZW5kIGRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZCBwb3NpdGlvbl8iLmNvbmNhdChlLCIgIikrImNoYW5naW5nX3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb24gY3VycmVudF9wb3NpdGlvbl8iLmNvbmNhdCh1LCIgbmV4dF9wb3NpdGlvbiBuZXh0X3Bvc2l0aW9uXyIpLmNvbmNhdChmKSksbih0aGlzKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIiwiIiksbih0aGlzKS5kYXRhKCJuZXh0X3Bvc2l0aW9uIiwiIiksbih0aGlzKS5kYXRhKCJwb3NpdGlvbiIsdCsxKX0pKSxwLmNoaWxkcmVuKCkuY3NzKHtwb3NpdGlvbjoiIixsZWZ0OiIifSkscC5maW5kKCIuZGVsYXllZF9jb250YWluZXJfYXBwZW5kX2R1cCIpLnJlbW92ZSgpLGEuZXRfYW5pbWF0aW9uX3J1bm5pbmc9ITF9fSl9ZWxzZSBpZigicHJldmlvdXMiPT10KXt1PWM7dmFyIHkseCxDLGs9YyxqPWMtMSxUPShDPSh4PXMuaW5kZXhPZihlLmNoaWxkcmVuKCkubGFzdCgpWzBdKSktaiktMSxPPVQtajsoeT1uKCc8ZGl2IGNsYXNzPSJldC1jYXJvdXNlbC1ncm91cCBwcmV2IiBzdHlsZT0iZGlzcGxheTogbm9uZTtsZWZ0OiAxMDAlO3Bvc2l0aW9uOiBhYnNvbHV0ZTt0b3A6IDA7Ij4nKS5pbnNlcnRCZWZvcmUoZSkpLmNzcyh7bGVmdDoiLSIuY29uY2F0KGUuaW5uZXJXaWR0aCgpLCJweCIpLHdpZHRoOiIiLmNvbmNhdChlLmlubmVyV2lkdGgoKSwicHgiKX0pLnNob3coKTtmb3IodmFyIFM9cy5sZW5ndGgtMSxQPXMubGVuZ3RoLTE7UDw9eCYmUD49QyYmKG4oc1tTXSkuYWRkQ2xhc3MoImNoYW5naW5nX3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb24gY3VycmVudF9wb3NpdGlvbl8iLmNvbmNhdCh1KSksbihzW1NdKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIix1KSx1LS0pLFA8PVQmJlA+PU8mJihuKHNbU10pLmRhdGEoInByZXZfcG9zaXRpb24iLGspLG4oc1tTXSkuYWRkQ2xhc3MoImNoYW5naW5nX3Bvc2l0aW9uIHByZXZfcG9zaXRpb24gcHJldl9wb3NpdGlvbl8iLmNvbmNhdChrKSksbihzW1NdKS5oYXNDbGFzcygiY3VycmVudF9wb3NpdGlvbiIpPyhuKHNbU10pLmNsb25lKCEwKS5hcHBlbmRUbyhlKS5hZGRDbGFzcygiZGVsYXllZF9jb250YWluZXJfYXBwZW5kX2R1cCIpLmF0dHIoImlkIiwiIi5jb25jYXQobihzW1NdKS5hdHRyKCJpZCIpLCItZHVwIikpLG4oc1tTXSkuYWRkQ2xhc3MoImRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZCIpKTpuKHNbU10pLmFkZENsYXNzKCJjb250YWluZXJfYXBwZW5kIiksay0tKSwhKGs8PTApO1MtLSxQLS0pMD09UyYmKFM9cy5sZW5ndGgpO2c9by5maW5kKCIuY29udGFpbmVyX2FwcGVuZCwgLmRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZF9kdXAiKS5zb3J0KChmdW5jdGlvbih0LGUpe3ZhciBpPXBhcnNlSW50KG4odCkuZGF0YSgicHJldl9wb3NpdGlvbiIpKSxhPXBhcnNlSW50KG4oZSkuZGF0YSgicHJldl9wb3NpdGlvbiIpKTtyZXR1cm4gaTxhPy0xOmk+YT8xOjB9KSksbihnKS5zaG93KCkuYXBwZW5kVG8oeSksbD0wLHkuY2hpbGRyZW4oKS5lYWNoKChmdW5jdGlvbigpe24odGhpcykuY3NzKHtwb3NpdGlvbjoiYWJzb2x1dGUiLGxlZnQ6IiIuY29uY2F0KGwsInB4Iil9KSxsKz1uKHRoaXMpLm91dGVyV2lkdGgoITApfSkpLGUuYW5pbWF0ZSh7bGVmdDoiMTAwJSJ9LHtkdXJhdGlvbjppLnNsaWRlX2R1cmF0aW9uLHByb2dyZXNzOmZ1bmN0aW9uKHQsbil7aWYobj5kL18pe3ZhciBpPV8tZDtlLmZpbmQoIi5ldF9wYl9jYXJvdXNlbF9pdGVtOm50aC1jaGlsZCgiLmNvbmNhdChpLCIpIikpLmFkZENsYXNzKCJpdGVtLWZhZGUtb3V0IikseS5maW5kKCIuZXRfcGJfY2Fyb3VzZWxfaXRlbTpudGgtY2hpbGQoIi5jb25jYXQoaSwiKSIpKS5hZGRDbGFzcygiaXRlbS1mYWRlLWluIiksZCsrfX0sY29tcGxldGU6ZnVuY3Rpb24oKXtvLmZpbmQoIi5kZWxheWVkX2NvbnRhaW5lcl9hcHBlbmQiKS5yZXZlcnNlKCkuZWFjaCgoZnVuY3Rpb24oKXtsPW4oIiMiLmNvbmNhdChuKHRoaXMpLmF0dHIoImlkIiksIi1kdXAiKSkuY3NzKCJsZWZ0Iiksbih0aGlzKS5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSIsbGVmdDpsfSksbih0aGlzKS5wcmVwZW5kVG8oeSl9KSksZS5yZW1vdmVDbGFzcygiYWN0aXZlIiksZS5jaGlsZHJlbigpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKS5kYXRhKCJwb3NpdGlvbiIpO3U9bih0aGlzKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIiksbih0aGlzKS5yZW1vdmVDbGFzcygicG9zaXRpb25fIi5jb25jYXQodCwiICIpKyJjaGFuZ2luZ19wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb25fIi5jb25jYXQodSkpLG4odGhpcykuZGF0YSgicG9zaXRpb24iLCIiKSxuKHRoaXMpLmRhdGEoImN1cnJlbnRfcG9zaXRpb24iLCIiKSxuKHRoaXMpLmhpZGUoKSxuKHRoaXMpLmNzcyh7cG9zaXRpb246IiIsbGVmdDoiIn0pLG4odGhpcykuYXBwZW5kVG8obyl9KSksby5maW5kKCIuaXRlbS1mYWRlLW91dCIpLnJlbW92ZUNsYXNzKCJpdGVtLWZhZGUtb3V0IikseS5maW5kKCIuaXRlbS1mYWRlLWluIikucmVtb3ZlQ2xhc3MoIml0ZW0tZmFkZS1pbiIpLG4oImJvZHkiKS5yZW1vdmVDbGFzcygiZXQtcGItaXMtc2xpZGluZy1jYXJvdXNlbCIpLGUucmVtb3ZlKCl9fSk7dmFyIHo9LTEqZS53aWR0aCgpLXBhcnNlSW50KHIuZmlyc3QoKS5jc3MoIm1hcmdpblJpZ2h0Iikuc2xpY2UoMCwtMikpO3kuYWRkQ2xhc3MoImFjdGl2ZSIpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIix0b3A6IjBweCIsbGVmdDoiIi5jb25jYXQoeiwicHgiKX0pLHkuYW5pbWF0ZSh7bGVmdDoiMCUifSx7ZHVyYXRpb246aS5zbGlkZV9kdXJhdGlvbixjb21wbGV0ZTpmdW5jdGlvbigpe3kucmVtb3ZlQ2xhc3MoInByZXYiKS5hZGRDbGFzcygiYWN0aXZlIikuY3NzKHtwb3NpdGlvbjoiIix3aWR0aDoiIix0b3A6IiIsbGVmdDoiIn0pLHkuZmluZCgiLmRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZF9kdXAiKS5yZW1vdmUoKSx5LmZpbmQoIi5jaGFuZ2luZ19wb3NpdGlvbiIpLmVhY2goKGZ1bmN0aW9uKHQpe3ZhciBlPW4odGhpcykuZGF0YSgicG9zaXRpb24iKTt1PW4odGhpcykuZGF0YSgiY3VycmVudF9wb3NpdGlvbiIpLGs9bih0aGlzKS5kYXRhKCJwcmV2X3Bvc2l0aW9uIiksbih0aGlzKS5yZW1vdmVDbGFzcygiY29udGFpbmVyX2FwcGVuZCBkZWxheWVkX2NvbnRhaW5lcl9hcHBlbmQgcG9zaXRpb25fIi5jb25jYXQoZSwiICIpKyJjaGFuZ2luZ19wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb25fIi5jb25jYXQodSwiIHByZXZfcG9zaXRpb24gcHJldl9wb3NpdGlvbl8iKS5jb25jYXQoaykpLG4odGhpcykuZGF0YSgiY3VycmVudF9wb3NpdGlvbiIsIiIpLG4odGhpcykuZGF0YSgicHJldl9wb3NpdGlvbiIsIiIpLGU9dCsxLG4odGhpcykuZGF0YSgicG9zaXRpb24iLGUpLG4odGhpcykuYWRkQ2xhc3MoInBvc2l0aW9uXyIuY29uY2F0KGUpKX0pKSx5LmNoaWxkcmVuKCkuY3NzKHtwb3NpdGlvbjoiIixsZWZ0OiIifSksYS5ldF9hbmltYXRpb25fcnVubmluZz0hMX19KX19fSxuLmZuLmV0X3BiX3NpbXBsZV9jYXJvdXNlbD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe3JldHVybiBuLmRhdGEodGhpcywiZXRfcGJfc2ltcGxlX2Nhcm91c2VsIil8fG5ldyBuLmV0X3BiX3NpbXBsZV9jYXJvdXNlbCh0aGlzLHQpfSkpfSxuKChmdW5jdGlvbigpe24od2luZG93KS50cmlnZ2VyKCJldF9wYl9iZWZvcmVfaW5pdF9tb2R1bGVzIik7dmFyIGs9bigiLmV0X3BiX3NsaWRlciIpLGo9bigiLmV0X3BiX3RhYnMiKSxTPW4oIi5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnIiksUD1uKCIuZXRfcGJfbmV3c2xldHRlcl9idXR0b24iKSx6PW4oIi5ldF9wYl9uZXdzbGV0dGVyX2ZpZWxkIC5pbnB1dCIpLEk9bigiLmV0X3BiX2ZpbHRlcmFibGVfcG9ydGZvbGlvIiksQT1uKCIuZXRfcGJfZnVsbHdpZHRoX3BvcnRmb2xpbyIpLEU9bigiLmV0X3BiX2dhbGxlcnkiKSxCPW4oIi5ldF9wYl9jb3VudGRvd25fdGltZXIiKSxNPW4oIi5ldF9wb3N0X2dhbGxlcnkiKSxIPW4oIi5ldF9wYl9saWdodGJveF9pbWFnZSIpLEY9bigiLmV0X3BiX21hcF9jb250YWluZXIiKSxMPW4oIi5ldF9wYl9jaXJjbGVfY291bnRlciIpLEQ9bigiLmV0X3BiX251bWJlcl9jb3VudGVyIiksVz1uKCIuZXRfcGFyYWxsYXhfYmciKSxxPShuKCIuZXRfcGJfc2hvcCIpLG4oIi5zaW5nbGUuZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0LmV0X2Z1bGxfd2lkdGhfcGFnZSIpLG4oIltkYXRhLWJhY2tncm91bmQtbGF5b3V0XVtkYXRhLWJhY2tncm91bmQtbGF5b3V0LWhvdmVyXSIpKSxOPW51bGwhPT1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9BbmRyb2lkfHdlYk9TfGlQaG9uZXxpUGFkfGlQb2R8QmxhY2tCZXJyeXxJRU1vYmlsZXxPcGVyYSBNaW5pLyl8fCJzdGFuZGFsb25lImluIHdpbmRvdy5uYXZpZ2F0b3ImJiF3aW5kb3cubmF2aWdhdG9yLnN0YW5kYWxvbmUsJD1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9pUGFkLyksVj1udWxsIT09bmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvTVNJRSA5LjAvKSxSPW4oIi5ldF9wYl9yb3ciKSxRPXdpbmRvdy5ldF9wYl9jdXN0b20mJiF3aW5kb3cuZXRfcGJfY3VzdG9tLmlzX2J1aWxkZXJfcGx1Z2luX3VzZWQ/bigiYm9keSIpOlIsVT1RLndpZHRoKCksWj0obigiYm9keSIpLmhhc0NsYXNzKCJldF92ZXJ0aWNhbF9maXhlZCIpLG4oImJvZHkiKS5oYXNDbGFzcygicnRsIiksbigiYm9keSIpLmhhc0NsYXNzKCJldF9oaWRlX25hdiIpKSxZPShuKCJib2R5IikuaGFzQ2xhc3MoImV0X2hlYWRlcl9zdHlsZV9sZWZ0IiksbigiI3RvcC1oZWFkZXIiKSksRz0obigiI21haW4taGVhZGVyIiksbigiI3BhZ2UtY29udGFpbmVyIiksbigiLmV0X3RyYW5zcGFyZW50X25hdiIpLG4oImJvZHkuZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0IC5ldF9wYl9zZWN0aW9uOmZpcnN0LWNoaWxkIiksbigiI21haW4tY29udGVudCAuY29udGFpbmVyOmZpcnN0LWNoaWxkIikpLFg9KEcuZmluZCgiLmV0X3Bvc3RfbWV0YV93cmFwcGVyIikuZmlyc3QoKS5maW5kKCJoMSIpLEcuZmluZCgiLmVudHJ5LWNvbnRlbnQiKS5maXJzdCgpLG4oImJvZHkuc2luZ2xlLXBvc3QiKSxuKCIuZXRfaGVhZGVyX3N0eWxlX3NwbGl0IiksbigiI2V0LXRvcC1uYXZpZ2F0aW9uIiksbigiI2xvZ28iKSxuKCIuZXRfcGJfaW1hZ2Vfc3RpY2t5IikpLEo9bigiLmV0X3BiX2NvdW50ZXJfYW1vdW50IiksSz1uKCIuZXRfcGJfY2Fyb3VzZWwiKSx0dD13aW5kb3cuZXRfcGJfY3VzdG9tJiZ3aW5kb3cuZXRfcGJfY3VzdG9tLmlzX2RpdmlfdGhlbWVfdXNlZD9uKCJ1bC5uYXYiKTpuKCIuZXRfcGJfZnVsbHdpZHRoX21lbnUgdWwubmF2IiksZXQ9d2luZG93LmV0X3BiX2N1c3RvbSYmMWUzKndpbmRvdy5ldF9wYl9jdXN0b20uYWJfYm91bmNlX3JhdGUsbnQ9e30saXQ9IiIsYXQ9KDAsci5kZWZhdWx0KSh3aW5kb3csImV0Q29yZS5hcGkuc3BhbS5yZWNhcHRjaGEiKTtuLmVhY2goZXRfcGJfY3VzdG9tLmFiX3Rlc3RzLChmdW5jdGlvbih0LGUpe250W2UucG9zdF9pZF09e3JlYWRfcGFnZTohMSxyZWFkX2dvYWw6ITEsdmlld19nb2FsOiExLGNsaWNrX2dvYWw6ITEsY29uX2dvYWw6ITEsY29uX3Nob3J0OiExfX0pKTt2YXIgb3Q9bigiLmV0X3BiX2dyaWRfaXRlbSIpLnBhcmVudCgpLmdldCgpLHJ0PW4oIi5ldF9wYl9ndXR0ZXJfaG92ZXIiKTt3aW5kb3cuZXRfcGJfc2xpZGVyX2luaXQ9ZnVuY3Rpb24odCl7dmFyIGU9e2ZhZGVfc3BlZWQ6NzAwLHNsaWRlOnQuaGFzQ2xhc3MoImV0X3BiX2dhbGxlcnkiKT8iLmV0X3BiX2dhbGxlcnlfaXRlbSI6Ii5ldF9wYl9zbGlkZSJ9O2lmKHQuaGFzQ2xhc3MoImV0X3BiX3NsaWRlcl9ub19hcnJvd3MiKSYmKGUudXNlX2Fycm93cz0hMSksdC5oYXNDbGFzcygiZXRfcGJfc2xpZGVyX25vX3BhZ2luYXRpb24iKSYmKGUudXNlX2NvbnRyb2xzPSExKSx0Lmhhc0NsYXNzKCJldF9zbGlkZXJfYXV0byIpKXtlLnNsaWRlc2hvdz0hMDt2YXIgaT0vZXRfc2xpZGVyX3NwZWVkXyhcZCspL2cuZXhlYyh0LmF0dHIoImNsYXNzIikpO2Uuc2xpZGVzaG93X3NwZWVkPW51bGw9PT1pPzEwOmlbMV19dC5wYXJlbnQoKS5oYXNDbGFzcygiZXRfcGJfdmlkZW9fc2xpZGVyIikmJihlLmNvbnRyb2xzX2JlbG93PSEwLGUuYXBwZW5kX2NvbnRyb2xzX3RvPXQucGFyZW50KCksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtuKCIuZXRfcGJfcHJlbG9hZCIpLnJlbW92ZUNsYXNzKCJldF9wYl9wcmVsb2FkIil9KSw1MDApKSx0Lmhhc0NsYXNzKCJldF9wYl9zbGlkZXJfY2Fyb3VzZWwiKSYmKGUudXNlX2Nhcm91c2VsPSEwKSx0LmV0X3BiX3NpbXBsZV9zbGlkZXIoZSl9O3ZhciBzdD10dDtpZihuKCIuZXRfcGJfYWJfc2hvcF9jb252ZXJzaW9uIikubGVuZ3RoJiZ2b2lkIDAhPT1CdCgiZXRfcGJfYWJfc2hvcF9sb2ciKSYmIiIhPT1CdCgiZXRfcGJfYWJfc2hvcF9sb2ciKSl7dmFyIGN0PUJ0KCJldF9wYl9hYl9zaG9wX2xvZyIpLnNwbGl0KCJfIik7UHQoImNvbl9nb2FsIixjdFswXSxjdFsxXSxjdFsyXSksTXQoMCwiZXRfcGJfYWJfc2hvcF9sb2c9dHJ1ZSIpfWZ1bmN0aW9uIGx0KHQpe3ZhciBlPSIiO2lmKHQubGVuZ3RoKWlmKHQuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLmF0dHIoImNsYXNzIikuc3BsaXQoImV0X3BiX2NvbHVtbl8iKVsxXSxpPSh2b2lkIDAhPT10P3Quc3BsaXQoIiAiLDEpWzBdOiI0XzQiKS5yZXBsYWNlKCJfIiwiLSIpLnRyaW0oKTtlKz0iXyIuY29uY2F0KGkpfSkpLC0xIT09ZS5pbmRleE9mKCIxLTQiKXx8LTEhPT1lLmluZGV4T2YoIjEtNV8xLTUiKXx8LTEhPT1lLmluZGV4T2YoIjEtNl8xLTYiKSlzd2l0Y2goZSl7Y2FzZSJfMS00XzEtNF8xLTRfMS00IjplPSJldF9wYl9yb3dfNGNvbCI7YnJlYWs7Y2FzZSJfMS01XzEtNV8xLTVfMS01XzEtNSI6ZT0iZXRfcGJfcm93XzVjb2wiO2JyZWFrO2Nhc2UiXzEtNl8xLTZfMS02XzEtNl8xLTZfMS02IjplPSJldF9wYl9yb3dfNmNvbCI7YnJlYWs7ZGVmYXVsdDplPSJldF9wYl9yb3ciLmNvbmNhdChlKX1lbHNlIGU9IiI7cmV0dXJuIGV9aWYobigiLmV0X3BiX2FiX3NwbGl0X3RyYWNrIikubGVuZ3RoJiZuKCIuZXRfcGJfYWJfc3BsaXRfdHJhY2siKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcykuZGF0YSgidGVzdF9pZCIpLGU9ImV0X3BiX2FiX3Nob3J0Y29kZV90cmFja18iLmNvbmNhdCh0KTtpZih2b2lkIDAhPT1CdChlKSYmIiIhPT1CdChlKSl7dmFyIGk9QnQoZSkuc3BsaXQoIl8iKTtQdCgiY29uX3Nob3J0IixpWzBdLGlbMV0saVsyXSksTXQoMCwiIi5jb25jYXQoZSwiPXRydWUiKSl9fSkpLHJ0Lmxlbmd0aD4wJiZydC5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyksZT10LmRhdGEoIm9yaWdpbmFsX2d1dHRlciIpLGk9dC5kYXRhKCJob3Zlcl9ndXR0ZXIiKTt0Lm9uKCJtb3VzZWVudGVyIiwoZnVuY3Rpb24oKXt0LnJlbW92ZUNsYXNzKCJldF9wYl9ndXR0ZXJzIi5jb25jYXQoZSkpLHQuYWRkQ2xhc3MoImV0X3BiX2d1dHRlcnMiLmNvbmNhdChpKSl9KSkub24oIm1vdXNlbGVhdmUiLChmdW5jdGlvbigpe3QucmVtb3ZlQ2xhc3MoImV0X3BiX2d1dHRlcnMiLmNvbmNhdChpKSksdC5hZGRDbGFzcygiZXRfcGJfZ3V0dGVycyIuY29uY2F0KGUpKX0pKX0pKSx3aW5kb3cuZXRfcGJfY3VzdG9tJiZ3aW5kb3cuZXRfcGJfY3VzdG9tLmlzX2FiX3Rlc3RpbmdfYWN0aXZlJiZuLmVhY2goZXRfcGJfY3VzdG9tLmFiX3Rlc3RzLChmdW5jdGlvbih0LGUpeyFmdW5jdGlvbih0KXtpZighZC5pc0J1aWxkZXIpe3ZhciBlPUl0KHQucG9zdF9pZCksaT16dCh0LnBvc3RfaWQpO2lmKG4uZWFjaChudFt0LnBvc3RfaWRdLChmdW5jdGlvbihlKXt2YXIgbj0iY2xpY2tfZ29hbCI9PT1lfHwiY29uX3Nob3J0Ij09PWU/IiI6aTtudFt0LnBvc3RfaWRdW2VdPUV0KCJldF9wYl9hYl8iLmNvbmNhdChlLCJfIikuY29uY2F0KHQucG9zdF9pZCkuY29uY2F0KHQudGVzdF9pZCkuY29uY2F0KG4pLCJ0cnVlIil9KSksbnRbdC5wb3N0X2lkXS5yZWFkX3BhZ2V8fHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7UHQoInJlYWRfcGFnZSIsdC5wb3N0X2lkLHZvaWQgMCx0LnRlc3RfaWQpfSksZXQpLCJvbiIhPT1ldF9wYl9jdXN0b20uaXNfc2hvcnRjb2RlX3RyYWNraW5nfHxudFt0LnBvc3RfaWRdLmNvbl9zaG9ydHx8TXQoMzY1LCJldF9wYl9hYl9zaG9ydGNvZGVfdHJhY2tfIi5jb25jYXQodC5wb3N0X2lkLCI9IikuY29uY2F0KHQucG9zdF9pZCwiXyIpLmNvbmNhdChpLCJfIikuY29uY2F0KHQudGVzdF9pZCkpLGUubGVuZ3RoKWlmKGUuaGFzQ2xhc3MoImV0X3BiX21vZHVsZSIpJiYoZS5oYXNDbGFzcygiZXRfcGJfYnV0dG9uIil8fGUuZmluZCgiLmV0X3BiX2J1dHRvbiIpLmxlbmd0aCkpe2lmKCFlLmhhc0NsYXNzKCJldF9wYl9jb250YWN0X2Zvcm1fY29udGFpbmVyIikmJiFlLmhhc0NsYXNzKCJldF9wYl9uZXdzbGV0dGVyIikpe3ZhciBhPWUuaGFzQ2xhc3MoImV0X3BiX2J1dHRvbiIpP2U6ZS5maW5kKCIuZXRfcGJfYnV0dG9uIik7aWYoZS5oYXNDbGFzcygiZXRfcGJfY29tbWVudHNfbW9kdWxlIikpe3ZhciBvPS0xIT09d2luZG93LmxvY2F0aW9uLmhyZWYuaW5kZXhPZigiI2NvbW1lbnQtIikscj1FdCgiZXRfcGJfYWJfY29tbWVudF9sb2dfIi5jb25jYXQodC5wb3N0X2lkKS5jb25jYXQodC50ZXN0X2lkKSwidHJ1ZSIpO28mJnImJihQdCgiY29uX2dvYWwiLHQucG9zdF9pZCx2b2lkIDAsdC50ZXN0X2lkKSxNdCgwLCJldF9wYl9hYl9jb21tZW50X2xvZ18iLmNvbmNhdCh0LnBvc3RfaWQpLmNvbmNhdCh0LnRlc3RfaWQsIj10cnVlIikpKX1hLm9uKCJjbGljayIsKGZ1bmN0aW9uKCl7IWUuaGFzQ2xhc3MoImV0X3BiX2NvbW1lbnRzX21vZHVsZSIpfHxudFt0LnBvc3RfaWRdLmNvbl9nb2FsP1N0KGUsImNsaWNrX2dvYWwiKTpNdCgzNjUsImV0X3BiX2FiX2NvbW1lbnRfbG9nXyIuY29uY2F0KHQucG9zdF9pZCkuY29uY2F0KHQudGVzdF9pZCwiPXRydWUiKSl9KSl9fWVsc2UgZS5vbigiY2xpY2siLChmdW5jdGlvbigpe2UuaGFzQ2xhc3MoImV0X3BiX3Nob3AiKSYmIW50W3QucG9zdF9pZF0uY29uX2dvYWwmJk10KDM2NSwiZXRfcGJfYWJfc2hvcF9sb2c9Ii5jb25jYXQodC5wb3N0X2lkLCJfIikuY29uY2F0KGksIl8iKS5jb25jYXQodC50ZXN0X2lkKSksU3QoZSwiY2xpY2tfZ29hbCIpfSkpfX0oZSl9KSksUi5sZW5ndGgmJlIuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLGU9IiI7IiIhPT0oZT1sdCh0LmZpbmQoIj4uZXRfcGJfY29sdW1uIikpKSYmdC5hZGRDbGFzcyhlKSx0LmZpbmQoIi5ldF9wYl9yb3dfaW5uZXIiKS5sZW5ndGgmJnQuZmluZCgiLmV0X3BiX3Jvd19pbm5lciIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKTsiIiE9PShlPWx0KHQuZmluZCgiLmV0X3BiX2NvbHVtbiIpKSkmJnQuYWRkQ2xhc3MoZSl9KSk7dmFyIGk9dC5wYXJlbnRzKCIuZXRfcGJfc2VjdGlvbi5zZWN0aW9uX2hhc19kaXZpZGVyIikubGVuZ3RoPzY6MyxhPWlzTmFOKHQuY3NzKCJ6LWluZGV4IikpfHx0LmNzcygiei1pbmRleCIpPGk7dC5maW5kKCIuZXRfcGJfbW9kdWxlLmV0X3BiX21lbnUiKS5sZW5ndGgmJmEmJnQuY3NzKCJ6LWluZGV4IixpKX0pKSx3aW5kb3cuZXRfcGJfaW5pdF9uYXZfbWVudShzdCksWC5lYWNoKChmdW5jdGlvbigpe3dpbmRvdy5ldF9wYl9hcHBseV9zdGlja3lfaW1hZ2VfZWZmZWN0KG4odGhpcykpfSkpLE4mJihuKCIuZXRfcGJfc2VjdGlvbl92aWRlb19iZyIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKTt0LmNsb3Nlc3QoIi5ldF9wYl9wcmVsb2FkIikucmVtb3ZlQ2xhc3MoImV0X3BiX3ByZWxvYWQiKSx0Lmhhc0NsYXNzKCJvcGVuZWQiKSYmdC5yZW1vdmUoKX0pKSxuKCJib2R5IikuYWRkQ2xhc3MoImV0X21vYmlsZV9kZXZpY2UiKSwkfHxuKCJib2R5IikuYWRkQ2xhc3MoImV0X21vYmlsZV9kZXZpY2Vfbm90X2lwYWQiKSksViYmbigiYm9keSIpLmFkZENsYXNzKCJldF9pZTkiKSwoUy5sZW5ndGh8fGQuaXNCdWlsZGVyKSYmKHdpbmRvdy5ldF9wYl92aWRlb19zZWN0aW9uX2luaXQ9ZnVuY3Rpb24odCl7dC5maW5kKCJ2aWRlbyIpLm1lZGlhZWxlbWVudHBsYXllcih7cGF1c2VPdGhlclBsYXllcnM6ITEsc3VjY2VzczpmdW5jdGlvbih0LGUpe3QuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkZGF0YSIsKGZ1bmN0aW9uKCl7ZXRfcGJfcmVzaXplX3NlY3Rpb25fdmlkZW9fYmcobihlKSksZXRfcGJfY2VudGVyX3ZpZGVvKG4oZSkuY2xvc2VzdCgiLm1lanMtdmlkZW8iKSl9KSwhMSksdC5hZGRFdmVudExpc3RlbmVyKCJjYW5wbGF5IiwoZnVuY3Rpb24oKXtuKGUpLmNsb3Nlc3QoIi5ldF9wYl9wcmVsb2FkIikucmVtb3ZlQ2xhc3MoImV0X3BiX3ByZWxvYWQiKX0pLCExKX19KX0sUy5sZW5ndGg+MCYmZXRfcGJfdmlkZW9fc2VjdGlvbl9pbml0KFMpKSxUKCksIWkmJk0ubGVuZ3RoPjApe3ZhciBfdD1uLm1hZ25pZmljUG9wdXAuaW5zdGFuY2U7bigiYm9keSIpLm9uKCJzd2lwZXJpZ2h0IiwiLm1mcC1jb250YWluZXIiLChmdW5jdGlvbigpe190LnByZXYoKX0pKSxuKCJib2R5Iikub24oInN3aXBlbGVmdCIsIi5tZnAtY29udGFpbmVyIiwoZnVuY3Rpb24oKXtfdC5uZXh0KCl9KSksTS5lYWNoKChmdW5jdGlvbigpe24odGhpcykubWFnbmlmaWNQb3B1cCh7ZGVsZWdhdGU6Ii5ldF9wYl9nYWxsZXJ5X2ltYWdlIGEiLHR5cGU6ImltYWdlIixyZW1vdmFsRGVsYXk6NTAwLGdhbGxlcnk6e2VuYWJsZWQ6ITAsbmF2aWdhdGVCeUltZ0NsaWNrOiEwfSxtYWluQ2xhc3M6Im1mcC1mYWRlIix6b29tOntlbmFibGVkOndpbmRvdy5ldF9wYl9jdXN0b20mJiF3aW5kb3cuZXRfcGJfY3VzdG9tLmlzX2J1aWxkZXJfcGx1Z2luX3VzZWQsZHVyYXRpb246NTAwLG9wZW5lcjpmdW5jdGlvbih0KXtyZXR1cm4gdC5maW5kKCJpbWciKX19LGF1dG9Gb2N1c0xhc3Q6ITF9KX0pKSxNLmZpbmQoImEiKS5vZmYoImNsaWNrIil9ZnVuY3Rpb24gZHQodCl7dmFyIGU9dC5wYXJlbnRzKCIuZXRfcGJfZnVsbHdpZHRoX3BvcnRmb2xpbyIpLGk9ZS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW1zIiksYT0oaS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKSxpLmZpbmQoIi5ldF9wYl9jYXJvdXNlbF9ncm91cC5hY3RpdmUiKSksbz03MDAscj1pLmRhdGEoIml0ZW1zIikscz1pLmRhdGEoInBvcnRmb2xpby1jb2x1bW5zIiksYz1hLmlubmVyV2lkdGgoKS9zLGw9IiIuY29uY2F0KDEwMC9zLCIlIik7aWYodm9pZCAwIT09ciYmIWUuZGF0YSgiY2Fyb3VzZWxpbmciKSlpZihlLmRhdGEoImNhcm91c2VsaW5nIiwhMCksYS5jaGlsZHJlbigpLmVhY2goKGZ1bmN0aW9uKCl7bih0aGlzKS5jc3Moe3dpZHRoOiIiLmNvbmNhdChjKzEsInB4IiksIm1heC13aWR0aCI6IiIuY29uY2F0KGMsInB4IikscG9zaXRpb246ImFic29sdXRlIixsZWZ0OiIiLmNvbmNhdChjKihuKHRoaXMpLmRhdGEoInBvc2l0aW9uIiktMSksInB4Iil9KX0pKSx0Lmhhc0NsYXNzKCJldC1wYi1hcnJvdy1uZXh0Iikpe3ZhciBfLGQ9MSxwPTEsdT15PSh3PXIuaW5kZXhPZihhLmNoaWxkcmVuKCkuZmlyc3QoKVswXSkpK3MsZj11K3MsaD1hLmlubmVyV2lkdGgoKTsoXz1uKCc8ZGl2IGNsYXNzPSJldF9wYl9jYXJvdXNlbF9ncm91cCBuZXh0IiBzdHlsZT0iZGlzcGxheTogbm9uZTtsZWZ0OiAxMDAlO3Bvc2l0aW9uOiBhYnNvbHV0ZTt0b3A6IDA7Ij4nKS5pbnNlcnRBZnRlcihhKSkuY3NzKHt3aWR0aDoiIi5jb25jYXQoaCwicHgiKSwibWF4LXdpZHRoIjoiIi5jb25jYXQoaCwicHgiKX0pLnNob3coKTtmb3IodmFyIGI9MCx2PTA7dj49dyYmdjx5JiYobihyW2JdKS5hZGRDbGFzcygiY2hhbmdpbmdfcG9zaXRpb24gY3VycmVudF9wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uXyIuY29uY2F0KGQpKSxuKHJbYl0pLmRhdGEoImN1cnJlbnRfcG9zaXRpb24iLGQpLGQrKyksdj49dSYmdjxmJiYobihyW2JdKS5kYXRhKCJuZXh0X3Bvc2l0aW9uIixwKSxuKHJbYl0pLmFkZENsYXNzKCJjaGFuZ2luZ19wb3NpdGlvbiBuZXh0X3Bvc2l0aW9uIG5leHRfcG9zaXRpb25fIi5jb25jYXQocCkpLG4ocltiXSkuaGFzQ2xhc3MoImN1cnJlbnRfcG9zaXRpb24iKT8obihyW2JdKS5jbG9uZSghMCkuYXBwZW5kVG8oYSkuaGlkZSgpLmFkZENsYXNzKCJkZWxheWVkX2NvbnRhaW5lcl9hcHBlbmRfZHVwIikuYXR0cigiaWQiLCIiLmNvbmNhdChuKHJbYl0pLmF0dHIoImlkIiksIi1kdXAiKSksbihyW2JdKS5hZGRDbGFzcygiZGVsYXllZF9jb250YWluZXJfYXBwZW5kIikpOm4ocltiXSkuYWRkQ2xhc3MoImNvbnRhaW5lcl9hcHBlbmQiKSxwKyspLCEocD5zKTtiKyssdisrKWI+PXIubGVuZ3RoLTEmJihiPS0xKTt2YXIgbT1pLmZpbmQoIi5jb250YWluZXJfYXBwZW5kLCAuZGVsYXllZF9jb250YWluZXJfYXBwZW5kX2R1cCIpLnNvcnQoKGZ1bmN0aW9uKHQsZSl7dmFyIGk9cGFyc2VJbnQobih0KS5kYXRhKCJuZXh0X3Bvc2l0aW9uIikpLGE9cGFyc2VJbnQobihlKS5kYXRhKCJuZXh0X3Bvc2l0aW9uIikpO3JldHVybiBpPGE/LTE6aT5hPzE6MH0pKTtuKG0pLnNob3coKS5hcHBlbmRUbyhfKSxfLmNoaWxkcmVuKCkuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmNzcyh7d2lkdGg6IiIuY29uY2F0KGMsInB4IiksIm1heC13aWR0aCI6IiIuY29uY2F0KGMsInB4IikscG9zaXRpb246ImFic29sdXRlIixsZWZ0OiIiLmNvbmNhdChjKihuKHRoaXMpLmRhdGEoIm5leHRfcG9zaXRpb24iKS0xKSwicHgiKX0pfSkpLGEuYW5pbWF0ZSh7bGVmdDoiLTEwMCUifSx7ZHVyYXRpb246byxjb21wbGV0ZTpmdW5jdGlvbigpe2kuZmluZCgiLmRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZCIpLmVhY2goKGZ1bmN0aW9uKCl7bih0aGlzKS5jc3Moe3dpZHRoOiIiLmNvbmNhdChjLCJweCIpLCJtYXgtd2lkdGgiOiIiLmNvbmNhdChjLCJweCIpLHBvc2l0aW9uOiJhYnNvbHV0ZSIsbGVmdDoiIi5jb25jYXQoYyoobih0aGlzKS5kYXRhKCJuZXh0X3Bvc2l0aW9uIiktMSksInB4Iil9KSxuKHRoaXMpLmFwcGVuZFRvKF8pfSkpLGEucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLGEuY2hpbGRyZW4oKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcykuZGF0YSgicG9zaXRpb24iKTtkPW4odGhpcykuZGF0YSgiY3VycmVudF9wb3NpdGlvbiIpLG4odGhpcykucmVtb3ZlQ2xhc3MoInBvc2l0aW9uXyIuY29uY2F0KHQsIiAiKSsiY2hhbmdpbmdfcG9zaXRpb24gY3VycmVudF9wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uXyIuY29uY2F0KGQpKSxuKHRoaXMpLmRhdGEoInBvc2l0aW9uIiwiIiksbih0aGlzKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIiwiIiksbih0aGlzKS5oaWRlKCksbih0aGlzKS5jc3Moe3Bvc2l0aW9uOiIiLHdpZHRoOiIiLCJtYXgtd2lkdGgiOiIiLGxlZnQ6IiJ9KSxuKHRoaXMpLmFwcGVuZFRvKGkpfSkpLGEucmVtb3ZlKCksdXQoZSl9fSksXy5hZGRDbGFzcygiYWN0aXZlIikuY3NzKHtwb3NpdGlvbjoiYWJzb2x1dGUiLHRvcDoiMHB4IixsZWZ0OiIxMDAlIn0pLF8uYW5pbWF0ZSh7bGVmdDoiMCUifSx7ZHVyYXRpb246byxjb21wbGV0ZTpmdW5jdGlvbigpe3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7Xy5yZW1vdmVDbGFzcygibmV4dCIpLmFkZENsYXNzKCJhY3RpdmUiKS5jc3Moe3Bvc2l0aW9uOiIiLHdpZHRoOiIiLCJtYXgtd2lkdGgiOiIiLHRvcDoiIixsZWZ0OiIifSksXy5maW5kKCIuZGVsYXllZF9jb250YWluZXJfYXBwZW5kX2R1cCIpLnJlbW92ZSgpLF8uZmluZCgiLmNoYW5naW5nX3Bvc2l0aW9uIikuZWFjaCgoZnVuY3Rpb24odCl7dmFyIGU9bih0aGlzKS5kYXRhKCJwb3NpdGlvbiIpO2Q9bih0aGlzKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIikscD1uKHRoaXMpLmRhdGEoIm5leHRfcG9zaXRpb24iKSxuKHRoaXMpLnJlbW92ZUNsYXNzKCJjb250YWluZXJfYXBwZW5kIGRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZCBwb3NpdGlvbl8iLmNvbmNhdChlLCIgIikrImNoYW5naW5nX3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb24gY3VycmVudF9wb3NpdGlvbl8iLmNvbmNhdChkLCIgbmV4dF9wb3NpdGlvbiBuZXh0X3Bvc2l0aW9uXyIpLmNvbmNhdChwKSksbih0aGlzKS5kYXRhKCJjdXJyZW50X3Bvc2l0aW9uIiwiIiksbih0aGlzKS5kYXRhKCJuZXh0X3Bvc2l0aW9uIiwiIiksbih0aGlzKS5kYXRhKCJwb3NpdGlvbiIsdCsxKX0pKSxpLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbSIpLnJlbW92ZUNsYXNzKCJmaXJzdF9pbl9yb3cgbGFzdF9pbl9yb3ciKSxldF9wYl9zZXRfcmVzcG9uc2l2ZV9ncmlkKGksIi5ldF9wYl9wb3J0Zm9saW9faXRlbTp2aXNpYmxlIiksXy5jaGlsZHJlbigpLmNzcyh7cG9zaXRpb246IiIsd2lkdGg6bCwibWF4LXdpZHRoIjpsLGxlZnQ6IiJ9KSxlLmRhdGEoImNhcm91c2VsaW5nIiwhMSl9KSwxMDApfX0pfWVsc2V7ZD1zO3ZhciBnLHcseSx4PXMsQz1zLTEsaz0oeT0odz1yLmluZGV4T2YoYS5jaGlsZHJlbigpLmxhc3QoKVswXSkpLUMpLTEsaj1rLUM7aD1hLmlubmVyV2lkdGgoKSwoZz1uKCc8ZGl2IGNsYXNzPSJldF9wYl9jYXJvdXNlbF9ncm91cCBwcmV2IiBzdHlsZT0iZGlzcGxheTogbm9uZTtsZWZ0OiAxMDAlO3Bvc2l0aW9uOiBhYnNvbHV0ZTt0b3A6IDA7Ij4nKS5pbnNlcnRCZWZvcmUoYSkpLmNzcyh7bGVmdDoiLSIuY29uY2F0KGgsInB4Iiksd2lkdGg6IiIuY29uY2F0KGgsInB4IiksIm1heC13aWR0aCI6IiIuY29uY2F0KGgsInB4Iil9KS5zaG93KCk7Zm9yKHZhciBUPXIubGVuZ3RoLTEsTz1yLmxlbmd0aC0xO088PXcmJk8+PXkmJihuKHJbVF0pLmFkZENsYXNzKCJjaGFuZ2luZ19wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb25fIi5jb25jYXQoZCkpLG4ocltUXSkuZGF0YSgiY3VycmVudF9wb3NpdGlvbiIsZCksZC0tKSxPPD1rJiZPPj1qJiYobihyW1RdKS5kYXRhKCJwcmV2X3Bvc2l0aW9uIix4KSxuKHJbVF0pLmFkZENsYXNzKCJjaGFuZ2luZ19wb3NpdGlvbiBwcmV2X3Bvc2l0aW9uIHByZXZfcG9zaXRpb25fIi5jb25jYXQoeCkpLG4ocltUXSkuaGFzQ2xhc3MoImN1cnJlbnRfcG9zaXRpb24iKT8obihyW1RdKS5jbG9uZSghMCkuYXBwZW5kVG8oYSkuYWRkQ2xhc3MoImRlbGF5ZWRfY29udGFpbmVyX2FwcGVuZF9kdXAiKS5hdHRyKCJpZCIsIiIuY29uY2F0KG4ocltUXSkuYXR0cigiaWQiKSwiLWR1cCIpKSxuKHJbVF0pLmFkZENsYXNzKCJkZWxheWVkX2NvbnRhaW5lcl9hcHBlbmQiKSk6bihyW1RdKS5hZGRDbGFzcygiY29udGFpbmVyX2FwcGVuZCIpLHgtLSksISh4PD0wKTtULS0sTy0tKTA9PVQmJihUPXIubGVuZ3RoKTt2YXIgUz1pLmZpbmQoIi5jb250YWluZXJfYXBwZW5kLCAuZGVsYXllZF9jb250YWluZXJfYXBwZW5kX2R1cCIpLnNvcnQoKGZ1bmN0aW9uKHQsZSl7dmFyIGk9cGFyc2VJbnQobih0KS5kYXRhKCJwcmV2X3Bvc2l0aW9uIikpLGE9cGFyc2VJbnQobihlKS5kYXRhKCJwcmV2X3Bvc2l0aW9uIikpO3JldHVybiBpPGE/LTE6aT5hPzE6MH0pKTtuKFMpLnNob3coKS5hcHBlbmRUbyhnKSxnLmNoaWxkcmVuKCkuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmNzcyh7d2lkdGg6IiIuY29uY2F0KGMsInB4IiksIm1heC13aWR0aCI6IiIuY29uY2F0KGMsInB4IikscG9zaXRpb246ImFic29sdXRlIixsZWZ0OiIiLmNvbmNhdChjKihuKHRoaXMpLmRhdGEoInByZXZfcG9zaXRpb24iKS0xKSwicHgiKX0pfSkpLGEuYW5pbWF0ZSh7bGVmdDoiMTAwJSJ9LHtkdXJhdGlvbjpvLGNvbXBsZXRlOmZ1bmN0aW9uKCl7aS5maW5kKCIuZGVsYXllZF9jb250YWluZXJfYXBwZW5kIikucmV2ZXJzZSgpLmVhY2goKGZ1bmN0aW9uKCl7bih0aGlzKS5jc3Moe3dpZHRoOiIiLmNvbmNhdChjLCJweCIpLCJtYXgtd2lkdGgiOiIiLmNvbmNhdChjLCJweCIpLHBvc2l0aW9uOiJhYnNvbHV0ZSIsbGVmdDoiIi5jb25jYXQoYyoobih0aGlzKS5kYXRhKCJwcmV2X3Bvc2l0aW9uIiktMSksInB4Iil9KSxuKHRoaXMpLnByZXBlbmRUbyhnKX0pKSxhLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSxhLmNoaWxkcmVuKCkuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLmRhdGEoInBvc2l0aW9uIik7ZD1uKHRoaXMpLmRhdGEoImN1cnJlbnRfcG9zaXRpb24iKSxuKHRoaXMpLnJlbW92ZUNsYXNzKCJwb3NpdGlvbl8iLmNvbmNhdCh0LCIgIikrImNoYW5naW5nX3Bvc2l0aW9uIGN1cnJlbnRfcG9zaXRpb24gY3VycmVudF9wb3NpdGlvbl8iLmNvbmNhdChkKSksbih0aGlzKS5kYXRhKCJwb3NpdGlvbiIsIiIpLG4odGhpcykuZGF0YSgiY3VycmVudF9wb3NpdGlvbiIsIiIpLG4odGhpcykuaGlkZSgpLG4odGhpcykuY3NzKHtwb3NpdGlvbjoiIix3aWR0aDoiIiwibWF4LXdpZHRoIjoiIixsZWZ0OiIifSksbih0aGlzKS5hcHBlbmRUbyhpKX0pKSxhLnJlbW92ZSgpfX0pLGcuYWRkQ2xhc3MoImFjdGl2ZSIpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIix0b3A6IjBweCIsbGVmdDoiLTEwMCUifSksZy5hbmltYXRlKHtsZWZ0OiIwJSJ9LHtkdXJhdGlvbjpvLGNvbXBsZXRlOmZ1bmN0aW9uKCl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXtnLnJlbW92ZUNsYXNzKCJwcmV2IikuYWRkQ2xhc3MoImFjdGl2ZSIpLmNzcyh7cG9zaXRpb246IiIsd2lkdGg6IiIsIm1heC13aWR0aCI6IiIsdG9wOiIiLGxlZnQ6IiJ9KSxnLmZpbmQoIi5kZWxheWVkX2NvbnRhaW5lcl9hcHBlbmRfZHVwIikucmVtb3ZlKCksZy5maW5kKCIuY2hhbmdpbmdfcG9zaXRpb24iKS5lYWNoKChmdW5jdGlvbih0KXt2YXIgZT1uKHRoaXMpLmRhdGEoInBvc2l0aW9uIik7ZD1uKHRoaXMpLmRhdGEoImN1cnJlbnRfcG9zaXRpb24iKSx4PW4odGhpcykuZGF0YSgicHJldl9wb3NpdGlvbiIpLG4odGhpcykucmVtb3ZlQ2xhc3MoImNvbnRhaW5lcl9hcHBlbmQgZGVsYXllZF9jb250YWluZXJfYXBwZW5kIHBvc2l0aW9uXyIuY29uY2F0KGUsIiAiKSsiY2hhbmdpbmdfcG9zaXRpb24gY3VycmVudF9wb3NpdGlvbiBjdXJyZW50X3Bvc2l0aW9uXyIuY29uY2F0KGQsIiBwcmV2X3Bvc2l0aW9uIHByZXZfcG9zaXRpb25fIikuY29uY2F0KHgpKSxuKHRoaXMpLmRhdGEoImN1cnJlbnRfcG9zaXRpb24iLCIiKSxuKHRoaXMpLmRhdGEoInByZXZfcG9zaXRpb24iLCIiKSxlPXQrMSxuKHRoaXMpLmRhdGEoInBvc2l0aW9uIixlKSxuKHRoaXMpLmFkZENsYXNzKCJwb3NpdGlvbl8iLmNvbmNhdChlKSl9KSksaS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKS5yZW1vdmVDbGFzcygiZmlyc3RfaW5fcm93IGxhc3RfaW5fcm93IiksZXRfcGJfc2V0X3Jlc3BvbnNpdmVfZ3JpZChpLCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW06dmlzaWJsZSIpLGcuY2hpbGRyZW4oKS5jc3Moe3Bvc2l0aW9uOiIiLHdpZHRoOmwsIm1heC13aWR0aCI6bCxsZWZ0OiIifSksZS5kYXRhKCJjYXJvdXNlbGluZyIsITEpfSksMTAwKX19KX19ZnVuY3Rpb24gcHQodCxlKXt2YXIgaSxhPXQuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19pdGVtcyIpLG89YS53aWR0aCgpLHI9YS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKTtpZihyLmxlbmd0aCx2b2lkIDAhPT1yKXt2YXIgcz1vLyhpPW8+PTE2MDA/NTpvPj0xMDI0PzQ6bz49NzY4PzM6bz49NDgwPzI6MSkqLjc1O2lmKGUmJmEuY3NzKHtoZWlnaHQ6IiIuY29uY2F0KHMsInB4Iil9KSxyLmNzcyh7aGVpZ2h0OiIiLmNvbmNhdChzLCJweCIpfSksaSE9PWEuZGF0YSgicG9ydGZvbGlvLWNvbHVtbnMiKSYmIXQuZGF0YSgiY29sdW1uc19zZXR0aW5nX3VwIikpe3QuZGF0YSgiY29sdW1uc19zZXR0aW5nX3VwIiwhMCk7dmFyIGM9IiIuY29uY2F0KDEwMC9pLCIlIik7aWYoci5jc3Moe3dpZHRoOmMsIm1heC13aWR0aCI6Y30pLGEucmVtb3ZlQ2xhc3MoImNvbHVtbnMtIi5jb25jYXQoYS5kYXRhKCJwb3J0Zm9saW8tY29sdW1ucyIpKSksYS5hZGRDbGFzcygiY29sdW1ucy0iLmNvbmNhdChpKSksYS5kYXRhKCJwb3J0Zm9saW8tY29sdW1ucyIsaSksIWUpcmV0dXJuIHQuZGF0YSgiY29sdW1uc19zZXR0aW5nX3VwIiwhMSk7YS5maW5kKCIuZXRfcGJfY2Fyb3VzZWxfZ3JvdXAiKS5sZW5ndGgmJihyLmFwcGVuZFRvKGEpLGEuZmluZCgiLmV0X3BiX2Nhcm91c2VsX2dyb3VwIikucmVtb3ZlKCkpO3ZhciBsPWEuZGF0YSgiaXRlbXMiKSxfPW4oJzxkaXYgY2xhc3M9ImV0X3BiX2Nhcm91c2VsX2dyb3VwIGFjdGl2ZSI+JykuYXBwZW5kVG8oYSk7aWYodm9pZCAwIT09bCl7ci5kYXRhKCJwb3NpdGlvbiIsIiIpLGwubGVuZ3RoPD1pP2EuZmluZCgiLmV0LXBiLXNsaWRlci1hcnJvd3MiKS5oaWRlKCk6YS5maW5kKCIuZXQtcGItc2xpZGVyLWFycm93cyIpLnNob3coKTtmb3IodmFyIGQ9MSxwPTA7cDxsLmxlbmd0aDtwKyssZCsrKXA8aT8obihsW3BdKS5zaG93KCksbihsW3BdKS5hcHBlbmRUbyhfKSxuKGxbcF0pLmRhdGEoInBvc2l0aW9uIixkKSxuKGxbcF0pLmFkZENsYXNzKCJwb3NpdGlvbl8iLmNvbmNhdChkKSkpOihkPW4obFtwXSkuZGF0YSgicG9zaXRpb24iKSxuKGxbcF0pLnJlbW92ZUNsYXNzKCJwb3NpdGlvbl8iLmNvbmNhdChkKSksbihsW3BdKS5kYXRhKCJwb3NpdGlvbiIsIiIpLG4obFtwXSkuaGlkZSgpKTt0LmRhdGEoImNvbHVtbnNfc2V0dGluZ191cCIsITEpfX19fWZ1bmN0aW9uIHV0KHQpe2lmKCJvbiI9PT10LmRhdGEoImF1dG8tcm90YXRlIikmJnQuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19pdGVtIikubGVuZ3RoPnQuZmluZCgiLmV0X3BiX2Nhcm91c2VsX2dyb3VwIC5ldF9wYl9wb3J0Zm9saW9faXRlbSIpLmxlbmd0aCYmIXQuaGFzQ2xhc3MoImV0X2Nhcm91c2VsX2hvdmVyZWQiKSl7dmFyIGU9c2V0VGltZW91dCgoZnVuY3Rpb24oKXtkdCh0LmZpbmQoIi5ldC1wYi1hcnJvdy1uZXh0IikpfSksdC5kYXRhKCJhdXRvLXJvdGF0ZS1zcGVlZCIpKTt0LmRhdGEoImV0X2Nhcm91c2VsX3RpbWVyIixlKX19aWYoIWkmJihILmxlbmd0aD4wfHxkLmlzQnVpbGRlcikmJihILm9mZigiY2xpY2siKSxILm9uKCJjbGljayIpLHdpbmRvdy5ldF9wYl9pbWFnZV9saWdodGJveF9pbml0PWZ1bmN0aW9uKGUpe2lmKCFlLm1hZ25pZmljUG9wdXApcmV0dXJuIHQod2luZG93KS5vbigibG9hZCIsKGZ1bmN0aW9uKCl7d2luZG93LmV0X3BiX2ltYWdlX2xpZ2h0Ym94X2luaXQoZSl9KSk7ZS5tYWduaWZpY1BvcHVwKHt0eXBlOiJpbWFnZSIscmVtb3ZhbERlbGF5OjUwMCxtYWluQ2xhc3M6Im1mcC1mYWRlIix6b29tOntlbmFibGVkOndpbmRvdy5ldF9wYl9jdXN0b20mJiF3aW5kb3cuZXRfcGJfY3VzdG9tLmlzX2J1aWxkZXJfcGx1Z2luX3VzZWQsZHVyYXRpb246NTAwLG9wZW5lcjpmdW5jdGlvbih0KXtyZXR1cm4gdC5maW5kKCJpbWciKX19LGF1dG9Gb2N1c0xhc3Q6ITF9KX0sZXRfcGJfaW1hZ2VfbGlnaHRib3hfaW5pdChIKSksKGsubGVuZ3RofHxkLmlzQnVpbGRlcikmJmsuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO2V0X3BiX3NsaWRlcl9pbml0KHQpfSkpLCgoSz1uKCIuZXRfcGJfY2Fyb3VzZWwiKSkubGVuZ3RofHxkLmlzQnVpbGRlcikmJksuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmV0X3BiX3NpbXBsZV9jYXJvdXNlbCh7c2xpZGVfZHVyYXRpb246MWUzfSl9KSksKG90Lmxlbmd0aHx8ZC5pc0J1aWxkZXIpJiZuKG90KS5lYWNoKChmdW5jdGlvbigpe3dpbmRvdy5ldF9wYl9zZXRfcmVzcG9uc2l2ZV9ncmlkKG4odGhpcyksIi5ldF9wYl9ncmlkX2l0ZW0iKX0pKSwoQS5sZW5ndGh8fGQuaXNCdWlsZGVyKSYmKHdpbmRvdy5ldF9mdWxsd2lkdGhfcG9ydGZvbGlvX2luaXQ9ZnVuY3Rpb24odCxlKXt2YXIgaT10LmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbXMiKTtpLmRhdGEoIml0ZW1zIixpLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbSIpLnRvQXJyYXkoKSksdC5kYXRhKCJjb2x1bW5zX3NldHRpbmdfdXAiLCExKSx0Lmhhc0NsYXNzKCJldF9wYl9mdWxsd2lkdGhfcG9ydGZvbGlvX2Nhcm91c2VsIik/KGkucHJlcGVuZCgiIi5jb25jYXQoJzxkaXYgY2xhc3M9ImV0LXBiLXNsaWRlci1hcnJvd3MiPjxhIGNsYXNzPSJldC1wYi1hcnJvdy1wcmV2IiBocmVmPSIjIj48c3Bhbj4nKS5jb25jYXQoZXRfcGJfY3VzdG9tLnByZXZpb3VzLCI8L3NwYW4+IikrJzwvYT48YSBjbGFzcz0iZXQtcGItYXJyb3ctbmV4dCIgaHJlZj0iIyI+JysiPHNwYW4+Ii5jb25jYXQoZXRfcGJfY3VzdG9tLm5leHQsIjwvc3Bhbj4iKSsiPC9hPjwvZGl2PiIpLHB0KHQsITApLHV0KHQpLHQub24oInN3aXBlcmlnaHQiLChmdW5jdGlvbigpe24odGhpcykuZmluZCgiLmV0LXBiLWFycm93LXByZXYiKS50cmlnZ2VyKCJjbGljayIpfSkpLHQub24oInN3aXBlbGVmdCIsKGZ1bmN0aW9uKCl7bih0aGlzKS5maW5kKCIuZXQtcGItYXJyb3ctbmV4dCIpLnRyaWdnZXIoImNsaWNrIil9KSksdC5vbigibW91c2VlbnRlciIsKGZ1bmN0aW9uKCl7bih0aGlzKS5hZGRDbGFzcygiZXRfY2Fyb3VzZWxfaG92ZXJlZCIpLHZvaWQgMCE9PW4odGhpcykuZGF0YSgiZXRfY2Fyb3VzZWxfdGltZXIiKSYmY2xlYXJJbnRlcnZhbChuKHRoaXMpLmRhdGEoImV0X2Nhcm91c2VsX3RpbWVyIikpfSkpLm9uKCJtb3VzZWxlYXZlIiwoZnVuY3Rpb24oKXtuKHRoaXMpLnJlbW92ZUNsYXNzKCJldF9jYXJvdXNlbF9ob3ZlcmVkIiksdXQobih0aGlzKSl9KSksdC5kYXRhKCJjYXJvdXNlbGluZyIsITEpLHQub24oImNsaWNrIiwiLmV0LXBiLXNsaWRlci1hcnJvd3MgYSIsKGZ1bmN0aW9uKHQpe3JldHVybiBkdChuKHRoaXMpKSx0LnByZXZlbnREZWZhdWx0KCksITF9KSkpOnB0KHQsITEpLCJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKCl9LEEuZWFjaCgoZnVuY3Rpb24oKXtldF9mdWxsd2lkdGhfcG9ydGZvbGlvX2luaXQobih0aGlzKSl9KSkpLG4oIi5ldF9wYl9zZWN0aW9uX3ZpZGVvIikubGVuZ3RoJiYod2luZG93Ll93cG1lanNTZXR0aW5ncy5wYXVzZU90aGVyUGxheWVycz0hMSksSS5sZW5ndGh8fGQuaXNCdWlsZGVyKXt2YXIgZnQ9ZnVuY3Rpb24odCl7aWYodC5hdHRyKCJpZCIpKXt2YXIgZT1bXTtlLnB1c2godC5hdHRyKCJpZCIpKSxlLnB1c2godC5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2ZpbHRlciA+IGEuYWN0aXZlIikuZGF0YSgiY2F0ZWdvcnktc2x1ZyIpKSx0LmZpbmQoIi5ldF9wYl9wb3J0b2ZvbGlvX3BhZ2luYXRpb24gYS5hY3RpdmUiKS5sZW5ndGg/ZS5wdXNoKHQuZmluZCgiLmV0X3BiX3BvcnRvZm9saW9fcGFnaW5hdGlvbiBhLmFjdGl2ZSIpLmRhdGEoInBhZ2UiKSk6ZS5wdXNoKDEpLEMoZT1lLmpvaW4obCkpfX07d2luZG93LmV0X3BiX2ZpbHRlcmFibGVfcG9ydGZvbGlvX2luaXQ9ZnVuY3Rpb24odCl7dm9pZCAwIT09dD9zZXRfZmlsdGVyYWJsZV9wb3J0Zm9saW9faW5pdCh0KTpJLmVhY2goKGZ1bmN0aW9uKCl7c2V0X2ZpbHRlcmFibGVfcG9ydGZvbGlvX2luaXQobih0aGlzKSl9KSl9LHdpbmRvdy5zZXRfZmlsdGVyYWJsZV9wb3J0Zm9saW9faW5pdD1mdW5jdGlvbih0LGUpe3ZhciBpPXQuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19pdGVtcyIpLmNsb25lKCk7dC5zaG93KCksdC5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKS5hZGRDbGFzcygiYWN0aXZlIiksdC5jc3MoImRpc3BsYXkiLCJibG9jayIpLHdpbmRvdy5zZXRfZmlsdGVyYWJsZV9ncmlkX2l0ZW1zKHQpLCJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKCksdC5vbigiY2xpY2siLCIuZXRfcGJfcG9ydGZvbGlvX2ZpbHRlciBhIiwoZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpO3ZhciBlPW4odGhpcykuZGF0YSgiY2F0ZWdvcnktc2x1ZyIpLGE9bih0aGlzKS5wYXJlbnRzKCIuZXRfcGJfZmlsdGVyYWJsZV9wb3J0Zm9saW8iKSxvPWEuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19pdGVtcyIpOyJhbGwiPT1lPyhhLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9fZmlsdGVyIGEiKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksYS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2ZpbHRlcl9hbGwgYSIpLmFkZENsYXNzKCJhY3RpdmUiKSxvLmVtcHR5KCksby5hcHBlbmQoaS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKS5jbG9uZSgpKSxhLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbSIpLmFkZENsYXNzKCJhY3RpdmUiKSk6KGEuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19maWx0ZXJfYWxsIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLGEuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19maWx0ZXIgYSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSxhLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9fZmlsdGVyX2FsbCBhIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLG4odGhpcykuYWRkQ2xhc3MoImFjdGl2ZSIpLG8uZW1wdHkoKSxvLmFwcGVuZChpLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbS5wcm9qZWN0X2NhdGVnb3J5XyIuY29uY2F0KG4odGhpcykuZGF0YSgiY2F0ZWdvcnktc2x1ZyIpKSkuY2xvbmUoKSksby5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksby5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0ucHJvamVjdF9jYXRlZ29yeV8iLmNvbmNhdChuKHRoaXMpLmRhdGEoImNhdGVnb3J5LXNsdWciKSkpLmFkZENsYXNzKCJhY3RpdmUiKS5yZW1vdmVDbGFzcygiaW5hY3RpdmUiKSksd2luZG93LnNldF9maWx0ZXJhYmxlX2dyaWRfaXRlbXMoYSksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtmdChhKX0pLDUwMCksYS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKS5yZW1vdmVDbGFzcygiZmlyc3RfaW5fcm93IGxhc3RfaW5fcm93IiksZXRfcGJfc2V0X3Jlc3BvbnNpdmVfZ3JpZChhLCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW06dmlzaWJsZSIpfSkpLHQub24oImNsaWNrIiwiLmV0X3BiX3BvcnRvZm9saW9fcGFnaW5hdGlvbiBhIiwoZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpO3ZhciBlPW4odGhpcykuZGF0YSgicGFnZSIpLGk9bih0aGlzKS5wYXJlbnRzKCIuZXRfcGJfZmlsdGVyYWJsZV9wb3J0Zm9saW8iKTtpLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbXMiKSxldF9wYl9zbW9vdGhfc2Nyb2xsKGksITEsODAwKSxuKHRoaXMpLmhhc0NsYXNzKCJwYWdlLXByZXYiKT9lPXBhcnNlSW50KG4odGhpcykucGFyZW50cygidWwiKS5maW5kKCJhLmFjdGl2ZSIpLmRhdGEoInBhZ2UiKSktMTpuKHRoaXMpLmhhc0NsYXNzKCJwYWdlLW5leHQiKSYmKGU9cGFyc2VJbnQobih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImEuYWN0aXZlIikuZGF0YSgicGFnZSIpKSsxKSxuKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgiYSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSxuKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgiYS5wYWdlLSIuY29uY2F0KGUpKS5hZGRDbGFzcygiYWN0aXZlIik7dmFyIGE9bih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImEucGFnZS0iLmNvbmNhdChlKSkucGFyZW50KCkuaW5kZXgoKSxvPW4odGhpcykucGFyZW50cygidWwiKS5maW5kKCJsaS5wYWdlIikubGVuZ3RoO24odGhpcykucGFyZW50KCkubmV4dFVudGlsKCIucGFnZS0iLmNvbmNhdChhKzMpKS5zaG93KCksbih0aGlzKS5wYXJlbnQoKS5wcmV2VW50aWwoIi5wYWdlLSIuY29uY2F0KGEtMykpLnNob3coKSxuKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgibGkucGFnZSIpLmVhY2goKGZ1bmN0aW9uKHQpe24odGhpcykuaGFzQ2xhc3MoInByZXYiKXx8bih0aGlzKS5oYXNDbGFzcygibmV4dCIpfHwodDxhLTN8fHQ+YSsxP24odGhpcykuaGlkZSgpOm4odGhpcykuc2hvdygpLChvLWE8PTImJm8tdDw9NXx8YTw9MyYmdDw9NCkmJm4odGhpcykuc2hvdygpKX0pKSxlPjE/bih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImxpLnByZXYiKS5zaG93KCk6bih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImxpLnByZXYiKS5oaWRlKCksbih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImEuYWN0aXZlIikuaGFzQ2xhc3MoImxhc3QtcGFnZSIpP24odGhpcykucGFyZW50cygidWwiKS5maW5kKCJsaS5uZXh0IikuaGlkZSgpOm4odGhpcykucGFyZW50cygidWwiKS5maW5kKCJsaS5uZXh0Iikuc2hvdygpLGkuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19pdGVtIikuaGlkZSgpLGkuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19pdGVtIikuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gbih0aGlzKS5kYXRhKCJwYWdlIik9PT1lfSkpLnNob3coKSx3aW5kb3cuZXRfcGJfc2V0X3Jlc3BvbnNpdmVfZ3JpZChpLmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbXMiKSwiLmV0X3BiX3BvcnRmb2xpb19pdGVtIiksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtmdChpKX0pLDUwMCksaS5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKS5yZW1vdmVDbGFzcygiZmlyc3RfaW5fcm93IGxhc3RfaW5fcm93IiksZXRfcGJfc2V0X3Jlc3BvbnNpdmVfZ3JpZChpLCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW06dmlzaWJsZSIpfSkpLHQub24oImV0X2hhc2hjaGFuZ2UiLChmdW5jdGlvbihlKXt2YXIgaT1lLnBhcmFtczsodD1uKCIjIi5jb25jYXQoZS50YXJnZXQuaWQpKSkuZmluZCgnLmV0X3BiX3BvcnRmb2xpb19maWx0ZXIgYVtkYXRhLWNhdGVnb3J5LXNsdWc9IicuY29uY2F0KGlbMF0sJyJdJykpLmhhc0NsYXNzKCJhY3RpdmUiKXx8dC5maW5kKCcuZXRfcGJfcG9ydGZvbGlvX2ZpbHRlciBhW2RhdGEtY2F0ZWdvcnktc2x1Zz0iJy5jb25jYXQoaVswXSwnIl0nKSkudHJpZ2dlcigiY2xpY2siKSxpWzFdJiZzZXRUaW1lb3V0KChmdW5jdGlvbigpe3QuZmluZCgiLmV0X3BiX3BvcnRvZm9saW9fcGFnaW5hdGlvbiBhLnBhZ2UtIi5jb25jYXQoaVsxXSkpLmhhc0NsYXNzKCJhY3RpdmUiKXx8dC5maW5kKCIuZXRfcGJfcG9ydG9mb2xpb19wYWdpbmF0aW9uIGEucGFnZS0iLmNvbmNhdChpWzFdKSkuYWRkQ2xhc3MoImFjdGl2ZSIpLnRyaWdnZXIoImNsaWNrIil9KSwzMDApfSkpfSx3aW5kb3cuc2V0X2ZpbHRlcmFibGVfZ3JpZF9pdGVtcz1mdW5jdGlvbih0KXt2YXIgZSxpPXQuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19maWx0ZXIgPiBhLmFjdGl2ZSIpLmRhdGEoImNhdGVnb3J5LXNsdWciKTt3aW5kb3cuZXRfcGJfc2V0X3Jlc3BvbnNpdmVfZ3JpZCh0LmZpbmQoIi5ldF9wYl9wb3J0Zm9saW9faXRlbXMiKSwiLmV0X3BiX3BvcnRmb2xpb19pdGVtIik7dmFyIGE9KGU9ImFsbCI9PT1pP3QuZmluZCgiLmV0X3BiX3BvcnRmb2xpb19pdGVtIik6dC5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0ucHJvamVjdF9jYXRlZ29yeV8iLmNvbmNhdChpKSkpLmxlbmd0aCxvPXQuZGF0YSgicG9zdHMtbnVtYmVyIikscj0wPT09bz8xOk1hdGguY2VpbChhL28pO3dpbmRvdy5zZXRfZmlsdGVyYWJsZV9ncmlkX3BhZ2VzKHQsciksYT0wO3ZhciBzPTE7dC5maW5kKCIuZXRfcGJfcG9ydGZvbGlvX2l0ZW0iKS5kYXRhKCJwYWdlIiwiIiksZS5lYWNoKChmdW5jdGlvbih0KXthKyssMD09PXBhcnNlSW50KGElbyk/KG4odGhpcykuZGF0YSgicGFnZSIscykscysrKTpuKHRoaXMpLmRhdGEoInBhZ2UiLHMpfSkpLGUuZmlsdGVyKChmdW5jdGlvbigpe3JldHVybiAxPT1uKHRoaXMpLmRhdGEoInBhZ2UiKX0pKS5zaG93KCksZS5maWx0ZXIoKGZ1bmN0aW9uKCl7cmV0dXJuIDEhPW4odGhpcykuZGF0YSgicGFnZSIpfSkpLmhpZGUoKX0sd2luZG93LnNldF9maWx0ZXJhYmxlX2dyaWRfcGFnZXM9ZnVuY3Rpb24odCxlKXt2YXIgbj10LmZpbmQoIi5ldF9wYl9wb3J0b2ZvbGlvX3BhZ2luYXRpb24iKTtpZihuLmxlbmd0aCYmKG4uaHRtbCgiPHVsPjwvdWw+IiksIShlPD0xKSkpe3ZhciBpPW4uY2hpbGRyZW4oInVsIik7aS5hcHBlbmQoJzxsaSBjbGFzcz0icHJldiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPjxhIGhyZWY9IiMiIGRhdGEtcGFnZT0icHJldiIgY2xhc3M9InBhZ2UtcHJldiI+Jy5jb25jYXQoZXRfcGJfY3VzdG9tLnByZXYsIjwvYT48L2xpPiIpKTtmb3IodmFyIGE9MTthPD1lO2ErKyl7dmFyIG89MT09PWE/IiBhY3RpdmUiOiIiLHI9YT09PWU/IiBsYXN0LXBhZ2UiOiIiLHM9YT49NT8nIHN0eWxlPSJkaXNwbGF5Om5vbmU7Iic6IiI7aS5hcHBlbmQoIjxsaSIuY29uY2F0KHMsJyBjbGFzcz0icGFnZSBwYWdlLScpLmNvbmNhdChhLCciPjxhIGhyZWY9IiMiIGRhdGEtcGFnZT0iJykuY29uY2F0KGEsJyIgY2xhc3M9InBhZ2UtJykuY29uY2F0KGEpLmNvbmNhdChvKS5jb25jYXQociwnIj4nKS5jb25jYXQoYSwiPC9hPjwvbGk+IikpfWkuYXBwZW5kKCc8bGkgY2xhc3M9Im5leHQiPjxhIGhyZWY9IiMiIGRhdGEtcGFnZT0ibmV4dCIgY2xhc3M9InBhZ2UtbmV4dCI+Jy5jb25jYXQoZXRfcGJfY3VzdG9tLm5leHQsIjwvYT48L2xpPiIpKX19LHdpbmRvdy5ldF9sb2FkX2V2ZW50X2ZpcmVkP2V0X3BiX2ZpbHRlcmFibGVfcG9ydGZvbGlvX2luaXQoKTpuKHdpbmRvdykub24oImxvYWQiLChmdW5jdGlvbigpe2V0X3BiX2ZpbHRlcmFibGVfcG9ydGZvbGlvX2luaXQoKX0pKX1pZigoRS5sZW5ndGh8fGQuaXNCdWlsZGVyKSYmKHdpbmRvdy5zZXRfZ2FsbGVyeV9ncmlkX2l0ZW1zPWZ1bmN0aW9uKHQpe3ZhciBlPXQuZmluZCgiLmV0X3BiX2dhbGxlcnlfaXRlbXMiKSxpPWUuZmluZCgiLmV0X3BiX2dhbGxlcnlfaXRlbSIpLGE9aS5sZW5ndGgsbz1wYXJzZUludChlLmF0dHIoImRhdGEtcGVyX3BhZ2UiKSkscj1pc05hTihvKXx8MD09PW8/NDpvLHM9TWF0aC5jZWlsKGEvcik7d2luZG93LmV0X3BiX3NldF9yZXNwb25zaXZlX2dyaWQoZSwiLmV0X3BiX2dhbGxlcnlfaXRlbSIpLHNldF9nYWxsZXJ5X2dyaWRfcGFnZXModCxzKSxhPTA7dmFyIGM9MTtpLmRhdGEoInBhZ2UiLCIiKSxpLmVhY2goKGZ1bmN0aW9uKHQpe2ErKzt2YXIgZT1uKHRoaXMpOzA9PT1wYXJzZUludChhJXIpPyhlLmRhdGEoInBhZ2UiLGMpLGMrKyk6ZS5kYXRhKCJwYWdlIixjKX0pKSxpLmZpbHRlcigoZnVuY3Rpb24oKXtyZXR1cm4gMT09bih0aGlzKS5kYXRhKCJwYWdlIil9KSkuc2hvdygpLGkuZmlsdGVyKChmdW5jdGlvbigpe3JldHVybiAxIT1uKHRoaXMpLmRhdGEoInBhZ2UiKX0pKS5oaWRlKCl9LHdpbmRvdy5zZXRfZ2FsbGVyeV9ncmlkX3BhZ2VzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dC5maW5kKCIuZXRfcGJfZ2FsbGVyeV9wYWdpbmF0aW9uIik7aWYobi5sZW5ndGgpaWYobi5odG1sKCI8dWw+PC91bD4iKSxlPD0xKW4uaGlkZSgpO2Vsc2V7dmFyIGk9bi5jaGlsZHJlbigidWwiKTtpLmFwcGVuZCgnPGxpIGNsYXNzPSJwcmV2IiBzdHlsZT0iZGlzcGxheTpub25lOyI+PGEgaHJlZj0iIyIgZGF0YS1wYWdlPSJwcmV2IiBjbGFzcz0icGFnZS1wcmV2Ij4nLmNvbmNhdChldF9wYl9jdXN0b20ucHJldiwiPC9hPjwvbGk+IikpO2Zvcih2YXIgYT0xO2E8PWU7YSsrKXt2YXIgbz0xPT09YT8iIGFjdGl2ZSI6IiIscj1hPT09ZT8iIGxhc3QtcGFnZSI6IiIscz1hPj01Pycgc3R5bGU9ImRpc3BsYXk6bm9uZTsiJzoiIjtpLmFwcGVuZCgiPGxpIi5jb25jYXQocywnIGNsYXNzPSJwYWdlIHBhZ2UtJykuY29uY2F0KGEsJyI+PGEgaHJlZj0iIyIgZGF0YS1wYWdlPSInKS5jb25jYXQoYSwnIiBjbGFzcz0icGFnZS0nKS5jb25jYXQoYSkuY29uY2F0KG8pLmNvbmNhdChyLCciPicpLmNvbmNhdChhLCI8L2E+PC9saT4iKSl9aS5hcHBlbmQoJzxsaSBjbGFzcz0ibmV4dCI+PGEgaHJlZj0iIyIgZGF0YS1wYWdlPSJuZXh0IiBjbGFzcz0icGFnZS1uZXh0Ij4nLmNvbmNhdChldF9wYl9jdXN0b20ubmV4dCwiPC9hPjwvbGk+IikpfX0sd2luZG93LnNldF9nYWxsZXJ5X2hhc2g9ZnVuY3Rpb24odCl7aWYodC5hdHRyKCJpZCIpKXt2YXIgZT1bXTtlLnB1c2godC5hdHRyKCJpZCIpKSx0LmZpbmQoIi5ldF9wYl9nYWxsZXJ5X3BhZ2luYXRpb24gYS5hY3RpdmUiKS5sZW5ndGg/ZS5wdXNoKHQuZmluZCgiLmV0X3BiX2dhbGxlcnlfcGFnaW5hdGlvbiBhLmFjdGl2ZSIpLmRhdGEoInBhZ2UiKSk6ZS5wdXNoKDEpLEMoZT1lLmpvaW4obCkpfX0sd2luZG93LmV0X3BiX2dhbGxlcnlfaW5pdD1mdW5jdGlvbih0KXt0Lmhhc0NsYXNzKCJldF9wYl9nYWxsZXJ5X2dyaWQiKSYmKHQuc2hvdygpLHNldF9nYWxsZXJ5X2dyaWRfaXRlbXModCksdC5vbigiZXRfaGFzaGNoYW5nZSIsKGZ1bmN0aW9uKGUpe3ZhciBpPWUucGFyYW1zO3Q9bigiIyIuY29uY2F0KGUudGFyZ2V0LmlkKSk7dmFyIGE9aVswXTthJiYodC5maW5kKCIuZXRfcGJfZ2FsbGVyeV9wYWdpbmF0aW9uIGEucGFnZS0iLmNvbmNhdChhKSkuaGFzQ2xhc3MoImFjdGl2ZSIpfHx0LmZpbmQoIi5ldF9wYl9nYWxsZXJ5X3BhZ2luYXRpb24gYS5wYWdlLSIuY29uY2F0KGEpKS5hZGRDbGFzcygiYWN0aXZlIikudHJpZ2dlcigiY2xpY2siKSl9KSkpfSxFLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKTtldF9wYl9nYWxsZXJ5X2luaXQodCl9KSksRS5kYXRhKCJwYWdpbmF0aW5nIiwhMSksd2luZG93LmV0X3BiX2dhbGxlcnlfcGFnaW5hdGlvbl9uYXY9ZnVuY3Rpb24odCl7dC5vbigiY2xpY2siLCIuZXRfcGJfZ2FsbGVyeV9wYWdpbmF0aW9uIGEiLChmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCk7dmFyIGU9bih0aGlzKS5kYXRhKCJwYWdlIiksaT1uKHRoaXMpLnBhcmVudHMoIi5ldF9wYl9nYWxsZXJ5IiksYT1pLmZpbmQoIi5ldF9wYl9nYWxsZXJ5X2l0ZW1zIiksbz1hLmZpbmQoIi5ldF9wYl9nYWxsZXJ5X2l0ZW0iKTtpZighaS5kYXRhKCJwYWdpbmF0aW5nIikpe2kuZGF0YSgicGFnaW5hdGluZyIsITApLG4odGhpcykuaGFzQ2xhc3MoInBhZ2UtcHJldiIpP2U9cGFyc2VJbnQobih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImEuYWN0aXZlIikuZGF0YSgicGFnZSIpKS0xOm4odGhpcykuaGFzQ2xhc3MoInBhZ2UtbmV4dCIpJiYoZT1wYXJzZUludChuKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgiYS5hY3RpdmUiKS5kYXRhKCJwYWdlIikpKzEpLG4odGhpcykucGFyZW50cygidWwiKS5maW5kKCJhIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLG4odGhpcykucGFyZW50cygidWwiKS5maW5kKCJhLnBhZ2UtIi5jb25jYXQoZSkpLmFkZENsYXNzKCJhY3RpdmUiKTt2YXIgcj1uKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgiYS5wYWdlLSIuY29uY2F0KGUpKS5wYXJlbnQoKS5pbmRleCgpLHM9bih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImxpLnBhZ2UiKS5sZW5ndGg7bih0aGlzKS5wYXJlbnQoKS5uZXh0VW50aWwoIi5wYWdlLSIuY29uY2F0KHIrMykpLnNob3coKSxuKHRoaXMpLnBhcmVudCgpLnByZXZVbnRpbCgiLnBhZ2UtIi5jb25jYXQoci0zKSkuc2hvdygpLG4odGhpcykucGFyZW50cygidWwiKS5maW5kKCJsaS5wYWdlIikuZWFjaCgoZnVuY3Rpb24odCl7bih0aGlzKS5oYXNDbGFzcygicHJldiIpfHxuKHRoaXMpLmhhc0NsYXNzKCJuZXh0Iil8fCh0PHItM3x8dD5yKzE/bih0aGlzKS5oaWRlKCk6bih0aGlzKS5zaG93KCksKHMtcjw9MiYmcy10PD01fHxyPD0zJiZ0PD00KSYmbih0aGlzKS5zaG93KCkpfSkpLGU+MT9uKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgibGkucHJldiIpLnNob3coKTpuKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgibGkucHJldiIpLmhpZGUoKSxuKHRoaXMpLnBhcmVudHMoInVsIikuZmluZCgiYS5hY3RpdmUiKS5oYXNDbGFzcygibGFzdC1wYWdlIik/bih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImxpLm5leHQiKS5oaWRlKCk6bih0aGlzKS5wYXJlbnRzKCJ1bCIpLmZpbmQoImxpLm5leHQiKS5zaG93KCksby5oaWRlKCksby5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybiBuKHRoaXMpLmRhdGEoInBhZ2UiKT09PWV9KSkuc2hvdygpLGkuZGF0YSgicGFnaW5hdGluZyIsITEpLHdpbmRvdy5ldF9wYl9zZXRfcmVzcG9uc2l2ZV9ncmlkKGEsIi5ldF9wYl9nYWxsZXJ5X2l0ZW0iKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe3NldF9nYWxsZXJ5X2hhc2goaSl9KSwxMDApfX0pKX0sZXRfcGJfZ2FsbGVyeV9wYWdpbmF0aW9uX25hdihFKSxkLmlzQnVpbGRlciYmZXRfcGJfZ2FsbGVyeV9wYWdpbmF0aW9uX25hdihuKCIjZXQtZmItYXBwIikpKSxKLmxlbmd0aCYmSi5lYWNoKChmdW5jdGlvbigpe3dpbmRvdy5ldF9iYXJfY291bnRlcnNfaW5pdChuKHRoaXMpKX0pKSx3aW5kb3cuZXRfY291bnRkb3duX3RpbWVyPWZ1bmN0aW9uKHQpe3ZhciBlPXBhcnNlSW50KHQuYXR0cigiZGF0YS1lbmQtdGltZXN0YW1wIikpLShuZXcgRGF0ZSkuZ2V0VGltZSgpLzFlMyxuPXBhcnNlSW50KGUvODY0MDApO249bj4wP246MCxlJT04NjQwMDt2YXIgaT1wYXJzZUludChlLzM2MDApO2k9aT4wP2k6MCxlJT0zNjAwO3ZhciBhPXBhcnNlSW50KGUvNjApO2E9YT4wP2E6MDt2YXIgbz1wYXJzZUludChlJTYwKTtvPW8+MD9vOjA7dmFyIHI9dC5maW5kKCIuZGF5cyA+IC52YWx1ZSIpLnBhcmVudCgiLnNlY3Rpb24iKSxzPXQuZmluZCgiLmhvdXJzID4gLnZhbHVlIikucGFyZW50KCIuc2VjdGlvbiIpLGM9dC5maW5kKCIubWludXRlcyA+IC52YWx1ZSIpLnBhcmVudCgiLnNlY3Rpb24iKSxsPXQuZmluZCgiLnNlY29uZHMgPiAudmFsdWUiKS5wYXJlbnQoIi5zZWN0aW9uIik7aWYoMD09bilyLmhhc0NsYXNzKCJ6ZXJvIil8fHQuZmluZCgiLmRheXMgPiAudmFsdWUiKS5odG1sKCIwMDAiKS5wYXJlbnQoIi5zZWN0aW9uIikuYWRkQ2xhc3MoInplcm8iKS5uZXh0KCkuYWRkQ2xhc3MoInplcm8iKTtlbHNle3ZhciBfPW4udG9TdHJpbmcoKS5sZW5ndGg+PTM/bi50b1N0cmluZygpLmxlbmd0aDozO3QuZmluZCgiLmRheXMgPiAudmFsdWUiKS5odG1sKCIwMDAiLmNvbmNhdChuKS5zbGljZSgtXykpLHIuaGFzQ2xhc3MoInplcm8iKSYmci5yZW1vdmVDbGFzcygiemVybyIpLm5leHQoKS5yZW1vdmVDbGFzcygiemVybyIpfTA9PT1uJiYwPT09aT9zLmhhc0NsYXNzKCJ6ZXJvIil8fHQuZmluZCgiLmhvdXJzID4gLnZhbHVlIikuaHRtbCgiMDAiKS5wYXJlbnQoIi5zZWN0aW9uIikuYWRkQ2xhc3MoInplcm8iKS5uZXh0KCkuYWRkQ2xhc3MoInplcm8iKToodC5maW5kKCIuaG91cnMgPiAudmFsdWUiKS5odG1sKCIwIi5jb25jYXQoaSkuc2xpY2UoLTIpKSxzLmhhc0NsYXNzKCJ6ZXJvIikmJnMucmVtb3ZlQ2xhc3MoInplcm8iKS5uZXh0KCkucmVtb3ZlQ2xhc3MoInplcm8iKSksMD09PW4mJjA9PT1pJiYwPT09YT9jLmhhc0NsYXNzKCJ6ZXJvIil8fHQuZmluZCgiLm1pbnV0ZXMgPiAudmFsdWUiKS5odG1sKCIwMCIpLnBhcmVudCgiLnNlY3Rpb24iKS5hZGRDbGFzcygiemVybyIpLm5leHQoKS5hZGRDbGFzcygiemVybyIpOih0LmZpbmQoIi5taW51dGVzID4gLnZhbHVlIikuaHRtbCgiMCIuY29uY2F0KGEpLnNsaWNlKC0yKSksYy5oYXNDbGFzcygiemVybyIpJiZjLnJlbW92ZUNsYXNzKCJ6ZXJvIikubmV4dCgpLnJlbW92ZUNsYXNzKCJ6ZXJvIikpLDA9PT1uJiYwPT09aSYmMD09PWEmJjA9PT1vP2wuaGFzQ2xhc3MoInplcm8iKXx8dC5maW5kKCIuc2Vjb25kcyA+IC52YWx1ZSIpLmh0bWwoIjAwIikucGFyZW50KCIuc2VjdGlvbiIpLmFkZENsYXNzKCJ6ZXJvIik6KHQuZmluZCgiLnNlY29uZHMgPiAudmFsdWUiKS5odG1sKCIwIi5jb25jYXQobykuc2xpY2UoLTIpKSxsLmhhc0NsYXNzKCJ6ZXJvIikmJmwucmVtb3ZlQ2xhc3MoInplcm8iKS5uZXh0KCkucmVtb3ZlQ2xhc3MoInplcm8iKSl9LHdpbmRvdy5ldF9jb3VudGRvd25fdGltZXJfbGFiZWxzPWZ1bmN0aW9uKHQpe3QuY2xvc2VzdCgiLmV0X3BiX2NvbHVtbl8zXzgiKS5sZW5ndGh8fHQuY2xvc2VzdCgiLmV0X3BiX2NvbHVtbl8xXzQiKS5sZW5ndGh8fHQuY2hpbGRyZW4oIi5ldF9wYl9jb3VudGRvd25fdGltZXJfY29udGFpbmVyIikud2lkdGgoKTw9NDAwPyh0LmZpbmQoIi5kYXlzIC5sYWJlbCIpLmh0bWwodC5maW5kKCIuZGF5cyIpLmRhdGEoInNob3J0IikpLHQuZmluZCgiLmhvdXJzIC5sYWJlbCIpLmh0bWwodC5maW5kKCIuaG91cnMiKS5kYXRhKCJzaG9ydCIpKSx0LmZpbmQoIi5taW51dGVzIC5sYWJlbCIpLmh0bWwodC5maW5kKCIubWludXRlcyIpLmRhdGEoInNob3J0IikpLHQuZmluZCgiLnNlY29uZHMgLmxhYmVsIikuaHRtbCh0LmZpbmQoIi5zZWNvbmRzIikuZGF0YSgic2hvcnQiKSkpOih0LmZpbmQoIi5kYXlzIC5sYWJlbCIpLmh0bWwodC5maW5kKCIuZGF5cyIpLmRhdGEoImZ1bGwiKSksdC5maW5kKCIuaG91cnMgLmxhYmVsIikuaHRtbCh0LmZpbmQoIi5ob3VycyIpLmRhdGEoImZ1bGwiKSksdC5maW5kKCIubWludXRlcyAubGFiZWwiKS5odG1sKHQuZmluZCgiLm1pbnV0ZXMiKS5kYXRhKCJmdWxsIikpLHQuZmluZCgiLnNlY29uZHMgLmxhYmVsIikuaHRtbCh0LmZpbmQoIi5zZWNvbmRzIikuZGF0YSgiZnVsbCIpKSl9LChCLmxlbmd0aHx8ZC5pc0J1aWxkZXIpJiYod2luZG93LmV0X3BiX2NvdW50ZG93bl90aW1lcl9pbml0PWZ1bmN0aW9uKHQpe3QuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO2V0X2NvdW50ZG93bl90aW1lcl9sYWJlbHModCksZXRfY291bnRkb3duX3RpbWVyKHQpLHNldEludGVydmFsKChmdW5jdGlvbigpe2V0X2NvdW50ZG93bl90aW1lcih0KX0pLDFlMyl9KSl9LGV0X3BiX2NvdW50ZG93bl90aW1lcl9pbml0KEIpKSx3aW5kb3cuZXRfcGJfdGFic19pbml0PWZ1bmN0aW9uKHQpe3QuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLGU9dC5maW5kKCIuZXRfcGJfdGFic19jb250cm9scyBsaSIpLGk9dnx8bXx8Zz8wOnQuZmluZCgiLmV0X3BiX3RhYl9hY3RpdmUiKS5pbmRleCgpLGE9e3VzZV9jb250cm9sczohMSx1c2VfYXJyb3dzOiExLHNsaWRlOiIuZXRfcGJfYWxsX3RhYnMgPiBkaXYiLHRhYnNfYW5pbWF0aW9uOiEwfTswIT09aSYmKGEuYWN0aXZlX3NsaWRlPWkpLHQuZXRfcGJfc2ltcGxlX3NsaWRlcihhKS5vbigiZXRfaGFzaGNoYW5nZSIsKGZ1bmN0aW9uKHQpe3ZhciBlPXQucGFyYW1zLGk9bigiIyIuY29uY2F0KHQudGFyZ2V0LmlkKSksYT1lWzBdO2kuZmluZCgiLmV0X3BiX3RhYnNfY29udHJvbHMgbGkiKS5lcShhKS5oYXNDbGFzcygiZXRfcGJfdGFiX2FjdGl2ZSIpfHxpLmZpbmQoIi5ldF9wYl90YWJzX2NvbnRyb2xzIGxpIikuZXEoYSkudHJpZ2dlcigiY2xpY2siKX0pKSxlLm9uKCJjbGljayIsKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKSxlPXQuY2xvc2VzdCgiLmV0X3BiX3RhYnMiKS5kYXRhKCJldF9wYl9zaW1wbGVfc2xpZGVyIik7aWYoZS5ldF9hbmltYXRpb25fcnVubmluZylyZXR1cm4hMTtpZih0LmFkZENsYXNzKCJldF9wYl90YWJfYWN0aXZlIikuc2libGluZ3MoKS5yZW1vdmVDbGFzcygiZXRfcGJfdGFiX2FjdGl2ZSIpLGUuZGF0YSgiZXRfcGJfc2ltcGxlX3NsaWRlciIpLmV0X3NsaWRlcl9tb3ZlX3RvKHQuaW5kZXgoKSksdC5jbG9zZXN0KCIuZXRfcGJfdGFicyIpLmF0dHIoImlkIikpe3ZhciBpPVtdO2kucHVzaCh0LmNsb3Nlc3QoIi5ldF9wYl90YWJzIikuYXR0cigiaWQiKSksaS5wdXNoKHQuaW5kZXgoKSksQyhpPWkuam9pbihsKSl9cmV0dXJuITF9KSksZnVuY3Rpb24odCl7dmFyIGU9d2luZG93LmxvY2F0aW9uLmhhc2g7aWYoIiIhPT1lKXt2YXIgbj1lLnJlcGxhY2UoIiMiLCIiKTtuPS9edGFiXC0vLnRlc3Qobik/bjoidGFiLSIuY29uY2F0KG4pO3ZhciBpPXQuZmluZCgnLmV0X3BiX3RhYnNfY29udHJvbHMgbGkgYVtocmVmPSIjJy5jb25jYXQobiwnIl0nKSk7aS5sZW5ndGgmJmkucGFyZW50KCkudHJpZ2dlcigiY2xpY2siKX19KHQpLHdpbmRvdy5ldF9wYl9zZXRfdGFic19oZWlnaHQoKX0pKX0sKGoubGVuZ3RofHxkLmlzQnVpbGRlcikmJndpbmRvdy5ldF9wYl90YWJzX2luaXQoaiksRi5sZW5ndGh8fGQuaXNCdWlsZGVyKXt2YXIgaHQ9ZnVuY3Rpb24oKXtGLmVhY2goKGZ1bmN0aW9uKCl7ZXRfcGJfbWFwX2luaXQobih0aGlzKSl9KSl9O3dpbmRvdy5ldF9wYl9tYXBfaW5pdD1mdW5jdGlvbih0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGdvb2dsZSYmdm9pZCAwIT09Z29vZ2xlLm1hcHMpe3ZhciBlPUF0KCk7aXQ9ZTt2YXIgaT0iZGVza3RvcCIhPT1lPyItIi5jb25jYXQoZSk6IiIsYT0icGhvbmUiPT09ZT8iLXRhYmxldCI6IiIsbz10LmF0dHIoImRhdGEtZ3JheXNjYWxlIi5jb25jYXQoaSkpfHwwO298fChvPXQuYXR0cigiZGF0YS1ncmF5c2NhbGUiLmNvbmNhdChhKSl8fHQuYXR0cigiZGF0YS1ncmF5c2NhbGUiKXx8MCk7dmFyIHIscz10LmNoaWxkcmVuKCIuZXRfcGJfbWFwIiksYz1vLGw9TiYmIm9mZiIhPT1zLmRhdGEoIm1vYmlsZS1kcmFnZ2luZyIpfHwhTjswIT09YyYmKGM9Ii0iLmNvbmNhdChjLnRvU3RyaW5nKCkpKTt2YXIgXz1wYXJzZUZsb2F0KHMuYXR0cigiZGF0YS1jZW50ZXItbGF0IikpfHwwLGQ9cGFyc2VGbG9hdChzLmF0dHIoImRhdGEtY2VudGVyLWxuZyIpKXx8MDt0LmRhdGEoIm1hcCIsbmV3IGdvb2dsZS5tYXBzLk1hcChzWzBdLHt6b29tOnBhcnNlSW50KHMuYXR0cigiZGF0YS16b29tIikpLGNlbnRlcjpuZXcgZ29vZ2xlLm1hcHMuTGF0TG5nKF8sZCksbWFwVHlwZUlkOmdvb2dsZS5tYXBzLk1hcFR5cGVJZC5ST0FETUFQLHNjcm9sbHdoZWVsOiJvbiI9PXMuYXR0cigiZGF0YS1tb3VzZS13aGVlbCIpLGRyYWdnYWJsZTpsLHBhbkNvbnRyb2xPcHRpb25zOntwb3NpdGlvbjp0LmlzKCIuZXRfYmVuZWF0aF90cmFuc3BhcmVudF9uYXYiKT9nb29nbGUubWFwcy5Db250cm9sUG9zaXRpb24uTEVGVF9CT1RUT006Z29vZ2xlLm1hcHMuQ29udHJvbFBvc2l0aW9uLkxFRlRfVE9QfSx6b29tQ29udHJvbE9wdGlvbnM6e3Bvc2l0aW9uOnQuaXMoIi5ldF9iZW5lYXRoX3RyYW5zcGFyZW50X25hdiIpP2dvb2dsZS5tYXBzLkNvbnRyb2xQb3NpdGlvbi5MRUZUX0JPVFRPTTpnb29nbGUubWFwcy5Db250cm9sUG9zaXRpb24uTEVGVF9UT1B9LHN0eWxlczpbe3N0eWxlcnM6W3tzYXR1cmF0aW9uOnBhcnNlSW50KGMpfV19XX0pKSx0LmZpbmQoIi5ldF9wYl9tYXBfcGluIikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgZT1uKHRoaXMpLGk9bmV3IGdvb2dsZS5tYXBzLk1hcmtlcih7cG9zaXRpb246bmV3IGdvb2dsZS5tYXBzLkxhdExuZyhwYXJzZUZsb2F0KGUuYXR0cigiZGF0YS1sYXQiKSkscGFyc2VGbG9hdChlLmF0dHIoImRhdGEtbG5nIikpKSxtYXA6dC5kYXRhKCJtYXAiKSx0aXRsZTplLmF0dHIoImRhdGEtdGl0bGUiKSxpY29uOnt1cmw6IiIuY29uY2F0KGV0X3BiX2N1c3RvbS5idWlsZGVyX2ltYWdlc191cmksIi9tYXJrZXIucG5nIiksc2l6ZTpuZXcgZ29vZ2xlLm1hcHMuU2l6ZSg0Niw0MyksYW5jaG9yOm5ldyBnb29nbGUubWFwcy5Qb2ludCgxNiw0Myl9LHNoYXBlOntjb29yZDpbMSwxLDQ2LDQzXSx0eXBlOiJyZWN0In0sYW5jaG9yUG9pbnQ6bmV3IGdvb2dsZS5tYXBzLlBvaW50KDAsLTQ1KX0pO2lmKGUuZmluZCgiLmluZm93aW5kb3ciKS5sZW5ndGgpe3ZhciBhPW5ldyBnb29nbGUubWFwcy5JbmZvV2luZG93KHtjb250ZW50OmUuaHRtbCgpfSk7Z29vZ2xlLm1hcHMuZXZlbnQuYWRkTGlzdGVuZXIodC5kYXRhKCJtYXAiKSwiY2xpY2siLChmdW5jdGlvbigpe2EuY2xvc2UoKX0pKSxnb29nbGUubWFwcy5ldmVudC5hZGRMaXN0ZW5lcihpLCJjbGljayIsKGZ1bmN0aW9uKCl7ciYmci5jbG9zZSgpLHI9YSxhLm9wZW4odC5kYXRhKCJtYXAiKSxpKSxlLmNsb3Nlc3QoIi5ldF9wYl9tb2R1bGUiKS50cmlnZ2VyKCJtb3VzZWxlYXZlIiksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLmNsb3Nlc3QoIi5ldF9wYl9tb2R1bGUiKS50cmlnZ2VyKCJtb3VzZWVudGVyIil9KSwxKX0pKX19KSl9fSx3aW5kb3cuZXRfbG9hZF9ldmVudF9maXJlZD9odCgpOiJ1bmRlZmluZWQiIT10eXBlb2YgZ29vZ2xlJiZ2b2lkIDAhPT1nb29nbGUubWFwcyYmZ29vZ2xlLm1hcHMuZXZlbnQuYWRkRG9tTGlzdGVuZXIod2luZG93LCJsb2FkIiwoZnVuY3Rpb24oKXtodCgpfSkpfW4oIi5ldF9wYl9zaG9wLCAuZXRfcGJfd2NfdXBzZWxscywgLmV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMiKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyksZT0oMCxhLmRlZmF1bHQpKHQuZGF0YSgiaWNvbiIpKXx8IiI9PT10LmRhdGEoImljb24iKT8iIjp0LmRhdGEoImljb24iKSxpPSgwLGEuZGVmYXVsdCkodC5kYXRhKCJpY29uLXRhYmxldCIpKXx8IiI9PT10LmRhdGEoImljb24tdGFibGV0Iik/IiI6dC5kYXRhKCJpY29uLXRhYmxldCIpLG89KDAsYS5kZWZhdWx0KSh0LmRhdGEoImljb24tcGhvbmUiKSl8fCIiPT09dC5kYXRhKCJpY29uLXBob25lIik/IiI6dC5kYXRhKCJpY29uLXBob25lIikscj0oMCxhLmRlZmF1bHQpKHQuZGF0YSgiaWNvbi1zdGlja3kiKSl8fCIiPT09dC5kYXRhKCJpY29uLXN0aWNreSIpPyIiOnQuZGF0YSgiaWNvbi1zdGlja3kiKSxzPXQuZmluZCgiLmV0X292ZXJsYXkiKTtpZighcy5sZW5ndGgmJnQuaGFzQ2xhc3MoImV0X3BiX3djX3JlbGF0ZWRfcHJvZHVjdHMiKSYmKHM9dC5maW5kKCIuZXRfcGJfZXh0cmFfb3ZlcmxheSIpLHQ9cy5jbG9zZXN0KCIuZXRfcGJfbW9kdWxlX2lubmVyIikucGFyZW50KCksZT0oMCxhLmRlZmF1bHQpKHQuZGF0YSgiaWNvbiIpKXx8IiI9PT10LmRhdGEoImljb24iKT8iIjp0LmRhdGEoImljb24iKSxpPSgwLGEuZGVmYXVsdCkodC5kYXRhKCJpY29uLXRhYmxldCIpKXx8IiI9PT10LmRhdGEoImljb24tdGFibGV0Iik/IiI6dC5kYXRhKCJpY29uLXRhYmxldCIpLG89KDAsYS5kZWZhdWx0KSh0LmRhdGEoImljb24tcGhvbmUiKSl8fCIiPT09dC5kYXRhKCJpY29uLXBob25lIik/IiI6dC5kYXRhKCJpY29uLXBob25lIikscj0oMCxhLmRlZmF1bHQpKHQuZGF0YSgiaWNvbi1zdGlja3kiKSl8fCIiPT09dC5kYXRhKCJpY29uLXN0aWNreSIpPyIiOnQuZGF0YSgiaWNvbi1zdGlja3kiKSksIiIhPT1lJiZzLmF0dHIoImRhdGEtaWNvbiIsZSkuYWRkQ2xhc3MoImV0X3BiX2lubGluZV9pY29uIiksIiIhPT1pJiZzLmF0dHIoImRhdGEtaWNvbi10YWJsZXQiLGkpLmFkZENsYXNzKCJldF9wYl9pbmxpbmVfaWNvbl90YWJsZXQiKSwiIiE9PW8mJnMuYXR0cigiZGF0YS1pY29uLXBob25lIixvKS5hZGRDbGFzcygiZXRfcGJfaW5saW5lX2ljb25fcGhvbmUiKSwiIiE9PXImJnMuYXR0cigiZGF0YS1pY29uLXN0aWNreSIscikuYWRkQ2xhc3MoImV0X3BiX2lubGluZV9pY29uX3N0aWNreSIpLHQuaGFzQ2xhc3MoImV0X3BiX3Nob3AiKSl7dmFyIGM9dC5maW5kKCJsaS5wcm9kdWN0IiksbD10LmF0dHIoImRhdGEtc2hvcnRjb2RlX2luZGV4IiksXz0iZXRfcGJfc2hvcF9pdGVtXyIuY29uY2F0KGwpO2MubGVuZ3RoPjAmJmMuZWFjaCgoZnVuY3Rpb24odCxlKXtuKGUpLmFkZENsYXNzKCIiLmNvbmNhdChfLCJfIikuY29uY2F0KHQpKX0pKX19KSksbigiLmV0X3BiX3djX2NhcnRfdG90YWxzIikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1kLmlzQnVpbGRlcj9uKCIuZXRfcGJfbW9kdWxlX2lubmVyIix0aGlzKTpuKHRoaXMpLGU9e307bi5lYWNoKHQuZGF0YSgpLChmdW5jdGlvbihuKXtpZihuLmluY2x1ZGVzKCJidXR0b25OYW1lIikpe3ZhciBpPXQuZGF0YShuKSxhPXQuZGF0YSgiIi5jb25jYXQoaSwiLWljb24iKSl8fCIiLG89dC5kYXRhKCIiLmNvbmNhdChpLCItaWNvbi10YWJsZXQiKSl8fCIiLHI9dC5kYXRhKCIiLmNvbmNhdChpLCItaWNvbi1waG9uZSIpKXx8IiI7ZVtpXT17aWNvbjphLCJpY29uLXRhYmxldCI6bywiaWNvbi1waG9uZSI6cixjbGFzczp0LmRhdGEoImJ1dHRvbi1jbGFzcyIpfX19KSksbi5lYWNoKGUsKGZ1bmN0aW9uKGUsbil7dmFyIGk9dC5maW5kKCdidXR0b25bbmFtZT0iJy5jb25jYXQoZSwnIl06ZXEoMCknKSk7MD09PWkubGVuZ3RoJiYoaT10LmZpbmQoIi4iLmNvbmNhdChlKSkpLGkuYWRkQ2xhc3Mobi5jbGFzcyksaS5hdHRyKCJkYXRhLWljb24iLG4uaWNvbiksaS5hdHRyKCJkYXRhLWljb24tdGFibGV0IixuWyJpY29uLXRhYmxldCJdKSxpLmF0dHIoImRhdGEtaWNvbi1waG9uZSIsblsiaWNvbi1waG9uZSJdKX0pKX0pKSxxLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQsZSxpPW4odGhpcyksYT1pLmRhdGEoImJhY2tncm91bmQtbGF5b3V0Iiksbz1pLmRhdGEoImJhY2tncm91bmQtbGF5b3V0LWhvdmVyIikscj1pLmRhdGEoImJhY2tncm91bmQtbGF5b3V0LXRhYmxldCIpLHM9aS5kYXRhKCJiYWNrZ3JvdW5kLWxheW91dC1waG9uZSIpO2kuaGFzQ2xhc3MoImV0X3BiX2J1dHRvbl9tb2R1bGVfd3JhcHBlciIpP2k9aS5maW5kKCI+IC5ldF9wYl9idXR0b24iKTppLmhhc0NsYXNzKCJldF9wYl9nYWxsZXJ5Iik/KHQ9aS5maW5kKCIuZXRfcGJfZ2FsbGVyeV9pdGVtIiksaT1pLmFkZCh0KSk6aS5oYXNDbGFzcygiZXRfcGJfcG9zdF9zbGlkZXIiKT8odD1pLmZpbmQoIi5ldF9wYl9zbGlkZSIpLGk9aS5hZGQodCkpOmkuaGFzQ2xhc3MoImV0X3BiX3NsaWRlIikmJihlPWkuY2xvc2VzdCgiLmV0X3BiX3NsaWRlciIpLGk9aS5hZGQoZSkpO3ZhciBjPSJldF9wYl9iZ19sYXlvdXRfbGlnaHQgZXRfcGJfYmdfbGF5b3V0X2RhcmsgZXRfcGJfdGV4dF9jb2xvcl9kYXJrIixsPSJldF9wYl9iZ19sYXlvdXRfIi5jb25jYXQoYSksXz0iZXRfcGJfYmdfbGF5b3V0XyIuY29uY2F0KG8pLGQ9ImxpZ2h0Ij09PWE/ImV0X3BiX3RleHRfY29sb3JfZGFyayI6IiIscD0ibGlnaHQiPT09bz8iZXRfcGJfdGV4dF9jb2xvcl9kYXJrIjoiIjtyJiYoYys9IiBldF9wYl9iZ19sYXlvdXRfbGlnaHRfdGFibGV0IGV0X3BiX2JnX2xheW91dF9kYXJrX3RhYmxldCBldF9wYl90ZXh0X2NvbG9yX2RhcmtfdGFibGV0IixsKz0iIGV0X3BiX2JnX2xheW91dF8iLmNvbmNhdChyLCJfdGFibGV0IiksXys9IiBldF9wYl9iZ19sYXlvdXRfIi5jb25jYXQobywiX3RhYmxldCIpLGQrPSJsaWdodCI9PT1yPyIgZXRfcGJfdGV4dF9jb2xvcl9kYXJrX3RhYmxldCI6IiIscCs9ImxpZ2h0Ij09PW8/IiBldF9wYl90ZXh0X2NvbG9yX2RhcmtfdGFibGV0IjoiIikscyYmKGMrPSIgZXRfcGJfYmdfbGF5b3V0X2xpZ2h0X3Bob25lIGV0X3BiX2JnX2xheW91dF9kYXJrX3Bob25lIGV0X3BiX3RleHRfY29sb3JfZGFya19waG9uZSIsbCs9IiBldF9wYl9iZ19sYXlvdXRfIi5jb25jYXQocywiX3Bob25lIiksXys9IiBldF9wYl9iZ19sYXlvdXRfIi5jb25jYXQobywiX3Bob25lIiksZCs9ImxpZ2h0Ij09PXM/IiBldF9wYl90ZXh0X2NvbG9yX2RhcmtfcGhvbmUiOiIiLHArPSJsaWdodCI9PT1vPyIgZXRfcGJfdGV4dF9jb2xvcl9kYXJrX3Bob25lIjoiIiksaS5vbigibW91c2VlbnRlciIsKGZ1bmN0aW9uKCl7aS5yZW1vdmVDbGFzcyhjKSxpLmFkZENsYXNzKF8pLGkuaGFzQ2xhc3MoImV0X3BiX2F1ZGlvX21vZHVsZSIpJiYiIiE9PXAmJmkuYWRkQ2xhc3MocCl9KSksaS5vbigibW91c2VsZWF2ZSIsKGZ1bmN0aW9uKCl7aS5yZW1vdmVDbGFzcyhjKSxpLmFkZENsYXNzKGwpLGkuaGFzQ2xhc3MoImV0X3BiX2F1ZGlvX21vZHVsZSIpJiYiIiE9PWQmJmkuYWRkQ2xhc3MoZCl9KSl9KSksKEwubGVuZ3RofHxkLmlzQnVpbGRlcnx8bigiLmV0X3BiX2FqYXhfcGFnaW5hdGlvbl9jb250YWluZXIiKS5sZW5ndGg+MCkmJih3aW5kb3cuZXRfcGJfY2lyY2xlX2NvdW50ZXJfaW5pdD1mdW5jdGlvbih0LGUsaSl7aWYoISh0LndpZHRoKCk8PTApKXt2YXIgYT1BdCgpO2l0PWE7dmFyIG89IiI7dm9pZCAwIT09aSYmIiIhPT1pP289Ii0iLmNvbmNhdChpKToiZGVza3RvcCIhPT1hJiYobz0iLSIuY29uY2F0KGEpKTt2YXIgcj10LmRhdGEoImJhci1iZy1jb2xvciIpLHM9dC5kYXRhKCJiYXItYmctY29sb3IiLmNvbmNhdChvKSk7dm9pZCAwIT09cyYmIiIhPT1zJiYocj1zKTt2YXIgYz10LmRhdGEoImNvbG9yIil8fCIjMDAwMDAwIixsPXQuZGF0YSgiY29sb3IiLmNvbmNhdChvKSk7dm9pZCAwIT09bCYmIiIhPT1sJiYoYz1sKTt2YXIgXz10LmRhdGEoImFscGhhIil8fCIwLjEiLGQ9dC5kYXRhKCJhbHBoYSIuY29uY2F0KG8pKTt2b2lkIDA9PT1kfHwiIj09PWR8fGlzTmFOKGQpfHwoXz1kKSx0LmVhc3lQaWVDaGFydCh7YW5pbWF0ZTp7ZHVyYXRpb246MTgwMCxlbmFibGVkOiEwfSxzaXplOjAhPT10LndpZHRoKCk/dC53aWR0aCgpOjEwLGJhckNvbG9yOnIsdHJhY2tDb2xvcjpjLHRyYWNrQWxwaGE6XyxzY2FsZUNvbG9yOiExLGxpbmVXaWR0aDo1LG9uU3RhcnQ6ZnVuY3Rpb24oKXtuKHRoaXMuZWwpLmZpbmQoIi5wZXJjZW50IHAiKS5jc3Moe3Zpc2liaWxpdHk6InZpc2libGUifSl9LG9uU3RlcDpmdW5jdGlvbih0LGUsaSl7bih0aGlzLmVsKS5maW5kKCIucGVyY2VudC12YWx1ZSIpLnRleHQoTWF0aC5yb3VuZChwYXJzZUludChpKSkpfSxvblN0b3A6ZnVuY3Rpb24odCxlKXtuKHRoaXMuZWwpLmZpbmQoIi5wZXJjZW50LXZhbHVlIikudGV4dChuKHRoaXMuZWwpLmRhdGEoIm51bWJlci12YWx1ZSIpKX19KX19LHdpbmRvdy5ldF9wYl9yZWluaXRfY2lyY2xlX2NvdW50ZXJzPWZ1bmN0aW9uKHQpe3QuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLmZpbmQoIi5ldF9wYl9jaXJjbGVfY291bnRlcl9pbm5lciIpO3dpbmRvdy5ldF9wYl9jaXJjbGVfY291bnRlcl9pbml0KHQsITEpLHQub24oIm1vdXNlb3ZlciIsKGZ1bmN0aW9uKGUpe3dpbmRvdy5ldF9wYl9jaXJjbGVfY291bnRlcl91cGRhdGUodCxlLCJob3ZlciIpfSkpLHQub24oIm1vdXNlbGVhdmUiLChmdW5jdGlvbihlKXt3aW5kb3cuZXRfcGJfY2lyY2xlX2NvdW50ZXJfdXBkYXRlKHQsZSl9KSksdC5vbigiY29udGFpbmVyV2lkdGhDaGFuZ2VkIiwoZnVuY3Rpb24oZSxpKXsodD1uKGUudGFyZ2V0KSkuZmluZCgiY2FudmFzIikucmVtb3ZlKCksdC5yZW1vdmVEYXRhKCJlYXN5UGllQ2hhcnQiKSx3aW5kb3cuZXRfcGJfY2lyY2xlX2NvdW50ZXJfaW5pdCh0LCEwLGkpfSkpO3ZhciBlPXQuYXR0cigiZGF0YS1zdGlja3ktaWQiKTtlJiYod2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIkVUQnVpbGRlclN0aWNreVN0YXJ0IiwoZnVuY3Rpb24obil7ZT09PW4uZGV0YWlsLnN0aWNreUlkJiZ3aW5kb3cuZXRfcGJfY2lyY2xlX2NvdW50ZXJfdXBkYXRlKHQsZXZlbnQsInN0aWNreSIpfSkpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJFVEJ1aWxkZXJTdGlja3lFbmQiLChmdW5jdGlvbihuKXtlPT09bi5kZXRhaWwuc3RpY2t5SWQmJndpbmRvdy5ldF9wYl9jaXJjbGVfY291bnRlcl91cGRhdGUodCxldmVudCl9KSkpfSkpfSx3aW5kb3cuZXRfcGJfcmVpbml0X2NpcmNsZV9jb3VudGVycyhMKSksd2luZG93LmV0X3BiX2NpcmNsZV9jb3VudGVyX3VwZGF0ZT1mdW5jdGlvbih0LGUsaSl7aWYodC5pcygiOnZpc2libGUiKSYmdm9pZCAwIT09dC5kYXRhKCJlYXN5UGllQ2hhcnQiKSl7aWYoIm1vdXNlbGVhdmUiPT09ZS50eXBlJiZ0LmNsb3Nlc3QoIi5ldF9wYl9zdGlja3kiKS5sZW5ndGg+MCYmKGk9InN0aWNreSIpLG4oZS50YXJnZXQpLmxlbmd0aD4wJiYoIm1vdXNlb3ZlciI9PT1lLnR5cGV8fCJtb3VzZWxlYXZlIj09PWUudHlwZSkpe3ZhciBhPSExLG89dC5kYXRhKCJiYXItYmctY29sb3ItaG92ZXIiKSxyPXQuZGF0YSgiY29sb3ItaG92ZXIiKSxzPXQuZGF0YSgiYWxwaGEtaG92ZXIiKTtpZigodm9pZCAwIT09byYmIiIhPT1vfHx2b2lkIDAhPT1yJiYiIiE9PXJ8fHZvaWQgMCE9PXMmJiIiIT09cykmJihhPSEwKSwhYSlyZXR1cm59dmFyIGM9W107dm9pZCAwIT09aSYmIiIhPT1pJiYoYz1baV0pLHQudHJpZ2dlcigiY29udGFpbmVyV2lkdGhDaGFuZ2VkIixjKSxbIkVUQnVpbGRlclN0aWNreVN0YXJ0IiwiRVRCdWlsZGVyU3RpY2t5RW5kIl0uaW5jbHVkZXMoZS50eXBlKSYmIiI9PT10LmZpbmQoIi5wZXJjZW50LXZhbHVlIikudGV4dCgpfHwodC5kYXRhKCJlYXN5UGllQ2hhcnQiKS5kaXNhYmxlQW5pbWF0aW9uKCksdC5kYXRhKCJlYXN5UGllQ2hhcnQiKS51cGRhdGUodC5kYXRhKCJudW1iZXItdmFsdWUiKSkpfX0sKEQubGVuZ3RofHxkLmlzQnVpbGRlcnx8bigiLmV0X3BiX2FqYXhfcGFnaW5hdGlvbl9jb250YWluZXIiKS5sZW5ndGg+MCkmJih3aW5kb3cuZXRfcGJfcmVpbml0X251bWJlcl9jb3VudGVycz1mdW5jdGlvbih0KXt2YXIgZT1uKCJib2R5IikuaGFzQ2xhc3MoImdlY2tvIik7ZnVuY3Rpb24gaSh0LGUpe3JldHVybiB0LnRvU3RyaW5nKCkucmVwbGFjZSgvXEIoPz0oXGR7M30pKyg/IVxkKSkvZyxlKX1mdW5jdGlvbiBhKHQpe3JldHVybiB0LmRhdGEoIm51bWJlci1zZXBhcmF0b3IiKX1uLmZuLmZpdFRleHQmJnQuZmluZCgiLnBlcmNlbnQgcCIpLmZpdFRleHQoLjMpLHQuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO3QuZWFzeVBpZUNoYXJ0KHthbmltYXRlOntkdXJhdGlvbjoxODAwLGVuYWJsZWQ6ITB9LHNpemU6ZT8xOjAsdHJhY2tDb2xvcjohMSxzY2FsZUNvbG9yOiExLGxpbmVXaWR0aDowLG9uU3RhcnQ6ZnVuY3Rpb24oZSxvKXtuKHRoaXMuZWwpLmFkZENsYXNzKCJhY3RpdmUiKSxlPT09byYmbih0aGlzLmVsKS5maW5kKCIucGVyY2VudC12YWx1ZSIpLnRleHQoaShuKHRoaXMuZWwpLmRhdGEoIm51bWJlci12YWx1ZSIpLGEodCkpKX0sb25TdGVwOmZ1bmN0aW9uKGUsbyxyKXtyIT1vJiZuKHRoaXMuZWwpLmZpbmQoIi5wZXJjZW50LXZhbHVlIikudGV4dChpKE1hdGgucm91bmQocGFyc2VJbnQocikpLGEodCkpKX0sb25TdG9wOmZ1bmN0aW9uKGUsbyl7bih0aGlzLmVsKS5maW5kKCIucGVyY2VudC12YWx1ZSIpLnRleHQoaShuKHRoaXMuZWwpLmRhdGEoIm51bWJlci12YWx1ZSIpLGEodCkpKX19KX0pKX0sd2luZG93LmV0X3BiX3JlaW5pdF9udW1iZXJfY291bnRlcnMoRCkpLHdpbmRvdy5ldF9hcHBseV9wYXJhbGxheD1mdW5jdGlvbigpe2lmKG4odGhpcykubGVuZ3RoJiZ2b2lkIDAhPT1uKHRoaXMpJiZ2b2lkIDAhPT1uKHRoaXMpLm9mZnNldCgpKXt2YXIgdD1iO3Y/dD1wLmpRdWVyeSgiI2V0LWZiLWFwcCIpOncoKSYmKHQ9bih3aW5kb3cpKTt2YXIgZT1uKHRoaXMpLGE9ZS5wYXJlbnQoKSxvPXkoKT9lLm9mZnNldCgpLnRvcC8yOmUub2Zmc2V0KCkudG9wLHI9dC5zY3JvbGxUb3AoKTtpZighYS5oYXNDbGFzcygiZXRfaXNfYW5pbWF0aW5nIikpe2lmKGkpe3ZhciBzPSIjZGl2aS1sYXlvdXQtaWZyYW1lLSIuY29uY2F0KEVUQmxvY2tMYXlvdXRNb2R1bGVzU2NyaXB0LmJsb2NrSWQpO28rPXAualF1ZXJ5KHMpLm9mZnNldCgpLnRvcH12YXIgYyxsPS4zKihyK2IuaGVpZ2h0KCktbyk7Yz0idHJhbnNsYXRlKDAsICIuY29uY2F0KGwsInB4KSIpLChlLmNoaWxkcmVuKCIuZXRfcGFyYWxsYXhfYmdfd3JhcCIpLmxlbmd0aD4wP2UuY2hpbGRyZW4oIi5ldF9wYXJhbGxheF9iZ193cmFwIikuZmluZCgiLmV0X3BhcmFsbGF4X2JnIik6ZS5jaGlsZHJlbigiLmV0X3BhcmFsbGF4X2JnIikpLmNzcyh7Ii13ZWJraXQtdHJhbnNmb3JtIjpjLCItbW96LXRyYW5zZm9ybSI6YywiLW1zLXRyYW5zZm9ybSI6Yyx0cmFuc2Zvcm06Y30pfX19LHdpbmRvdy5ldF9wYXJhbGxheF9zZXRfaGVpZ2h0PWZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKSxlPWQuaXNCdWlsZGVyJiZ0LnBhcmVudCgiLmV0X3BiX2Z1bGxzY3JlZW4iKS5sZW5ndGgmJmIuaGVpZ2h0KCk+dC5pbm5lckhlaWdodCgpP2IuaGVpZ2h0KCk6dC5pbm5lckhlaWdodCgpLGk9LjMqYi5oZWlnaHQoKStlO20mJihpKz1wLmpRdWVyeSgiI2V0X3BiX2xheW91dCAuaW5zaWRlIikub2Zmc2V0KCkudG9wKSx0LmZpbmQoIi5ldF9wYXJhbGxheF9iZyIpLmNzcyh7aGVpZ2h0OiIiLmNvbmNhdChpLCJweCIpfSl9LHdpbmRvdy5ldF9hcHBseV9idWlsZGVyX2Nzc19wYXJhbGxheD1mdW5jdGlvbigpe2lmKGQuaXNCdWlsZGVyfHxpKXt2YXIgdD1uKHRoaXMpLGU9dC5jaGlsZHJlbigiLmV0X3BhcmFsbGF4X2JnIik7aWYoZS5jc3Moe3dpZHRoOiIiLGhlaWdodDoiIix0b3A6IiIsbGVmdDoiIixiYWNrZ3JvdW5kQXR0YWNobWVudDoiIn0pLCF3KCl8fHYpe3ZhciBhPXY/cC5qUXVlcnkoIiNldC1mYi1hcHAiKTpiLG89YS5zY3JvbGxUb3AoKSxyPW0/cC5qUXVlcnkoIiNldF9wYl9sYXlvdXQgLmluc2lkZSIpLm9mZnNldCgpLnRvcDowLHM9eSgpPzI6MSxjPXQub2Zmc2V0KCksbD15KCk/Yy50b3AvMjpjLnRvcDtpJiYoYT1wLmpRdWVyeSgoMCxfLmdldENvbnRlbnRBcmVhU2VsZWN0b3IpKHAsITApKSxyPXAualF1ZXJ5KCIjZGl2aS1sYXlvdXQtaWZyYW1lLSIuY29uY2F0KEVUQmxvY2tMYXlvdXRNb2R1bGVzU2NyaXB0LmJsb2NrSWQpKS5vZmZzZXQoKS50b3Asbz1hLm9mZnNldCgpLnRvcCksZS5jc3Moe3dpZHRoOiIiLmNvbmNhdChuKHdpbmRvdykud2lkdGgoKSwicHgiKSxoZWlnaHQ6IiIuY29uY2F0KGEuaW5uZXJIZWlnaHQoKSpzLCJweCIpLHRvcDoiIi5jb25jYXQoby1yLWwsInB4IiksbGVmdDoiIi5jb25jYXQoMC1jLmxlZnQsInB4IiksYmFja2dyb3VuZEF0dGFjaG1lbnQ6InNjcm9sbCJ9KX19fSxuKCIuZXRfcGJfYWNjb3JkaW9uIikub24oInRvdWNoc3RhcnQiLChmdW5jdGlvbih0KXtpZigiZGVza3RvcCIhPT1BdCgpKXt2YXIgZT1uKHQudGFyZ2V0KTsoZS5oYXNDbGFzcygiZXRfcGJfdG9nZ2xlX3RpdGxlIil8fGUuaGFzQ2xhc3MoImV0X2ZiX3RvZ2dsZV9vdmVybGF5IikpJiYodC5wcmV2ZW50RGVmYXVsdCgpLGUudHJpZ2dlcigiY2xpY2siKSl9fSkpLG4oImJvZHkiKS5vbigiY2xpY2siLCIuZXRfcGJfdG9nZ2xlX3RpdGxlLCAuZXRfZmJfdG9nZ2xlX292ZXJsYXkiLChmdW5jdGlvbigpe3ZhciB0LGUsaT1uKHRoaXMpLmNsb3Nlc3QoIi5ldF9wYl90b2dnbGUiKSxhPWkucGFyZW50cygiLmV0X3BiX3NlY3Rpb24iKSxvPWkuZmluZCgiLmV0X3BiX3RvZ2dsZV9jb250ZW50Iikscj1pLmNsb3Nlc3QoIi5ldF9wYl9hY2NvcmRpb24iKSxzPXIubGVuZ3RoLGM9ci5oYXNDbGFzcygiZXRfcGJfYWNjb3JkaW9uX3RvZ2dsaW5nIiksbD1uKHdpbmRvdykuc2Nyb2xsVG9wKCksXz0wLGQ9aS5oYXNDbGFzcygiZXRfcGJfdG9nZ2xlX2Nsb3NlIik/ImNsb3NlZCI6Im9wZW5lZCI7aWYocyl7aWYoaS5oYXNDbGFzcygiZXRfcGJfdG9nZ2xlX29wZW4iKXx8YylyZXR1cm4hMTtyLmFkZENsYXNzKCJldF9wYl9hY2NvcmRpb25fdG9nZ2xpbmciKSx0PWkuc2libGluZ3MoIi5ldF9wYl90b2dnbGVfb3BlbiIpfWlmKCFvLmlzKCI6YW5pbWF0ZWQiKSYmKG8uc2xpZGVUb2dnbGUoNzAwLChmdW5jdGlvbigpeyFmdW5jdGlvbih0LGUsbil7ImNsb3NlZCI9PT10P2UucmVtb3ZlQ2xhc3MoImV0X3BiX3RvZ2dsZV9jbG9zZSIpLmFkZENsYXNzKCJldF9wYl90b2dnbGVfb3BlbiIpOmUucmVtb3ZlQ2xhc3MoImV0X3BiX3RvZ2dsZV9vcGVuIikuYWRkQ2xhc3MoImV0X3BiX3RvZ2dsZV9jbG9zZSIpLG4uaGFzQ2xhc3MoImV0X3BiX3NlY3Rpb25fcGFyYWxsYXgiKSYmIW4uY2hpbGRyZW4oKS5oYXNDbGFzcygiZXRfcGJfcGFyYWxsYXhfY3NzIikmJmV0X3BhcmFsbGF4X3NldF9oZWlnaHQuYmluZChuKSgpLHdpbmRvdy5ldF9yZWluaXRfd2F5cG9pbnRfbW9kdWxlcygpfShkLGksYSl9KSkscykpe3ZhciBwPWZ1bmN0aW9uKCl7dC5yZW1vdmVDbGFzcygiZXRfcGJfdG9nZ2xlX29wZW4iKS5hZGRDbGFzcygiZXRfcGJfdG9nZ2xlX2Nsb3NlIiksci5yZW1vdmVDbGFzcygiZXRfcGJfYWNjb3JkaW9uX3RvZ2dsaW5nIiksZT1pLm9mZnNldCgpLG4oIiN3cGFkbWluYmFyIikubGVuZ3RoJiYoXys9bigiI3dwYWRtaW5iYXIiKS5oZWlnaHQoKSksbigiI3RvcC1oZWFkZXIiKS5sZW5ndGgmJihfKz1uKCIjdG9wLWhlYWRlciIpLmhlaWdodCgpKSxuKCIjbWFpbi1oZWFkZXIiKS5sZW5ndGgmJiF3aW5kb3cuZXRfaXNfdmVydGljYWxfbmF2JiYoXys9bigiI21haW4taGVhZGVyIikuaGVpZ2h0KCkpLGwrXz5lLnRvcCYmbigiaHRtbCwgYm9keSIpLmFuaW1hdGUoe3Njcm9sbFRvcDplLnRvcC1fLTUwfSl9O3QuZmluZCgiLmV0X3BiX3RvZ2dsZV9jb250ZW50IikuaXMoIjp2aXNpYmxlIik/dC5maW5kKCIuZXRfcGJfdG9nZ2xlX2NvbnRlbnQiKS5zbGlkZVRvZ2dsZSg3MDAscCk6KHQuZmluZCgiLmV0X3BiX3RvZ2dsZV9jb250ZW50IikuaGlkZSgpLHAoKSl9fSkpO3ZhciBidD0vXlthLXpBLVowLTkuISMkJSYnKitcLz0/Xl9ge3x9fi1dK0BbYS16QS1aMC05XSg/OlthLXpBLVowLTktXXswLDYxfVthLXpBLVowLTldKT8oPzpcLlthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjF9W2EtekEtWjAtOV0pPykqJC8sdnQ9bigiLmV0X3BiX2NvbnRhY3RfZm9ybV9jb250YWluZXIiKSxtdD0hZC5pc0J1aWxkZXImJm4oIi5ldF9wYl9tb2R1bGUuZXRfcGJfcmVjYXB0Y2hhX2VuYWJsZWQiKS5sZW5ndGg+MCxndD1kb2N1bWVudC5ib2R5LmlubmVySFRNTC5tYXRjaCgvPHNjcmlwdCBbXj5dKnNyYz0iW14iXS4qZ29vZ2xlLmNvbVwvcmVjYXB0Y2hhXC9hcGkuanNcPy4qcmVuZGVyLioiW14+XSo+KFtcc1xTXSo/KTxcL3NjcmlwdD4vZ2ltKSx3dD1uKCIjZXQtcmVjYXB0Y2hhLXYzLWpzIikseXQ9Z3QmJmd0Lmxlbmd0aD53dC5sZW5ndGg7ZnVuY3Rpb24geHQodCl7dmFyIGU9dHx8aztlJiZlLmxlbmd0aCYmZS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcykucGFyZW50KCIuZXRfcGJfc2VjdGlvbiIpLGU9bih0aGlzKS5maW5kKCIuZXRfcGJfc2xpZGUiKSxpPWUuZmluZCgiLmV0X3BiX2NvbnRhaW5lciIpLGE9MCxvPTAscj1uKHRoaXMpLmhhc0NsYXNzKCJldF9wYl9wb3N0X3NsaWRlcl9pbWFnZV90b3AiKSxzPW4odGhpcykuaGFzQ2xhc3MoImV0X3BiX3Bvc3Rfc2xpZGVyX2ltYWdlX2JvdHRvbSIpO2lmKHQuaXMoIi5ldF9wYl9zZWN0aW9uX2ZpcnN0IikpcmV0dXJuITA7aS5jc3MoImhlaWdodCIsIiIpLGUuYWRkQ2xhc3MoImV0X3BiX3RlbXBfc2xpZGUiKSwib2JqZWN0Ij09PXUobih0aGlzKS5kYXRhKCJldF9wYl9zaW1wbGVfc2xpZGVyIikpJiZuKHRoaXMpLmRhdGEoImV0X3BiX3NpbXBsZV9zbGlkZXIiKS5ldF9maXhfc2xpZGVyX2NvbnRlbnRfaW1hZ2VzKCksZS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PXBhcnNlRmxvYXQobih0aGlzKS5pbm5lckhlaWdodCgpKSxlPW4odGhpcykuZmluZCgiLmV0X3BiX3NsaWRlX2ltYWdlIiksaT1wYXJzZUZsb2F0KG4odGhpcykuZGF0YSgiYWRqdXN0ZWRIZWlnaHQiKSksYz1pc05hTihpKT8wOmk7dD1jJiZjPHQ/dC1jOnQsKHJ8fHMpJiYoZS5sZW5ndGg/KG89cj9wYXJzZUZsb2F0KGUuY3NzKCJtYXJnaW4tdG9wIikpOnBhcnNlRmxvYXQoZS5jc3MoIm1hcmdpbi1ib3R0b20iKSksbys9MTApOm4odGhpcykuZmluZCgiLmV0X3BiX2NvbnRhaW5lciIpLmFkZENsYXNzKCJldF9wYl9ub19pbWFnZSIpKSwwIT09bih0aGlzKS5maW5kKCIuZXRfcGJfc2xpZGVfZGVzY3JpcHRpb24iKS5sZW5ndGgmJjAhPT1uKHRoaXMpLmZpbmQoIi5ldF9wYl9zbGlkZV9kZXNjcmlwdGlvbiIpLmh0bWwoKS50cmltKCkubGVuZ3RofHxuKHRoaXMpLmZpbmQoIi5ldF9wYl9jb250YWluZXIiKS5hZGRDbGFzcygiZXRfcGJfZW1wdHlfc2xpZGUiKSxhPHQmJihhPXQpfSkpLGErbzwxP2kuY3NzKCJoZWlnaHQiLCIiKTppLmNzcygiaGVpZ2h0IiwiIi5jb25jYXQoYStvLCJweCIpKSxlLnJlbW92ZUNsYXNzKCJldF9wYl90ZW1wX3NsaWRlIiksZS5maWx0ZXIoIi5ldC1wYi1hY3RpdmUtc2xpZGUiKS5maW5kKCIuZXRfcGJfc2xpZGVfaW1hZ2UiKS5jaGlsZHJlbigiaW1nIikuYWRkQ2xhc3MoImFjdGl2ZSIpfSkpfSFkLmlzQnVpbGRlciYmKHl0fHxtdCYmYXQmJmF0LmlzRW5hYmxlZCgpKSYmbigiYm9keSIpLmFkZENsYXNzKCJldF9wYl9yZWNhcHRjaGFfZW5hYmxlZCIpLHZ0Lmxlbmd0aCYmdnQuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLGU9dC5maW5kKCJmb3JtIiksaT12b2lkIDAhPT10LmRhdGEoInJlZGlyZWN0X3VybCIpP3QuZGF0YSgicmVkaXJlY3RfdXJsIik6IiI7ZS5maW5kKCJpbnB1dFt0eXBlPWNoZWNrYm94XSIpLm9uKCJjaGFuZ2UiLChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyksZT10LnNpYmxpbmdzKCJpbnB1dFt0eXBlPXRleHRdIikuZmlyc3QoKSxpPXQucHJvcCgiY2hlY2tlZCIpO2UudmFsKGk/ZS5kYXRhKCJjaGVja2VkIik6ZS5kYXRhKCJ1bmNoZWNrZWQiKSl9KSksZS5vbigic3VibWl0IiwoZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBhPW4odGhpcyk7aWYoITAhPT1hLmRhdGEoInN1Ym1pdHRlZCIpKXt2YXIgbz1hLmZpbmQoJ2lucHV0W3R5cGU9dGV4dF0sIC5ldF9wYl9jaGVja2JveF9oYW5kbGUsIC5ldF9wYl9jb250YWN0X2ZpZWxkW2RhdGEtdHlwZT0icmFkaW8iXSwgdGV4dGFyZWEsIHNlbGVjdCcpLHI9YS5maW5kKCIuZXRfcGJfY29udGFjdF9jYXB0Y2hhIikscz10LmZpbmQoIi5ldC1wYi1jb250YWN0LW1lc3NhZ2UiKSxjPXZvaWQgMCE9PXQuZGF0YSgiZm9ybV91bmlxdWVfbnVtIik/dC5kYXRhKCJmb3JtX3VuaXF1ZV9udW0iKTowLGw9ITEsXz0iIixkPSIiLHA9W10sdT1bXSxoPW4uRGVmZXJyZWQoKTthdCYmdC5oYXNDbGFzcygiZXRfcGJfcmVjYXB0Y2hhX2VuYWJsZWQiKT9hdC5pbnRlcmFjdGlvbigiRGl2aS9Nb2R1bGUvQ29udGFjdEZvcm0vIi5jb25jYXQoYykpLnRoZW4oKGZ1bmN0aW9uKHQpe2gucmVzb2x2ZSh0KX0pKTpoLnJlc29sdmUoIiIpLG4ud2hlbihoKS5kb25lKChmdW5jdGlvbihlKXtpZihfPSI8dWw+IixvLnJlbW92ZUNsYXNzKCJldF9jb250YWN0X2Vycm9yIiksby5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyksZT0hMTsiY2hlY2tib3giPT09dC5kYXRhKCJmaWVsZF90eXBlIikmJihlPXQucGFyZW50cygiLmV0X3BiX2NvbnRhY3RfZmllbGQiKSkucmVtb3ZlQ2xhc3MoImV0X2NvbnRhY3RfZXJyb3IiKSwicmFkaW8iPT09dC5kYXRhKCJ0eXBlIikmJihlPSh0PXQuZmluZCgnaW5wdXRbdHlwZT0icmFkaW8iXScpKS5wYXJlbnRzKCIuZXRfcGJfY29udGFjdF9maWVsZCIpKTt2YXIgaSxhPXQuYXR0cigiaWQiKSxvPXQudmFsKCkscj10LnNpYmxpbmdzKCJsYWJlbCIpLmZpcnN0KCkudGV4dCgpLHM9dm9pZCAwIT09dC5kYXRhKCJmaWVsZF90eXBlIik/dC5kYXRhKCJmaWVsZF90eXBlIik6InRleHQiLGM9dm9pZCAwIT09dC5kYXRhKCJyZXF1aXJlZF9tYXJrIik/dC5kYXRhKCJyZXF1aXJlZF9tYXJrIik6Im5vdF9yZXF1aXJlZCIsZj12b2lkIDAhPT10LmRhdGEoIm9yaWdpbmFsX2lkIik/dC5kYXRhKCJvcmlnaW5hbF9pZCIpOiIiLGg9ITE7aWYoInJhZGlvIj09PXMpe2lmKDAhPT1lLmZpbmQoJ2lucHV0W3R5cGU9InJhZGlvIl0nKS5sZW5ndGgpe3M9InJhZGlvIjt2YXIgYj1lLmZpbmQoJ2lucHV0W3R5cGU9InJhZGlvIl0nKS5maXJzdCgpO2M9dm9pZCAwIT09Yi5kYXRhKCJyZXF1aXJlZF9tYXJrIik/Yi5kYXRhKCJyZXF1aXJlZF9tYXJrIik6Im5vdF9yZXF1aXJlZCIsbz0iIixlLmZpbmQoJ2lucHV0W3R5cGU9InJhZGlvIl06Y2hlY2tlZCcpJiYobz1lLmZpbmQoJ2lucHV0W3R5cGU9InJhZGlvIl06Y2hlY2tlZCcpLnZhbCgpKX1yPWUuZmluZCgiLmV0X3BiX2NvbnRhY3RfZm9ybV9sYWJlbCIpLnRleHQoKSxhPWUuZmluZCgnaW5wdXRbdHlwZT0icmFkaW8iXScpLmZpcnN0KCkuYXR0cigibmFtZSIpLGY9ZS5hdHRyKCJkYXRhLWlkIiksMD09PWUuZmluZCgnaW5wdXRbdHlwZT0icmFkaW8iXTpjaGVja2VkJykubGVuZ3RoJiYoaD0hMCl9aWYoImNoZWNrYm94Ij09PXMpe2lmKG89IiIsMCE9PWUuZmluZCgnaW5wdXRbdHlwZT0iY2hlY2tib3giXScpLmxlbmd0aCl7cz0iY2hlY2tib3giO3ZhciB2PWUuZmluZCgiLmV0X3BiX2NoZWNrYm94X2hhbmRsZSIpO2M9dm9pZCAwIT09di5kYXRhKCJyZXF1aXJlZF9tYXJrIik/di5kYXRhKCJyZXF1aXJlZF9tYXJrIik6Im5vdF9yZXF1aXJlZCIsZS5maW5kKCdpbnB1dFt0eXBlPSJjaGVja2VkIl06Y2hlY2tlZCcpJiYobz1bXSxlLmZpbmQoJ2lucHV0W3R5cGU9ImNoZWNrYm94Il06Y2hlY2tlZCcpLmVhY2goKGZ1bmN0aW9uKCl7by5wdXNoKG4odGhpcykudmFsKCkpfSkpLG89by5qb2luKCIsICIpKX1pZihlLmZpbmQoIi5ldF9wYl9jaGVja2JveF9oYW5kbGUiKS52YWwobyksMD09PShyPWUuZmluZCgiLmV0X3BiX2NvbnRhY3RfZm9ybV9sYWJlbCIpLnRleHQoKSkudHJpbSgpLmxlbmd0aCl7dmFyIG09ZS5maW5kKCcuZXRfcGJfY29udGFjdF9maWVsZF9jaGVja2JveCBpbnB1dFt0eXBlPSJjaGVja2JveCJdJyk7aWYobS5sZW5ndGg+MCl7dmFyIGc9W107bS5lYWNoKChmdW5jdGlvbigpe2cucHVzaChuKHRoaXMpLnZhbCgpKX0pKSwwPT09KHI9Zy5qb2luKCIsICIpKS50cmltKCkubGVuZ3RoJiYocj1ldF9wYl9jdXN0b20ud3JvbmdfY2hlY2tib3gpfX1hPWUuZmluZCgiLmV0X3BiX2NoZWNrYm94X2hhbmRsZSIpLmF0dHIoIm5hbWUiKSxmPWUuYXR0cigiZGF0YS1pZCIpLDA9PT1lLmZpbmQoJ2lucHV0W3R5cGU9ImNoZWNrYm94Il06Y2hlY2tlZCcpLmxlbmd0aCYmKGg9ITApfWlmKHI9ci5yZXBsYWNlKC8iL2csIiZxdW90OyIpLHQuaXMoIjp2aXNpYmxlIil8fCF0LnBhcmVudHMoIltkYXRhLWNvbmRpdGlvbmFsLWxvZ2ljXSIpLmxlbmd0aHx8ImhpZGRlbiI9PT10LmF0dHIoInR5cGUiKXx8InJhZGlvIj09PXQuYXR0cigidHlwZSIpKWlmKCJoaWRkZW4iIT09dC5hdHRyKCJ0eXBlIikmJiJyYWRpbyIhPT10LmF0dHIoInR5cGUiKXx8dC5wYXJlbnRzKCIuZXRfcGJfY29udGFjdF9maWVsZCIpLmlzKCI6dmlzaWJsZSIpKXtpZih2b2lkIDAhPT1hJiZwLnB1c2goe2ZpZWxkX2lkOmEsb3JpZ2luYWxfaWQ6ZixyZXF1aXJlZF9tYXJrOmMsZmllbGRfdHlwZTpzLGZpZWxkX2xhYmVsOnJ9KSwicmVxdWlyZWQiIT09Y3x8IiIhPT1vJiYhMCE9PWh8fHQuaXMoJ1tpZF49ImV0X3BiX2NvbnRhY3RfZXRfbnVtYmVyXyJdJyl8fCghMT09PWU/dC5hZGRDbGFzcygiZXRfY29udGFjdF9lcnJvciIpOmUuYWRkQ2xhc3MoImV0X2NvbnRhY3RfZXJyb3IiKSxsPSEwLCIiPT09KGk9cikmJihpPWV0X3BiX2N1c3RvbS5jYXB0Y2hhKSxkKz0iPGxpPiIuY29uY2F0KGksIjwvbGk+IikpLCJlbWFpbCI9PT1zKXt2YXIgdz1vLnRyaW0oKS50b0xvd2VyQ2FzZSgpLHk9ZnVuY3Rpb24odCl7aWYoNj50Lmxlbmd0aClyZXR1cm4hMTtpZighMT09PWZ1bmN0aW9uKHQsZSxuKXt2YXIgaT0odCsiIikuaW5kZXhPZigiQCIsMSk7cmV0dXJuLTEhPT1pJiZpfSh0KSlyZXR1cm4hMTt2YXIgZT10LnNwbGl0KCJAIiwyKSxuPWVbMF0saT1lWzFdO2lmKCEvXlthLXpBLVowLTkhIyQlJlwnKitcLz0/Xl9ge3x9flwuLV0rJC8udGVzdChuKSlyZXR1cm4hMTtpZigvXC57Mix9Ly50ZXN0KGkpKXJldHVybiExO2lmKHMoaSwiIFx0XG5cclwwXHYuIikhPT1pKXJldHVybiExO3ZhciBhPWkuc3BsaXQoIi4iKTtpZigyPmEubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbyBpbiBhKXt2YXIgcj1hW29dO2lmKHMociwiIFx0XG5cclwwXHYtIikhPT1yKXJldHVybiExO2lmKCEvXlthLXowLTktXSskL2kudGVzdChyKSlyZXR1cm4hMX1yZXR1cm4hMDtmdW5jdGlvbiBzKHQsZSl7dmFyIG49WyIgIiwiXG4iLCJcciIsIlx0IiwiXGYiLCJcdiIsIlx4YTAiLCJcdTIwMDAiLCJcdTIwMDEiLCJcdTIwMDIiLCJcdTIwMDMiLCJcdTIwMDQiLCJcdTIwMDUiLCJcdTIwMDYiLCJcdTIwMDciLCJcdTIwMDgiLCJcdTIwMDkiLCJcdTIwMGEiLCJcdTIwMGIiLCJcdTIwMjgiLCJcdTIwMjkiLCJcdTMwMDAiXS5qb2luKCIiKSxpPTAsYT0wO2Zvcih0Kz0iIixlJiYobj0oZSsiIikucmVwbGFjZSgvKFtbXF0oKS4/Lyp7fSskXjpdKS9nLCIkMSIpKSxpPXQubGVuZ3RoLGE9MDthPGk7YSsrKWlmKC0xPT09bi5pbmRleE9mKHQuY2hhckF0KGEpKSl7dD10LnN1YnN0cmluZyhhKTticmVha31mb3IoYT0oaT10Lmxlbmd0aCktMTthPj0wO2EtLSlpZigtMT09PW4uaW5kZXhPZih0LmNoYXJBdChhKSkpe3Q9dC5zdWJzdHJpbmcoMCxhKzEpO2JyZWFrfXJldHVybi0xPT09bi5pbmRleE9mKHQuY2hhckF0KDApKT90OiIifX0odyk7IiI9PT13fHxyPT09d3x8eXx8KHQuYWRkQ2xhc3MoImV0X2NvbnRhY3RfZXJyb3IiKSxsPSEwLHl8fChfKz0iPGxpPiIuY29uY2F0KGV0X3BiX2N1c3RvbS5pbnZhbGlkLCI8L2xpPiIpKSl9fWVsc2UgdS5wdXNoKGYpO2Vsc2UgdS5wdXNoKGYpfSkpLHIubGVuZ3RoJiYiIiE9PXIudmFsKCkpe3ZhciBoPXBhcnNlSW50KHIuZGF0YSgiZmlyc3RfZGlnaXQiKSksYj1wYXJzZUludChyLmRhdGEoInNlY29uZF9kaWdpdCIpKTtwYXJzZUludChyLnZhbCgpKSE9PWgrYiYmKF8rPSI8bGk+Ii5jb25jYXQoZXRfcGJfY3VzdG9tLndyb25nX2NhcHRjaGEsIjwvbGk+IiksbD0hMCxoPU1hdGguZmxvb3IoMTUqTWF0aC5yYW5kb20oKSsxKSxiPU1hdGguZmxvb3IoMTUqTWF0aC5yYW5kb20oKSsxKSxyLmRhdGEoImZpcnN0X2RpZ2l0IixoKSxyLmRhdGEoInNlY29uZF9kaWdpdCIsYiksci52YWwoIiIpLGEuZmluZCgiLmV0X3BiX2NvbnRhY3RfY2FwdGNoYV9xdWVzdGlvbiIpLmVtcHR5KCkuYXBwZW5kKCIiLmNvbmNhdChoLCIgKyAiKS5jb25jYXQoYikpKX1pZighbCl7YS5kYXRhKCJzdWJtaXR0ZWQiLCEwKTt2YXIgdj1hLmF0dHIoImFjdGlvbiIpLG09YS5zZXJpYWxpemVBcnJheSgpO20ucHVzaCh7bmFtZToiZXRfcGJfY29udGFjdF9lbWFpbF9maWVsZHNfIi5jb25jYXQoYyksdmFsdWU6SlNPTi5zdHJpbmdpZnkocCl9KSxtLnB1c2goe25hbWU6InRva2VuIix2YWx1ZTplfSksdS5sZW5ndGg+MCYmbS5wdXNoKHtuYW1lOiJldF9wYl9jb250YWN0X2VtYWlsX2hpZGRlbl9maWVsZHNfIi5jb25jYXQoYyksdmFsdWU6SlNPTi5zdHJpbmdpZnkodSl9KSx0LnJlbW92ZUNsYXNzKCJldF9hbmltYXRlZCIpLnJlbW92ZUF0dHIoInN0eWxlIikuZmFkZVRvKCJmYXN0IiwuMiwoZnVuY3Rpb24oKXt0LmxvYWQoIiIuY29uY2F0KHYsIiAjIikuY29uY2F0KHQuYXR0cigiaWQiKSwiPiAqIiksbSwoZnVuY3Rpb24oZSxhKXtpZigiZXJyb3IiPT09YSl7dmFyIG89bigiIyIuY29uY2F0KHQuYXR0cigiaWQiKSksZSk7by5sZW5ndGg+MCYmdC5odG1sKG8pfW4oZSkuZmluZCgiLmV0X3BiX2NvbnRhY3RfZXJyb3JfdGV4dCIpLmxlbmd0aHx8KFN0KHQsImNvbl9nb2FsIiksIiIhPT1pJiYod2luZG93LmxvY2F0aW9uLmhyZWY9aSkpLHQuZmFkZVRvKCJmYXN0IiwxKX0pKX0pKX1fKz0iPC91bD4iLCIiIT09ZCYmKCI8dWw+PC91bD4iIT09XyYmKF89JzxwIGNsYXNzPSJldF9ub3JtYWxfcGFkZGluZyI+Jy5jb25jYXQoZXRfcGJfY3VzdG9tLmNvbnRhY3RfZXJyb3JfbWVzc2FnZSwiPC9wPiIpLmNvbmNhdChfKSksZD0iPHVsPiIuY29uY2F0KGQsIjwvdWw+IiksZD0iPHA+Ii5jb25jYXQoZXRfcGJfY3VzdG9tLmZpbGxfbWVzc2FnZSwiPC9wPiIpLmNvbmNhdChkKSxfPWQrXyksIjx1bD48L3VsPiIhPT1fJiYocy5odG1sKF8pLHQucGFyZW50cygiLmV0X3BiX3NlY3Rpb25fcGFyYWxsYXgiKS5sZW5ndGgmJnQucGFyZW50cygiLmV0X3BiX3NlY3Rpb25fcGFyYWxsYXgiKS5lYWNoKChmdW5jdGlvbigpeyFuKHRoaXMpLmNoaWxkcmVuKCIuZXRfcGFyYWxsYXhfYmciKS5oYXNDbGFzcygiZXRfcGJfcGFyYWxsYXhfY3NzIikmJmYudHJpZ2dlcigicmVzaXplIil9KSkpfSkpfX0pKX0pKSx3aW5kb3cuZXRfcGJfcGxheV9vdmVybGF5ZWRfdmlkZW89ZnVuY3Rpb24odCl7dmFyIGUsaSxhLG89dCxyPW8uY2xvc2VzdCgiLmV0X3BiX3ZpZGVvX292ZXJsYXkiKSxzPW8uY2xvc2VzdCgiLmV0X3BiX3ZpZGVvLCAuZXRfbWFpbl92aWRlb19jb250YWluZXIsIC5ldF9wYl92aWRlb193cmFwIiksYz1zLmZpbmQoImlmcmFtZSIpLGw9Yy5sZW5ndGg+MCxfPXMuZmluZCgiLmZiLXZpZGVvIikubGVuZ3RoO2lmKGwpe2lmKF8mJnZvaWQgMCE9PWNbMl0mJihjPW4oY1syXSkpLGk9KGU9Yy5hdHRyKCJzcmMiKSkuc3BsaXQoIj8iKSwtMSE9PWUuaW5kZXhPZigiYXV0b3BsYXk9IikpcmV0dXJuO2E9dm9pZCAwIT09aVsxXT8iIi5jb25jYXQoaVswXSwiP2F1dG9wbGF5PTEmYW1wOyIpLmNvbmNhdChpWzFdKToiIi5jb25jYXQoaVswXSwiP2F1dG9wbGF5PTEiKSxjLmF0dHIoe3NyYzphfSl9ZWxzZSBzLmZpbmQoInZpZGVvIikuZ2V0KDApLnBsYXkoKTtyLmZhZGVUbyg1MDAsMCwoZnVuY3Rpb24oKXtuKHRoaXMpLmNzcygiZGlzcGxheSIsIm5vbmUiKX0pKX0sbigiLmV0X3BiX3Bvc3QgLmV0X3BiX3ZpZGVvX292ZXJsYXksIC5ldF9wYl92aWRlbyAuZXRfcGJfdmlkZW9fb3ZlcmxheSwgLmV0X3BiX3ZpZGVvX3dyYXAgLmV0X3BiX3ZpZGVvX292ZXJsYXkiKS5vbigiY2xpY2siLChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyk7cmV0dXJuIGV0X3BiX3BsYXlfb3ZlcmxheWVkX3ZpZGVvKHQpLCExfSkpLHdpbmRvdy5ldF9wYl9yZXNpemVfc2VjdGlvbl92aWRlb19iZz1mdW5jdGlvbih0KXsodm9pZCAwIT09dD90LmNsb3Nlc3QoIi5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnIik6bigiLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmciKSkuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO3godCkmJih0LnJlbW92ZUF0dHIoImRhdGEtcmF0aW8iKSx0LmZpbmQoInZpZGVvIikucmVtb3ZlQXR0cigic3R5bGUiKSk7dmFyIGUsaSxhPXQuZmluZCgidmlkZW8iKSxvPShhLnByb3AoInZpZGVvV2lkdGgiKXx8cGFyc2VJbnQoYS53aWR0aCgpKSkvKGEucHJvcCgidmlkZW9IZWlnaHQiKXx8cGFyc2VJbnQoYS5oZWlnaHQoKSkpLHI9dC5maW5kKCIubWVqcy12aWRlbywgdmlkZW8sIG9iamVjdCIpLmNzcygibWFyZ2luIiwiMHB4Iikscz10LmNsb3Nlc3QoIi5ldF9wYl9zZWN0aW9uX3ZpZGVvIikubGVuZ3RoP3QuY2xvc2VzdCgiLmV0X3BiX3NlY3Rpb25fdmlkZW8iKTp0LmNsb3Nlc3QoIi5ldF9wYl9zbGlkZXMiKSxjPXMuaW5uZXJXaWR0aCgpLGw9cy5pbm5lckhlaWdodCgpO3ZvaWQgMCE9PXQuYXR0cigiZGF0YS1yYXRpbyIpfHxpc05hTihvKXx8dC5hdHRyKCJkYXRhLXJhdGlvIixvKSxjL2w8bz8oZT1sKm8saT1sKTooZT1jLGk9Yy9vKSxyLndpZHRoKGUpLmhlaWdodChpKSxkLmlzQnVpbGRlciYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtyLndpZHRoKGUpLmhlaWdodChpKX0pLDApfSkpfSx3aW5kb3cuZXRfcGJfY2VudGVyX3ZpZGVvPWZ1bmN0aW9uKHQpe3ZhciBlPXZvaWQgMCE9PXQ/dDpuKCIuZXRfcGJfc2VjdGlvbl92aWRlb19iZyAubWVqcy12aWRlbyIpO2UubGVuZ3RoJiZlLmVhY2goKGZ1bmN0aW9uKCl7dmFyIGU9bih0aGlzKTtpZihldF9wYl9hZGp1c3RfdmlkZW9fbWFyZ2luKGUpLHgoZSkmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZXRfcGJfYWRqdXN0X3ZpZGVvX21hcmdpbihlKX0pLDApLHZvaWQgMCE9PXQmJnQuY2xvc2VzdCgiLmV0X3BiX3NsaWRlciIpLmxlbmd0aCYmIXQuY2xvc2VzdCgiLmV0X3BiX2ZpcnN0X3ZpZGVvIikubGVuZ3RoKXJldHVybiExfSkpfSx3aW5kb3cuZXRfcGJfYWRqdXN0X3ZpZGVvX21hcmdpbj1mdW5jdGlvbih0KXt2YXIgZT0wLXQud2lkdGgoKS8yO3QuY3NzKCJtYXJnaW4tbGVmdCIsIiIuY29uY2F0KGUsInB4IikpfTt2YXIgQ3Q9e307ZnVuY3Rpb24ga3QoKXt2YXIgdD1uKHdpbmRvdykud2lkdGgoKTtuKCIubmF2IGxpLmV0LXJldmVyc2UtZGlyZWN0aW9uLW5hdiIpLnJlbW92ZUNsYXNzKCJldC1yZXZlcnNlLWRpcmVjdGlvbi1uYXYiKSxuKCIubmF2IGxpIGxpIHVsIikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgZT1uKHRoaXMpLGk9ZS53aWR0aCgpLGE9ZS5vZmZzZXQoKSxvPWUucGFyZW50cygiLm5hdiA+IGxpIik7YS5sZWZ0PnQtaSYmby5hZGRDbGFzcygiZXQtcmV2ZXJzZS1kaXJlY3Rpb24tbmF2Iil9KSl9ZnVuY3Rpb24ganQodCxlLG4pe249bnx8dC5kYXRhKCJldF93YXlwb2ludF9tYXhfaW5zdGFuY2VzIil8fDE7dmFyIGk9dC5kYXRhKCJldF93YXlwb2ludCIpfHxbXSxhPSgwLHIuZGVmYXVsdCkod2luZG93LFsiZXRfcGJfY3VzdG9tIiwid2F5cG9pbnRzX29wdGlvbnMiXSk7aWYoYSl7dmFyIHM9KDAsci5kZWZhdWx0KShhLCJjb250ZXh0IixbXSk7cyYmKDAsby5kZWZhdWx0KShzKSYmKDAsYy5kZWZhdWx0KShzLChmdW5jdGlvbihuKXt2YXIgaT10LmNsb3Nlc3Qobik7aWYoaS5sZW5ndGg+MClyZXR1cm4gZS5jb250ZXh0PWksITF9KSl9aWYoaS5sZW5ndGg8bil7dmFyIGw9dC53YXlwb2ludChlKTtsJiZsLmxlbmd0aD4wJiYoaS5wdXNoKGxbMF0pLHQuZGF0YSgiZXRfd2F5cG9pbnQiLGkpKX1lbHNlIGZvcih2YXIgXz0wO188aS5sZW5ndGg7XysrKWlbX10uY29udGV4dC5yZWZyZXNoKCl9ZnVuY3Rpb24gVHQodCxlKXt2YXIgaT10LnBhcmVudHMoIi5ldF9wYl9zZWN0aW9uIikuaW5kZXgoKSxhPW4oIi5ldF9wYl9zZWN0aW9uIikubGVuZ3RoLTEsbz10LnBhcmVudHMoIi5ldF9wYl9yb3ciKS5pbmRleCgpLHI9dC5wYXJlbnRzKCIuZXRfcGJfc2VjdGlvbiIpLmNoaWxkcmVuKCkubGVuZ3RoLTE7cmV0dXJuIGk9PT1hJiZvPT09cj8iYm90dG9tLWluLXZpZXciOmV9ZnVuY3Rpb24gT3QodCl7Zm9yKHZhciBlPSExLG49WyIuZXRfcGJfdG9nZ2xlX3RpdGxlIiwiLm1lanMtY29udGFpbmVyICoiLCIuZXRfcGJfY29udGFjdF9maWVsZCBpbnB1dCIsIi5ldF9wYl9jb250YWN0X2ZpZWxkIHRleHRhcmVhIiwiLmV0X3BiX2NvbnRhY3RfZmllbGRfY2hlY2tib3ggKiIsIi5ldF9wYl9jb250YWN0X2ZpZWxkX3JhZGlvICoiLCIuZXRfcGJfY29udGFjdF9jYXB0Y2hhIiwiLmV0X3BiX3RhYnNfY29udHJvbHMgYSIsIi5mbGV4LWNvbnRyb2wtbmF2ICoiLCIuZXRfcGJfbWVudV9fc2VhcmNoLWJ1dHRvbiIsIi5ldF9wYl9tZW51X19jbG9zZS1zZWFyY2gtYnV0dG9uIiwiLmV0X3BiX21lbnVfX3NlYXJjaC1jb250YWluZXIgKiIsIi5ldF9wYl9mdWxsd2lkdGhfaGVhZGVyX3Njcm9sbCAqIl0saT0wO2k8bi5sZW5ndGg7aSsrKWlmKHQuaXMobltpXSkpe2U9ITA7YnJlYWt9cmV0dXJuIGV9ZnVuY3Rpb24gU3QodCxlLG4pe2lmKCFkLmlzQnVpbGRlcil7dmFyIGk9ZnVuY3Rpb24odCl7dmFyIGU9dC5hdHRyKCJjbGFzcyIpLG49cGFyc2VJbnQoZS5yZXBsYWNlKC9eLipldF9wYl9hYl9nb2FsX2lkLShcZCspLiokLywiJDEiKSk7cmV0dXJuIGlzTmFOKG4pPzA6bn0odCksYT12b2lkIDA9PT1lPyJjb25fZ29hbCI6ZTt0Lmhhc0NsYXNzKCJldF9wYl9hYl9nb2FsIikmJiFudFtpXVthXT9QdChhLGkpOnZvaWQgMCE9PW4mJm4oKX19ZnVuY3Rpb24gUHQodCxlLGksYSxvKXt2YXIgcj12b2lkIDA9PT1lP2V0X3BiX2N1c3RvbS5wYWdlX2lkOmUsYz12b2lkIDA9PT1pP3p0KHIpOmksbD12b2lkIDA9PT1hP2Z1bmN0aW9uKHQpe2Zvcih2YXIgZT0wO2U8ZXRfcGJfY3VzdG9tLmFiX3Rlc3RzO2UrKylpZihldF9wYl9jdXN0b20uYWJfdGVzdHNbZV0ucG9zdF9pZD09PXQpcmV0dXJuIGV0X3BiX2N1c3RvbS5hYl90ZXN0c1tlXS50ZXN0X2lkO3JldHVybiBldF9wYl9jdXN0b20udW5pcXVlX3Rlc3RfaWR9KHIpOmEsXz1KU09OLnN0cmluZ2lmeSh7dGVzdF9pZDpyLHN1YmplY3RfaWQ6YyxyZWNvcmRfdHlwZTp0fSksZD0iY2xpY2tfZ29hbCI9PT10fHwiY29uX3Nob3J0Ij09PXQ/IiI6YztNdCgzNjUsImV0X3BiX2FiXyIuY29uY2F0KHQsIl8iKS5jb25jYXQocikuY29uY2F0KGwpLmNvbmNhdChkLCI9dHJ1ZSIpKSwoMCxzLmRlZmF1bHQpKG50LFtyLHRdLCEwKSxuLmFqYXgoe3R5cGU6IlBPU1QiLHVybDpldF9wYl9jdXN0b20uYWpheHVybCxkYXRhOnthY3Rpb246ImV0X3BiX3VwZGF0ZV9zdGF0c190YWJsZSIsc3RhdHNfZGF0YV9hcnJheTpfLGV0X2FiX2xvZ19ub25jZTpldF9wYl9jdXN0b20uZXRfYWJfbG9nX25vbmNlfX0pLmFsd2F5cygoZnVuY3Rpb24oKXt2b2lkIDAhPT1vJiZvKCl9KSl9ZnVuY3Rpb24genQodCl7dmFyIGU9bigiKltjbGFzcyo9ZXRfcGJfYWJfc3ViamVjdF9pZC0iLmNvbmNhdCh0LCJfXSIpKTtyZXR1cm4hKGUubGVuZ3RoPD0wfHxuKCJodG1sIikuaXMoIi5ldF9mYl9wcmV2aWV3X2FjdGl2ZS0td2lyZWZyYW1lX3ByZXZpZXciKSkmJmUuYXR0cigiY2xhc3MiKS5zcGxpdCgiZXRfcGJfYWJfc3ViamVjdF9pZC0iKVsxXS5zcGxpdCgiICIpWzBdLnNwbGl0KCJfIilbMV19ZnVuY3Rpb24gSXQodCl7cmV0dXJuIG4oIi5ldF9wYl9hYl9nb2FsX2lkLSIuY29uY2F0KHQpKX1mdW5jdGlvbiBBdCgpe3ZhciB0PWYud2lkdGgoKSxlPSJkZXNrdG9wIjtyZXR1cm4gdDw9OTgwJiZ0Pjc2Nz9lPSJ0YWJsZXQiOnQ8PTc2NyYmKGU9InBob25lIiksZX1mdW5jdGlvbiBFdCh0LGUpe3JldHVybiBCdCh0KT09ZX1mdW5jdGlvbiBCdCh0KXtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIHQ9ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7ICIpLGU9e30sbj10Lmxlbmd0aC0xO24+PTA7bi0tKXt2YXIgaT10W25dLnNwbGl0KCI9Iik7ZVtpWzBdXT1pWzFdfXJldHVybiBlfSgpW3RdfWZ1bmN0aW9uIE10KHQsZSl7dmFyIG4saSxhPShuPTI0KnQqNjAqNjAqMWUzLChpPW5ldyBEYXRlKS5zZXRUaW1lKGkuZ2V0VGltZSgpK24pLCI7IGV4cGlyZXM9Ii5jb25jYXQoaS50b1VUQ1N0cmluZygpKSk7ZG9jdW1lbnQuY29va2llPSIiLmNvbmNhdChlK2EsIjsgcGF0aD0vIil9ZnVuY3Rpb24gSHQoKXtpZighd2luZG93LmV0X2lzX2ZpeGVkX25hdilyZXR1cm4gMDt2YXIgdD12b2lkIDA9PT1uKCIjbWFpbi1oZWFkZXIiKS5hdHRyKCJkYXRhLWZpeGVkLWhlaWdodC1vbmxvYWQiKT8wOm4oIiNtYWluLWhlYWRlciIpLmF0dHIoImRhdGEtZml4ZWQtaGVpZ2h0LW9ubG9hZCIpO3JldHVybiB3aW5kb3cuZXRfaXNfZml4ZWRfbmF2P3BhcnNlRmxvYXQodCk6MH13aW5kb3cuZXRfZml4X3NsaWRlcl9oZWlnaHQ9ZC5pc0J1aWxkZXI/ZnVuY3Rpb24odCl7dmFyIGU9dHx8aztpZihlJiZlLmxlbmd0aCl7dmFyIG49ZS5kYXRhKCJhZGRyZXNzIik7Q3Rbbl18fChDdFtuXT13aW5kb3cuZXRfcGJfZGVib3VuY2UoeHQsMTAwKSksQ3Rbbl0odCl9fTp4dCxrdCgpLGV0X3BiX2Zvcm1fcGxhY2Vob2xkZXJzX2luaXQobigiLmV0X3BiX2NvbW1lbnRzX21vZHVsZSAjY29tbWVudGZvcm0iKSksbigiLmV0LW1lbnUtbmF2IHVsLm5hdiIpLmVhY2goKGZ1bmN0aW9uKHQpe2V0X2R1cGxpY2F0ZV9tZW51KG4odGhpcyksbih0aGlzKS5jbG9zZXN0KCIuZXRfcGJfbW9kdWxlIikuZmluZCgiZGl2IC5tb2JpbGVfbmF2IiksIm1vYmlsZV9tZW51Ii5jb25jYXQodCsxKSwiZXRfbW9iaWxlX21lbnUiKX0pKSxuKCIuZXRfcGJfbWVudSwgLmV0X3BiX2Z1bGx3aWR0aF9tZW51IikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLGU9dC5kYXRhKCJiZ19jb2xvciIpO2UmJnQuZmluZCgidWwiKS5jc3MoeyJiYWNrZ3JvdW5kLWNvbG9yIjplfSl9KSksUC5vbigiY2xpY2siLChmdW5jdGlvbih0KXtldF9wYl9zdWJtaXRfbmV3c2xldHRlcihuKHRoaXMpLHQpfSkpLHoub24oImtleXByZXNzIiwoZnVuY3Rpb24odCl7aWYoMTM9PT0odC53aGljaHx8dC5rZXlDb2RlKSl7dmFyIGU9bih0aGlzKS5jbG9zZXN0KCJmb3JtIikuZmluZCgiLmV0X3BiX25ld3NsZXR0ZXJfYnV0dG9uIik7ZXRfcGJfc3VibWl0X25ld3NsZXR0ZXIoZSx0KX19KSksUC5jbG9zZXN0KCIuZXRfcGJfbmV3c2xldHRlciIpLmZpbmQoImlucHV0W3R5cGU9Y2hlY2tib3hdIikub24oImNoYW5nZSIsKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKSxlPXQuc2libGluZ3MoImlucHV0W3R5cGU9dGV4dF0iKS5maXJzdCgpLGk9dC5wcm9wKCJjaGVja2VkIik7ZS52YWwoaT9lLmRhdGEoImNoZWNrZWQiKTplLmRhdGEoInVuY2hlY2tlZCIpKX0pKSx3aW5kb3cuZXRfcGJfc3VibWl0X25ld3NsZXR0ZXI9ZnVuY3Rpb24odCxlKXtpZih0LmNsb3Nlc3QoIi5ldF9wYl9sb2dpbl9mb3JtIikubGVuZ3RoKVN0KHQuY2xvc2VzdCgiLmV0X3BiX25ld3NsZXR0ZXIiKSwiY29uX2dvYWwiKTtlbHNle2lmKHZvaWQgMCE9PWUmJmUucHJldmVudERlZmF1bHQoKSxuKCIuZXRfcGJfZmVlZGJ1cm5lcl9mb3JtIikubGVuZ3RoPjApe3ZhciBpPW4oIi5ldF9wYl9mZWVkYnVybmVyX2Zvcm0gaW5wdXRbbmFtZT11cmldIikudmFsKCk7cmV0dXJuIHdpbmRvdy5vcGVuKCJodHRwczovL2ZlZWRidXJuZXIuZ29vZ2xlLmNvbS9mYi9hL21haWx2ZXJpZnk/dXJpPSIuY29uY2F0KGkpLCJldC1mZWVkYnVybmVyLXN1YnNjcmliZSIsInNjcm9sbGJhcnM9eWVzLHdpZHRoPTU1MCxoZWlnaHQ9NTIwIiksITB9dmFyIGE9dC5jbG9zZXN0KCIuZXRfcGJfbmV3c2xldHRlciIpLG89YS5maW5kKCdpbnB1dFtuYW1lPSJldF9wYl9zaWdudXBfZmlyc3RuYW1lIl0nKSxyPWEuZmluZCgnaW5wdXRbbmFtZT0iZXRfcGJfc2lnbnVwX2xhc3RuYW1lIl0nKSxzPWEuZmluZCgnaW5wdXRbbmFtZT0iZXRfcGJfc2lnbnVwX2VtYWlsIl0nKSxjPWEuZmluZCgnaW5wdXRbbmFtZT0iZXRfcGJfc2lnbnVwX2xpc3RfaWQiXScpLnZhbCgpLGw9YS5maW5kKCIuZXRfcGJfbmV3c2xldHRlcl9lcnJvciIpLmhpZGUoKSxfPWEuZmluZCgnaW5wdXRbbmFtZT0iZXRfcGJfc2lnbnVwX3Byb3ZpZGVyIl0nKS52YWwoKSxkPWEuZmluZCgnaW5wdXRbbmFtZT0iZXRfcGJfc2lnbnVwX2FjY291bnRfbmFtZSJdJykudmFsKCkscD1hLmZpbmQoJ2lucHV0W25hbWU9ImV0X3BiX3NpZ251cF9pcF9hZGRyZXNzIl0nKS52YWwoKSx1PWEuZmluZCgnaW5wdXRbbmFtZT0iZXRfcGJfc2lnbnVwX2NoZWNrc3VtIl0nKS52YWwoKSxoPWEuZmluZCgiLmV0X3BiX25ld3NsZXR0ZXJfZmllbGRzIiksYj1hLmZpbmQoIi5ldF9wYl9uZXdzbGV0dGVyX3N1Y2Nlc3MiKSx2PWEuZGF0YSgicmVkaXJlY3RfdXJsIiksbT1hLmRhdGEoInJlZGlyZWN0X3F1ZXJ5IiksZz17fSx3PVtdLHk9Ijx1bD4iLHg9IiIsQz1oLmZpbmQoJ2lucHV0W3R5cGU9dGV4dF0sIC5ldF9wYl9jaGVja2JveF9oYW5kbGUsIC5ldF9wYl9jb250YWN0X2ZpZWxkW2RhdGEtdHlwZT0icmFkaW8iXSwgdGV4dGFyZWEsIHNlbGVjdCcpLmZpbHRlcigiLmV0X3BiX3NpZ251cF9jdXN0b21fZmllbGQsIC5ldF9wYl9zaWdudXBfY3VzdG9tX2ZpZWxkICoiKTtvLnJlbW92ZUNsYXNzKCJldF9wYl9zaWdudXBfZXJyb3IiKSxyLnJlbW92ZUNsYXNzKCJldF9wYl9zaWdudXBfZXJyb3IiKSxzLnJlbW92ZUNsYXNzKCJldF9wYl9zaWdudXBfZXJyb3IiKSxDLnJlbW92ZUNsYXNzKCJldF9jb250YWN0X2Vycm9yIiksbC5odG1sKCIiKTt2YXIgaz0hMCxqPXQuY2xvc2VzdCgiLmV0X3BiX25ld3NsZXR0ZXJfZm9ybSBmb3JtIik7aWYoai5sZW5ndGg+MCYmImZ1bmN0aW9uIj09dHlwZW9mIGpbMF0ucmVwb3J0VmFsaWRpdHkmJihrPWpbMF0ucmVwb3J0VmFsaWRpdHkoKSksby5sZW5ndGg+MCYmIW8udmFsKCkmJihvLmFkZENsYXNzKCJldF9wYl9zaWdudXBfZXJyb3IiKSxrPSExKSxyLmxlbmd0aD4wJiYhci52YWwoKSYmKHIuYWRkQ2xhc3MoImV0X3BiX3NpZ251cF9lcnJvciIpLGs9ITEpLGJ0LnRlc3Qocy52YWwoKSl8fChzLmFkZENsYXNzKCJldF9wYl9zaWdudXBfZXJyb3IiKSxrPSExKSxrKXtpZihDLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKSxlPSExO1siY2hlY2tib3giLCJib29sZWFuY2hlY2tib3giXS5pbmNsdWRlcyh0LmRhdGEoImZpZWxkX3R5cGUiKSkmJihlPXQucGFyZW50cygiLmV0X3BiX2NvbnRhY3RfZmllbGQiKSkucmVtb3ZlQ2xhc3MoImV0X2NvbnRhY3RfZXJyb3IiKSwicmFkaW8iPT09dC5kYXRhKCJ0eXBlIikmJihlPSh0PXQuZmluZCgnaW5wdXRbdHlwZT0icmFkaW8iXScpKS5wYXJlbnRzKCIuZXRfcGJfY29udGFjdF9maWVsZCIpKTt2YXIgaSxhPXQuZGF0YSgiaWQiKSxvPXQudmFsKCkscj10LnNpYmxpbmdzKCJsYWJlbCIpLmZpcnN0KCkudGV4dCgpLHM9dm9pZCAwIT09dC5kYXRhKCJmaWVsZF90eXBlIik/dC5kYXRhKCJmaWVsZF90eXBlIik6InRleHQiLGM9dm9pZCAwIT09dC5kYXRhKCJyZXF1aXJlZF9tYXJrIik/dC5kYXRhKCJyZXF1aXJlZF9tYXJrIik6Im5vdF9yZXF1aXJlZCIsbD12b2lkIDAhPT10LmRhdGEoIm9yaWdpbmFsX2lkIik/dC5kYXRhKCJvcmlnaW5hbF9pZCIpOiIiLGQ9ITE7aWYoYXx8KGE9dC5kYXRhKCJvcmlnaW5hbF9pZCIpKSwicmFkaW8iPT09cyl7aWYoMCE9PWUuZmluZCgnaW5wdXRbdHlwZT0icmFkaW8iXScpLmxlbmd0aCl7dmFyIHA9ZS5maW5kKCdpbnB1dFt0eXBlPSJyYWRpbyJdJykuZmlyc3QoKTtjPXZvaWQgMCE9PXAuZGF0YSgicmVxdWlyZWRfbWFyayIpP3AuZGF0YSgicmVxdWlyZWRfbWFyayIpOiJub3RfcmVxdWlyZWQiLG89IiIsZS5maW5kKCdpbnB1dFt0eXBlPSJyYWRpbyJdOmNoZWNrZWQnKSYmKG89ZS5maW5kKCdpbnB1dFt0eXBlPSJyYWRpbyJdOmNoZWNrZWQnKS52YWwoKSl9cj1lLmZpbmQoIi5ldF9wYl9jb250YWN0X2Zvcm1fbGFiZWwiKS50ZXh0KCksYT10LmRhdGEoIm9yaWdpbmFsX2lkIiksbi5pc0VtcHR5T2JqZWN0KG8pfHwoZ1thXT1vKSwwPT09ZS5maW5kKCdpbnB1dFt0eXBlPSJyYWRpbyJdOmNoZWNrZWQnKS5sZW5ndGgmJihkPSEwKSxvJiYoZ1thXT1vKX1lbHNlIGlmKFsiY2hlY2tib3giLCJib29sZWFuY2hlY2tib3giXS5pbmNsdWRlcyhzKSl7aWYobz17fSwwIT09ZS5maW5kKCdpbnB1dFt0eXBlPSJjaGVja2JveCJdJykubGVuZ3RoKXt2YXIgdT1lLmZpbmQoIi5ldF9wYl9jaGVja2JveF9oYW5kbGUiKTtjPXZvaWQgMCE9PXUuZGF0YSgicmVxdWlyZWRfbWFyayIpP3UuZGF0YSgicmVxdWlyZWRfbWFyayIpOiJub3RfcmVxdWlyZWQiLGUuZmluZCgnaW5wdXRbdHlwZT0iY2hlY2tlZCJdOmNoZWNrZWQnKSYmZS5maW5kKCdpbnB1dFt0eXBlPSJjaGVja2JveCJdOmNoZWNrZWQnKS5lYWNoKChmdW5jdGlvbigpe2lmKCJib29sZWFuY2hlY2tib3giPT09cylvPW4odGhpcykudmFsKCk7ZWxzZXt2YXIgdD1uKHRoaXMpLmRhdGEoImlkIik7b1t0XT1uKHRoaXMpLnZhbCgpfX0pKX1pZigwPT09KHI9ZS5maW5kKCIuZXRfcGJfY29udGFjdF9mb3JtX2xhYmVsIikudGV4dCgpKS50cmltKCkubGVuZ3RoKXt2YXIgZj1lLmZpbmQoJy5ldF9wYl9jb250YWN0X2ZpZWxkX2NoZWNrYm94IGlucHV0W3R5cGU9ImNoZWNrYm94Il0nKTtpZihmLmxlbmd0aD4wKXt2YXIgaD1bXTtmLmVhY2goKGZ1bmN0aW9uKCl7aC5wdXNoKG4odGhpcykudmFsKCkpfSkpLDA9PT0ocj1oLmpvaW4oIiwgIikpLnRyaW0oKS5sZW5ndGgmJihyPWV0X3BiX2N1c3RvbS53cm9uZ19jaGVja2JveCl9fWE9ZS5hdHRyKCJkYXRhLWlkIiksbi5pc0VtcHR5T2JqZWN0KG8pfHwoZ1thXT1vKSwwPT09ZS5maW5kKCdpbnB1dFt0eXBlPSJjaGVja2JveCJdOmNoZWNrZWQnKS5sZW5ndGgmJihkPSEwKX1lbHNlIGlmKCJvbnRyYXBvcnQiPT09XyYmInNlbGVjdCI9PT1zKXt2YXIgYj10LmZpbmQoIjpzZWxlY3RlZCIpO2dbYV09Yi5sZW5ndGg+MD9iLmRhdGEoImlkIik6b31lbHNlIGdbYV09bztpZigibWFpbGNoaW1wIj09PV8mJlsic2VsZWN0IiwicmFkaW8iXS5pbmRleE9mKHMpPi0xKXt2YXIgdj0oYj0ic2VsZWN0Ij09PXM/dC5maW5kKCI6c2VsZWN0ZWQiKTplLmZpbmQoJ2lucHV0W3R5cGU9InJhZGlvIl06Y2hlY2tlZCcpKS5sZW5ndGg+MD9iLmRhdGEoImlkIik6bnVsbDtudWxsIT09diYmKGdbYV09e30sZ1thXVt2XT1vKX1pZihyPXIucmVwbGFjZSgvIi9nLCImcXVvdDsiKSx0LmlzKCI6dmlzaWJsZSIpfHwiaGlkZGVuIj09PXQuYXR0cigidHlwZSIpfHwicmFkaW8iPT09dC5hdHRyKCJ0eXBlIikpaWYoImhpZGRlbiIhPT10LmF0dHIoInR5cGUiKSYmInJhZGlvIiE9PXQuYXR0cigidHlwZSIpfHx0LnBhcmVudHMoIi5ldF9wYl9jb250YWN0X2ZpZWxkIikuaXMoIjp2aXNpYmxlIikpe2lmKCJyZXF1aXJlZCIhPT1jfHwiIiE9PW8mJiEwIT09ZHx8KCExPT09ZT90LmFkZENsYXNzKCJldF9jb250YWN0X2Vycm9yIik6ZS5hZGRDbGFzcygiZXRfY29udGFjdF9lcnJvciIpLGs9ITEsIiI9PT0oaT1yKSYmKGk9ZXRfcGJfY3VzdG9tLmNhcHRjaGEpLHgrPSI8bGk+Ii5jb25jYXQoaSwiPC9saT4iKSksImVtYWlsIj09PXMpe3ZhciBtPW8udHJpbSgpLnRvTG93ZXJDYXNlKCksQz1idC50ZXN0KG0pOyIiPT09bXx8cj09PW18fEN8fCh0LmFkZENsYXNzKCJldF9jb250YWN0X2Vycm9yIiksaz0hMSxDfHwoeSs9IjxsaT4iLmNvbmNhdChldF9wYl9jdXN0b20uaW52YWxpZCwiPC9saT4iKSkpfX1lbHNlIHcucHVzaChhKTtlbHNlIHcucHVzaChsKX0pKSx5Kz0iPC91bD4iLCIiIT09eCYmKCI8dWw+PC91bD4iIT09eSYmKHk9JzxwIGNsYXNzPSJldF9ub3JtYWxfcGFkZGluZyI+Jy5jb25jYXQoZXRfcGJfY3VzdG9tLmNvbnRhY3RfZXJyb3JfbWVzc2FnZSwiPC9wPiIpLmNvbmNhdCh5KSkseD0iPHVsPiIuY29uY2F0KHgsIjwvdWw+IikseD0iPHA+Ii5jb25jYXQoZXRfcGJfY3VzdG9tLmZpbGxfbWVzc2FnZSwiPC9wPiIpLmNvbmNhdCh4KSx5PXgreSksIjx1bD48L3VsPiIhPT15KXJldHVybiBsLmh0bWwoeSkuc2hvdygpLHZvaWQoYS5wYXJlbnRzKCIuZXRfcGJfc2VjdGlvbl9wYXJhbGxheCIpLmxlbmd0aCYmYS5wYXJlbnRzKCIuZXRfcGJfc2VjdGlvbl9wYXJhbGxheCIpLmVhY2goKGZ1bmN0aW9uKCl7IW4odGhpcykuY2hpbGRyZW4oIi5ldF9wYXJhbGxheF9iZyIpLmhhc0NsYXNzKCJldF9wYl9wYXJhbGxheF9jc3MiKSYmZi50cmlnZ2VyKCJyZXNpemUiKX0pKSk7dmFyIFQ9bi5EZWZlcnJlZCgpO2F0JiZhLmhhc0NsYXNzKCJldF9wYl9yZWNhcHRjaGFfZW5hYmxlZCIpP2F0LmludGVyYWN0aW9uKCJEaXZpL01vZHVsZS9FbWFpbE9wdGluL0xpc3QvIi5jb25jYXQoYykpLnRoZW4oKGZ1bmN0aW9uKHQpe1QucmVzb2x2ZSh0KX0pKTpULnJlc29sdmUoIiIpLG4ud2hlbihUKS5kb25lKChmdW5jdGlvbih0KXtuLmFqYXgoe3R5cGU6IlBPU1QiLHVybDpldF9wYl9jdXN0b20uYWpheHVybCxkYXRhVHlwZToianNvbiIsZGF0YTp7YWN0aW9uOiJldF9wYl9zdWJtaXRfc3Vic2NyaWJlX2Zvcm0iLGV0X2Zyb250ZW5kX25vbmNlOmV0X3BiX2N1c3RvbS5ldF9mcm9udGVuZF9ub25jZSxldF9saXN0X2lkOmMsZXRfZmlyc3RuYW1lOm8udmFsKCksZXRfbGFzdG5hbWU6ci52YWwoKSxldF9lbWFpbDpzLnZhbCgpLGV0X3Byb3ZpZGVyOl8sZXRfYWNjb3VudDpkLGV0X2lwX2FkZHJlc3M6cCxldF9jdXN0b21fZmllbGRzOmcsZXRfaGlkZGVuX2ZpZWxkczp3LHRva2VuOnQsZXRfY2hlY2tzdW06dX0sYmVmb3JlU2VuZDpmdW5jdGlvbigpe2EuZmluZCgiLmV0X3BiX25ld3NsZXR0ZXJfYnV0dG9uIikuYWRkQ2xhc3MoImV0X3BiX2J1dHRvbl90ZXh0X2xvYWRpbmciKS5maW5kKCIuZXRfc3Vic2NyaWJlX2xvYWRlciIpLnNob3coKX0sY29tcGxldGU6ZnVuY3Rpb24oKXthLmZpbmQoIi5ldF9wYl9uZXdzbGV0dGVyX2J1dHRvbiIpLnJlbW92ZUNsYXNzKCJldF9wYl9idXR0b25fdGV4dF9sb2FkaW5nIikuZmluZCgiLmV0X3N1YnNjcmliZV9sb2FkZXIiKS5oaWRlKCl9LHN1Y2Nlc3M6ZnVuY3Rpb24odCl7dD8odC5lcnJvciYmbC5zaG93KCkuYXBwZW5kKCI8aDI+IikudGV4dCh0LmVycm9yKSx0LnN1Y2Nlc3MmJih2P1N0KGEsImNvbl9nb2FsIiwoZnVuY3Rpb24oKXt2YXIgdD1mdW5jdGlvbigpe3ZhciB0PXt9O3JldHVybiBtPyhvLmxlbmd0aD4wJiZtLmluZGV4T2YoIm5hbWUiKT4tMSYmKHQuZmlyc3RfbmFtZT1vLnZhbCgpKSxyLmxlbmd0aD4wJiZtLmluZGV4T2YoImxhc3RfbmFtZSIpPi0xJiYodC5sYXN0X25hbWU9ci52YWwoKSksbS5pbmRleE9mKCJlbWFpbCIpPi0xJiYodC5lbWFpbD1zLnZhbCgpKSxtLmluZGV4T2YoImlwX2FkZHJlc3MiKT4tMSYmKHQuaXBfYWRkcmVzcz1hLmRhdGEoImlwX2FkZHJlc3MiKSksbS5pbmRleE9mKCJjc3NfaWQiKT4tMSYmKHQuZm9ybV9pZD1hLmF0dHIoImlkIikpLGRlY29kZVVSSUNvbXBvbmVudChuLnBhcmFtKHQpKSk6IiJ9KCk7dC5sZW5ndGgmJih2LmluZGV4T2YoIj8iKT4tMT92Kz0iJiI6dis9Ij8iKSx3aW5kb3cubG9jYXRpb249dit0fSkpOihTdChhLCJjb25fZ29hbCIpLGEuZmluZCgiLmV0X3BiX25ld3NsZXR0ZXJfZmllbGRzIikuaGlkZSgpLGIuc2hvdygpKSkpOmwuaHRtbChldF9wYl9jdXN0b20uc3Vic2NyaXB0aW9uX2ZhaWxlZCkuc2hvdygpfX0pfSkpfX19LHdpbmRvdy5ldF9maXhfdGVzdGltb25pYWxfaW5uZXJfd2lkdGg9ZnVuY3Rpb24oKXt2YXIgdD1uKHdpbmRvdykud2lkdGgoKTt0Pjk1OT9uKCIuZXRfcGJfdGVzdGltb25pYWwiKS5lYWNoKChmdW5jdGlvbigpe2lmKG4odGhpcykuaXMoIjp2aXNpYmxlIikpe3ZhciB0PW4odGhpcyksZT10LmZpbmQoIi5ldF9wYl90ZXN0aW1vbmlhbF9wb3J0cmFpdCIpLGk9ZS5vdXRlcldpZHRoKCEwKXx8MCxhPXQuZmluZCgiLmV0X3BiX3Rlc3RpbW9uaWFsX2Rlc2NyaXB0aW9uIiksbz10LmNsb3Nlc3QoIi5ldF9wYl9jb2x1bW4iKTtpPjkwJiYoZS5jc3MoInBhZGRpbmctYm90dG9tIiwiMHB4IiksZS53aWR0aCgiOTBweCIpLGUuaGVpZ2h0KCI5MHB4IikpO3ZhciByPW8uaGFzQ2xhc3MoImV0X3BiX2NvbHVtbl8xXzMiKXx8by5oYXNDbGFzcygiZXRfcGJfY29sdW1uXzFfNCIpfHxvLmhhc0NsYXNzKCJldF9wYl9jb2x1bW5fMV81Iil8fG8uaGFzQ2xhc3MoImV0X3BiX2NvbHVtbl8xXzYiKXx8by5oYXNDbGFzcygiZXRfcGJfY29sdW1uXzJfNSIpfHxvLmhhc0NsYXNzKCJldF9wYl9jb2x1bW5fM184Iik/MDppO2EuY3NzKCJtYXJnaW4tbGVmdCIsIiIuY29uY2F0KHIsInB4IikpfX0pKTp0Pjc2Nz9uKCIuZXRfcGJfdGVzdGltb25pYWwiKS5lYWNoKChmdW5jdGlvbigpe2lmKG4odGhpcykuaXMoIjp2aXNpYmxlIikpe3ZhciB0PW4odGhpcyksZT10LmZpbmQoIi5ldF9wYl90ZXN0aW1vbmlhbF9wb3J0cmFpdCIpLm91dGVyV2lkdGgoITApfHwwLGk9dC5maW5kKCIuZXRfcGJfdGVzdGltb25pYWxfZGVzY3JpcHRpb24iKSxhPXQuY2xvc2VzdCgiLmV0X3BiX2NvbHVtbiIpLG89YS5oYXNDbGFzcygiZXRfcGJfY29sdW1uXzFfNCIpfHxhLmhhc0NsYXNzKCJldF9wYl9jb2x1bW5fMV81Iil8fGEuaGFzQ2xhc3MoImV0X3BiX2NvbHVtbl8xXzYiKXx8YS5oYXNDbGFzcygiZXRfcGJfY29sdW1uXzJfNSIpfHxhLmhhc0NsYXNzKCJldF9wYl9jb2x1bW5fM184Iik/MDplO2kuY3NzKCJtYXJnaW4tbGVmdCIsIiIuY29uY2F0KG8sInB4IikpfX0pKTpuKCIuZXRfcGJfdGVzdGltb25pYWxfZGVzY3JpcHRpb24iKS5yZW1vdmVBdHRyKCJzdHlsZSIpfSx3aW5kb3cuZXRfZml4X3Rlc3RpbW9uaWFsX2lubmVyX3dpZHRoKCksd2luZG93LmV0X3BiX3ZpZGVvX2JhY2tncm91bmRfaW5pdD1mdW5jdGlvbih0LGUpe3ZhciBuPXQuY2xvc2VzdCgiLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmciKSxpPSExLGE9ITA7ZS5vbnBsYXlpbmc9ZnVuY3Rpb24oKXtpPSEwLGE9ITF9LGUub25wYXVzZT1mdW5jdGlvbigpe2k9ITEsYT0hMH0sanQobix7b2Zmc2V0OiIxMDAlIixoYW5kbGVyOmZ1bmN0aW9uKG8pe3ZhciByPW4uaGFzQ2xhc3MoImV0X3BiX3ZpZGVvX3BsYXlfb3V0c2lkZV92aWV3cG9ydCIpO3QuaXMoIjp2aXNpYmxlIikmJiJkb3duIj09PW8/ZS5wYXVzZWQmJiFpJiZlLnBsYXkoKTp0LmlzKCI6dmlzaWJsZSIpJiYidXAiPT09byYmKGUucGF1c2VkfHxhfHxyfHxlLnBhdXNlKCkpfX0sMiksanQobix7b2Zmc2V0OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5lbGVtZW50LmNsaWVudEhlaWdodCxlPU1hdGguY2VpbCh3aW5kb3cuaW5uZXJIZWlnaHQvMik7cmV0dXJuIHQ+ZSYmKGU9dCksLTEqZX0saGFuZGxlcjpmdW5jdGlvbihvKXt2YXIgcj1uLmhhc0NsYXNzKCJldF9wYl92aWRlb19wbGF5X291dHNpZGVfdmlld3BvcnQiKTt0LmlzKCI6dmlzaWJsZSIpJiYidXAiPT09bz9lLnBhdXNlZCYmIWkmJmUucGxheSgpOnQuaXMoIjp2aXNpYmxlIikmJiJkb3duIj09PW8mJihlLnBhdXNlZHx8YXx8cnx8ZS5wYXVzZSgpKX19LDIpfSx3aW5kb3cuZXRfYW5pbWF0ZV9lbGVtZW50PWZ1bmN0aW9uKHQpe3ZhciBlPXQ7aWYoIWUuaGFzQ2xhc3MoImV0X2hhZF9hbmltYXRpb24iKSl7dmFyIGk9ZS5hdHRyKCJkYXRhLWFuaW1hdGlvbi1zdHlsZSIpLGE9ZS5hdHRyKCJkYXRhLWFuaW1hdGlvbi1yZXBlYXQiKSxvPWUuYXR0cigiZGF0YS1hbmltYXRpb24tZHVyYXRpb24iKSxyPWUuYXR0cigiZGF0YS1hbmltYXRpb24tZGVsYXkiKSxzPWUuYXR0cigiZGF0YS1hbmltYXRpb24taW50ZW5zaXR5IiksYz1lLmF0dHIoImRhdGEtYW5pbWF0aW9uLXN0YXJ0aW5nLW9wYWNpdHkiKSxsPWUuYXR0cigiZGF0YS1hbmltYXRpb24tc3BlZWQtY3VydmUiKSxfPWUucGFyZW50KCIuZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyIiksZD1uKCJib2R5IikuaGFzQ2xhc3MoImVkZ2UiKTtlLmlzKCIuZXRfcGJfc2VjdGlvbiIpJiYicm9sbCI9PT1pJiZuKCIiLmNvbmNhdChldF9mcm9udGVuZF9zY3JpcHRzLmJ1aWxkZXJDc3NDb250YWluZXJQcmVmaXgsIiwgIikuY29uY2F0KGV0X2Zyb250ZW5kX3NjcmlwdHMuYnVpbGRlckNzc0xheW91dFByZWZpeCkpLmNzcygib3ZlcmZsb3cteCIsImhpZGRlbiIpLGV0X3JlbW92ZV9hbmltYXRpb25fZGF0YShlKTt2YXIgcD1pc05hTihwYXJzZUludChjKSk/MDouMDEqcGFyc2VJbnQoYyk7LTE9PT1uLmluQXJyYXkobCxbImxpbmVhciIsImVhc2UiLCJlYXNlLWluIiwiZWFzZS1vdXQiLCJlYXNlLWluLW91dCJdKSYmKGw9ImVhc2UtaW4tb3V0IiksXy5sZW5ndGg+MCYmKGUucmVtb3ZlQ2xhc3MoImV0X2FuaW1hdGVkIiksKGU9XykuYWRkQ2xhc3MoImV0X2FuaW1hdGVkIikpLGUuY3NzKHsiYW5pbWF0aW9uLWR1cmF0aW9uIjpvLCJhbmltYXRpb24tZGVsYXkiOnIsb3BhY2l0eTpwLCJhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uIjpsfSksInNsaWRlVG9wIiE9PWkmJiJzbGlkZUJvdHRvbSIhPT1pfHxlLmNzcygibGVmdCIsIjBweCIpO2Zvcih2YXIgdT17fSxmPWlzTmFOKHBhcnNlSW50KHMpKT81MDpwYXJzZUludChzKSxoPVsic2xpZGUiLCJ6b29tIiwiZmxpcCIsImZvbGQiLCJyb2xsIl0sYj0hMSx2PSExLG09MDttPGgubGVuZ3RoO20rKyl7dmFyIGc9aFttXTtpZihpJiZpLnN1YnN0cigwLGcubGVuZ3RoKT09PWcpe2I9ZywiIiE9PSh2PWkuc3Vic3RyKGcubGVuZ3RoLGkubGVuZ3RoKSkmJih2PXYudG9Mb3dlckNhc2UoKSk7YnJlYWt9fWlmKCExIT09YiYmITEhPT12JiYodT1mdW5jdGlvbih0LGUsbil7dmFyIGk9e307c3dpdGNoKHQpe2Nhc2Uic2xpZGUiOnN3aXRjaChlKXtjYXNlInRvcCI6aT17dHJhbnNmb3JtOiJ0cmFuc2xhdGUzZCgwLCAiLmNvbmNhdCgtMipuLCIlLCAwKSIpfTticmVhaztjYXNlInJpZ2h0IjppPXt0cmFuc2Zvcm06InRyYW5zbGF0ZTNkKCIuY29uY2F0KDIqbiwiJSwgMCwgMCkiKX07YnJlYWs7Y2FzZSJib3R0b20iOmk9e3RyYW5zZm9ybToidHJhbnNsYXRlM2QoMCwgIi5jb25jYXQoMipuLCIlLCAwKSIpfTticmVhaztjYXNlImxlZnQiOmk9e3RyYW5zZm9ybToidHJhbnNsYXRlM2QoIi5jb25jYXQoLTIqbiwiJSwgMCwgMCkiKX07YnJlYWs7ZGVmYXVsdDppPXt0cmFuc2Zvcm06InNjYWxlM2QoIi5jb25jYXQoYT0uMDEqKDEwMC1uKSwiLCAiKS5jb25jYXQoYSwiLCAiKS5jb25jYXQoYSwiKSIpfX1icmVhaztjYXNlInpvb20iOnZhciBhO2k9e3RyYW5zZm9ybToic2NhbGUzZCgiLmNvbmNhdChhPS4wMSooMTAwLW4pLCIsICIpLmNvbmNhdChhLCIsICIpLmNvbmNhdChhLCIpIil9O2JyZWFrO2Nhc2UiZmxpcCI6c3dpdGNoKGUpe2Nhc2UicmlnaHQiOnZhciBvPU1hdGguY2VpbCguOSpuKTtpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UibGVmdCI6bz0tMSpNYXRoLmNlaWwoLjkqbiksaT17dHJhbnNmb3JtOiJwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoIi5jb25jYXQobywiZGVnKSIpfTticmVhaztjYXNlInRvcCI6ZGVmYXVsdDpvPU1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UiYm90dG9tIjpvPS0xKk1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9fWJyZWFrO2Nhc2UiZm9sZCI6c3dpdGNoKGUpe2Nhc2UidG9wIjpvPS0xKk1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UiYm90dG9tIjpvPU1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UibGVmdCI6bz1NYXRoLmNlaWwoLjkqbiksaT17dHJhbnNmb3JtOiJwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoIi5jb25jYXQobywiZGVnKSIpfTticmVhaztkZWZhdWx0Om89LTEqTWF0aC5jZWlsKC45Km4pLGk9e3RyYW5zZm9ybToicGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKCIuY29uY2F0KG8sImRlZykiKX19YnJlYWs7Y2FzZSJyb2xsIjpzd2l0Y2goZSl7Y2FzZSJyaWdodCI6Y2FzZSJib3R0b20iOm89LTEqTWF0aC5jZWlsKDMuNipuKSxpPXt0cmFuc2Zvcm06InJvdGF0ZVooIi5jb25jYXQobywiZGVnKSIpfTticmVhaztjYXNlInRvcCI6Y2FzZSJsZWZ0IjpvPU1hdGguY2VpbCgzLjYqbiksaT17dHJhbnNmb3JtOiJyb3RhdGVaKCIuY29uY2F0KG8sImRlZykiKX07YnJlYWs7ZGVmYXVsdDpvPU1hdGguY2VpbCgzLjYqbiksaT17dHJhbnNmb3JtOiJyb3RhdGVaKCIuY29uY2F0KG8sImRlZykiKX19fXJldHVybiBpfShiLHYsZikpLG4uaXNFbXB0eU9iamVjdCh1KXx8ZS5jc3MoZD9uLmV4dGVuZCh1LHt0cmFuc2l0aW9uOiJ0cmFuc2Zvcm0gMHMgZWFzZS1pbiJ9KTp1KSxlLmFkZENsYXNzKCJldF9hbmltYXRlZCIpLGUuYWRkQ2xhc3MoImV0X2lzX2FuaW1hdGluZyIpLGUuYWRkQ2xhc3MoaSksZS5hZGRDbGFzcyhhKSwhYSl7dmFyIHc9cGFyc2VJbnQobykseT1wYXJzZUludChyKTtzZXRUaW1lb3V0KChmdW5jdGlvbigpe2V0X3JlbW92ZV9hbmltYXRpb24oZSl9KSx3K3kpLGQmJiFuLmlzRW1wdHlPYmplY3QodSkmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS5jc3MoInRyYW5zaXRpb24iLCIiKX0pLHcreSs1MCl9fX0sd2luZG93LmV0X3Byb2Nlc3NfYW5pbWF0aW9uX2RhdGE9ZnVuY3Rpb24odCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBldF9hbmltYXRpb25fZGF0YSYmZXRfYW5pbWF0aW9uX2RhdGEubGVuZ3RoPjApe24oImJvZHkiKS5jc3MoIm92ZXJmbG93LXgiLCJoaWRkZW4iKSxuKCIjcGFnZS1jb250YWluZXIiKS5jc3MoIm92ZXJmbG93LXkiLCJoaWRkZW4iKTtmb3IodmFyIGU9MDtlPGV0X2FuaW1hdGlvbl9kYXRhLmxlbmd0aDtlKyspe3ZhciBpPWV0X2FuaW1hdGlvbl9kYXRhW2VdO2lmKGkuY2xhc3MmJmkuc3R5bGUmJmkucmVwZWF0JiZpLmR1cmF0aW9uJiZpLmRlbGF5JiZpLmludGVuc2l0eSYmaS5zdGFydGluZ19vcGFjaXR5JiZpLnNwZWVkX2N1cnZlKXt2YXIgYT1uKCIuIi5jb25jYXQoaS5jbGFzcykpLG89QXQoKSxyPSJkZXNrdG9wIj09PW87aXQ9bzt2YXIgcz0iIjtyfHwocys9Il8iLmNvbmNhdChvKSk7dmFyIGM9cnx8dm9pZCAwPT09aVsic3R5bGUiLmNvbmNhdChzKV0/aS5zdHlsZTppWyJzdHlsZSIuY29uY2F0KHMpXSxsPXJ8fHZvaWQgMD09PWlbInJlcGVhdCIuY29uY2F0KHMpXT9pLnJlcGVhdDppWyJyZXBlYXQiLmNvbmNhdChzKV0sXz1yfHx2b2lkIDA9PT1pWyJkdXJhdGlvbiIuY29uY2F0KHMpXT9pLmR1cmF0aW9uOmlbImR1cmF0aW9uIi5jb25jYXQocyldLGQ9cnx8dm9pZCAwPT09aVsiZGVsYXkiLmNvbmNhdChzKV0/aS5kZWxheTppWyJkZWxheSIuY29uY2F0KHMpXSxwPXJ8fHZvaWQgMD09PWlbImludGVuc2l0eSIuY29uY2F0KHMpXT9pLmludGVuc2l0eTppWyJpbnRlbnNpdHkiLmNvbmNhdChzKV0sdT1yfHx2b2lkIDA9PT1pWyJzdGFydGluZ19vcGFjaXR5Ii5jb25jYXQocyldP2kuc3RhcnRpbmdfb3BhY2l0eTppWyJzdGFydGluZ19vcGFjaXR5Ii5jb25jYXQocyldLGY9cnx8dm9pZCAwPT09aVsic3BlZWRfY3VydmUiLmNvbmNhdChzKV0/aS5zcGVlZF9jdXJ2ZTppWyJzcGVlZF9jdXJ2ZSIuY29uY2F0KHMpXTthLmF0dHIoeyJkYXRhLWFuaW1hdGlvbi1zdHlsZSI6YywiZGF0YS1hbmltYXRpb24tcmVwZWF0Ijoib25jZSI9PT1sPyIiOiJpbmZpbml0ZSIsImRhdGEtYW5pbWF0aW9uLWR1cmF0aW9uIjpfLCJkYXRhLWFuaW1hdGlvbi1kZWxheSI6ZCwiZGF0YS1hbmltYXRpb24taW50ZW5zaXR5IjpwLCJkYXRhLWFuaW1hdGlvbi1zdGFydGluZy1vcGFjaXR5Ijp1LCJkYXRhLWFuaW1hdGlvbi1zcGVlZC1jdXJ2ZSI6Zn0pLCEwPT09dD9hLmhhc0NsYXNzKCJldF9wYl9jaXJjbGVfY291bnRlciIpPyhqdChhLHtvZmZzZXQ6IjEwMCUiLGhhbmRsZXI6ZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMuZWxlbWVudCkuZmluZCgiLmV0X3BiX2NpcmNsZV9jb3VudGVyX2lubmVyIik7dC5kYXRhKCJQaWVDaGFydEhhc0xvYWRlZCIpfHx2b2lkIDA9PT10LmRhdGEoImVhc3lQaWVDaGFydCIpfHwodC5kYXRhKCJlYXN5UGllQ2hhcnQiKS51cGRhdGUodC5kYXRhKCJudW1iZXItdmFsdWUiKSksdC5kYXRhKCJQaWVDaGFydEhhc0xvYWRlZCIsITApLGV0X2FuaW1hdGVfZWxlbWVudChuKHRoaXMuZWxlbWVudCkpKX19KSxqdChhLHtvZmZzZXQ6ImJvdHRvbS1pbi12aWV3IixoYW5kbGVyOmZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzLmVsZW1lbnQpLmZpbmQoIi5ldF9wYl9jaXJjbGVfY291bnRlcl9pbm5lciIpO3QuZGF0YSgiUGllQ2hhcnRIYXNMb2FkZWQiKXx8dm9pZCAwPT09dC5kYXRhKCJlYXN5UGllQ2hhcnQiKXx8KHQuZGF0YSgiZWFzeVBpZUNoYXJ0IikudXBkYXRlKHQuZGF0YSgibnVtYmVyLXZhbHVlIikpLHQuZGF0YSgiUGllQ2hhcnRIYXNMb2FkZWQiLCEwKSxldF9hbmltYXRlX2VsZW1lbnQobih0aGlzLmVsZW1lbnQpKSl9fSkpOmEuaGFzQ2xhc3MoImV0X3BiX251bWJlcl9jb3VudGVyIik/KGp0KGEse29mZnNldDoiMTAwJSIsaGFuZGxlcjpmdW5jdGlvbigpe24odGhpcy5lbGVtZW50KS5kYXRhKCJlYXN5UGllQ2hhcnQiKS51cGRhdGUobih0aGlzLmVsZW1lbnQpLmRhdGEoIm51bWJlci12YWx1ZSIpKSxldF9hbmltYXRlX2VsZW1lbnQobih0aGlzLmVsZW1lbnQpKX19KSxqdChhLHtvZmZzZXQ6ImJvdHRvbS1pbi12aWV3IixoYW5kbGVyOmZ1bmN0aW9uKCl7bih0aGlzLmVsZW1lbnQpLmRhdGEoImVhc3lQaWVDaGFydCIpLnVwZGF0ZShuKHRoaXMuZWxlbWVudCkuZGF0YSgibnVtYmVyLXZhbHVlIikpLGV0X2FuaW1hdGVfZWxlbWVudChuKHRoaXMuZWxlbWVudCkpfX0pKTpqdChhLHtvZmZzZXQ6IjEwMCUiLGhhbmRsZXI6ZnVuY3Rpb24oKXtldF9hbmltYXRlX2VsZW1lbnQobih0aGlzLmVsZW1lbnQpKX19KTpldF9hbmltYXRlX2VsZW1lbnQoYSl9fX19LHdpbmRvdy5ldF9oYXNfYW5pbWF0aW9uX2RhdGE9ZnVuY3Rpb24odCl7dmFyIGU9ITE7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBldF9hbmltYXRpb25fZGF0YSYmZXRfYW5pbWF0aW9uX2RhdGEubGVuZ3RoPjApZm9yKHZhciBuPTA7bjxldF9hbmltYXRpb25fZGF0YS5sZW5ndGg7bisrKXt2YXIgaT1ldF9hbmltYXRpb25fZGF0YVtuXTtpZihpLmNsYXNzJiZ0Lmhhc0NsYXNzKGkuY2xhc3MpKXtlPSEwO2JyZWFrfX1yZXR1cm4gZX0sd2luZG93LmV0X2dldF9hbmltYXRpb25fY2xhc3Nlcz1mdW5jdGlvbigpe3JldHVyblsiZXRfYW5pbWF0ZWQiLCJldF9pc19hbmltYXRpbmciLCJpbmZpbml0ZSIsImV0LXdheXBvaW50IiwiZmFkZSIsImZhZGVUb3AiLCJmYWRlUmlnaHQiLCJmYWRlQm90dG9tIiwiZmFkZUxlZnQiLCJzbGlkZSIsInNsaWRlVG9wIiwic2xpZGVSaWdodCIsInNsaWRlQm90dG9tIiwic2xpZGVMZWZ0IiwiYm91bmNlIiwiYm91bmNlVG9wIiwiYm91bmNlUmlnaHQiLCJib3VuY2VCb3R0b20iLCJib3VuY2VMZWZ0Iiwiem9vbSIsInpvb21Ub3AiLCJ6b29tUmlnaHQiLCJ6b29tQm90dG9tIiwiem9vbUxlZnQiLCJmbGlwIiwiZmxpcFRvcCIsImZsaXBSaWdodCIsImZsaXBCb3R0b20iLCJmbGlwTGVmdCIsImZvbGQiLCJmb2xkVG9wIiwiZm9sZFJpZ2h0IiwiZm9sZEJvdHRvbSIsImZvbGRMZWZ0Iiwicm9sbCIsInJvbGxUb3AiLCJyb2xsUmlnaHQiLCJyb2xsQm90dG9tIiwicm9sbExlZnQiLCJ0cmFuc2Zvcm1BbmltIl19LHdpbmRvdy5ldF9yZW1vdmVfYW5pbWF0aW9uPWZ1bmN0aW9uKHQpe2lmKCF0Lmhhc0NsYXNzKCJpbmZpbml0ZSIpKXt2YXIgZT1ldF9nZXRfYW5pbWF0aW9uX2NsYXNzZXMoKTt0LmlzKCIuZXRfcGJfc2VjdGlvbiIpJiZ0LmlzKCIucm9sbCIpJiZuKCIiLmNvbmNhdChldF9mcm9udGVuZF9zY3JpcHRzLmJ1aWxkZXJDc3NDb250YWluZXJQcmVmaXgsIiwgIikuY29uY2F0KGV0X2Zyb250ZW5kX3NjcmlwdHMuYnVpbGRlckNzc0xheW91dFByZWZpeCkpLmNzcygib3ZlcmZsb3cteCIsIiIpLHQucmVtb3ZlQ2xhc3MoZS5qb2luKCIgIikpLHQuY3NzKHsiYW5pbWF0aW9uLWRlbGF5IjoiIiwiYW5pbWF0aW9uLWR1cmF0aW9uIjoiIiwiYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiI6IiIsb3BhY2l0eToiIix0cmFuc2Zvcm06IiIsbGVmdDoiIn0pLHQuYWRkQ2xhc3MoImV0X2hhZF9hbmltYXRpb24iKX19LHdpbmRvdy5ldF9yZW1vdmVfYW5pbWF0aW9uX2RhdGE9ZnVuY3Rpb24odCl7dmFyIGU9W107aWYoISgwLGEuZGVmYXVsdCkodC5nZXQoMCkpKXtmb3IodmFyIGk9dC5nZXQoMCkuYXR0cmlidXRlcyxvPTA7bzxpLmxlbmd0aDtvKyspImRhdGEtYW5pbWF0aW9uLSI9PT1pW29dLm5hbWUuc3Vic3RyaW5nKDAsMTUpJiZlLnB1c2goaVtvXS5uYW1lKTtuLmVhY2goZSwoZnVuY3Rpb24oZSxuKXt0LnJlbW92ZUF0dHIobil9KSl9fSx3aW5kb3cuZXRfcmVpbml0X3dheXBvaW50X21vZHVsZXM9ZXRfcGJfZGVib3VuY2UoKGZ1bmN0aW9uKCl7dmFyIHQ9bigiLmV0X3BiX2NpcmNsZV9jb3VudGVyIiksZT1uKCIuZXRfcGJfbnVtYmVyX2NvdW50ZXIiKSxhPW4oIi5ldF9wYl9zZWN0aW9uX3ZpZGVvX2JnIHZpZGVvIik7aWYobi5mbi53YXlwb2ludCYmd2luZG93LmV0X3BiX2N1c3RvbSYmInllcyIhPT13aW5kb3cuZXRfcGJfY3VzdG9tLmlnbm9yZV93YXlwb2ludHMmJiFkLmlzQnVpbGRlcilldF9wcm9jZXNzX2FuaW1hdGlvbl9kYXRhKCEwKSxuKCIuZXQtd2F5cG9pbnQiKS5lYWNoKChmdW5jdGlvbigpe2p0KG4odGhpcykse29mZnNldDpUdChuKHRoaXMpLCIxMDAlIiksaGFuZGxlcjpmdW5jdGlvbigpe24odGhpcy5lbGVtZW50KS5hZGRDbGFzcygiZXQtYW5pbWF0ZWQiKX19LDIpfSkpLHQubGVuZ3RoJiZ0LmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKS5maW5kKCIuZXRfcGJfY2lyY2xlX2NvdW50ZXJfaW5uZXIiKTt0LmlzKCI6dmlzaWJsZSIpJiYhZXRfaGFzX2FuaW1hdGlvbl9kYXRhKHQpJiZqdCh0LHtvZmZzZXQ6VHQobih0aGlzKSwiMTAwJSIpLGhhbmRsZXI6ZnVuY3Rpb24oKXt0LmRhdGEoIlBpZUNoYXJ0SGFzTG9hZGVkIil8fHZvaWQgMD09PXQuZGF0YSgiZWFzeVBpZUNoYXJ0Iil8fGl8fCh0LmRhdGEoImVhc3lQaWVDaGFydCIpLnVwZGF0ZSh0LmRhdGEoIm51bWJlci12YWx1ZSIpKSx0LmRhdGEoIlBpZUNoYXJ0SGFzTG9hZGVkIiwhMCkpfX0sMil9KSksZS5sZW5ndGgmJmUuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO2V0X2hhc19hbmltYXRpb25fZGF0YSh0KXx8anQodCx7b2Zmc2V0OlR0KG4odGhpcyksIjEwMCUiKSxoYW5kbGVyOmZ1bmN0aW9uKCl7dC5kYXRhKCJlYXN5UGllQ2hhcnQiKS51cGRhdGUodC5kYXRhKCJudW1iZXItdmFsdWUiKSl9fSl9KSksZC5pc0J1aWxkZXJ8fG4uZWFjaChldF9wYl9jdXN0b20uYWJfdGVzdHMsKGZ1bmN0aW9uKHQsZSl7dmFyIGk9SXQoZS5wb3N0X2lkKTtpZigwPT09aS5sZW5ndGgpcmV0dXJuITA7anQoaSx7b2Zmc2V0OlR0KG4odGhpcyksIjgwJSIpLGhhbmRsZXI6ZnVuY3Rpb24oKXshbnRbZS5wb3N0X2lkXS5yZWFkX2dvYWwmJmkubGVuZ3RoJiZpLnZpc2libGUoITApJiYoc2V0VGltZW91dCgoZnVuY3Rpb24oKXtpLmxlbmd0aCYmaS52aXNpYmxlKCEwKSYmIW50W2UucG9zdF9pZF0ucmVhZF9nb2FsJiZQdCgicmVhZF9nb2FsIixlLnBvc3RfaWQsdm9pZCAwLGUudGVzdF9pZCl9KSwzZTMpLFN0KGksInZpZXdfZ29hbCIpKX19KX0pKTtlbHNle2V0X3Byb2Nlc3NfYW5pbWF0aW9uX2RhdGEoITEpO3ZhciBvPWQuaXNCdWlsZGVyPyJldC1hbmltYXRlZC0tdmIiOiJldC1hbmltYXRlZCI7bigiLmV0LXdheXBvaW50IikuYWRkQ2xhc3MobyksbigiLmV0LXdheXBvaW50IikuZWFjaCgoZnVuY3Rpb24oKXtldF9hbmltYXRlX2VsZW1lbnQobih0aGlzKSl9KSksdC5sZW5ndGgmJnQuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLmZpbmQoIi5ldF9wYl9jaXJjbGVfY291bnRlcl9pbm5lciIpO3QuaXMoIjp2aXNpYmxlIikmJih0LmRhdGEoIlBpZUNoYXJ0SGFzTG9hZGVkIil8fHZvaWQgMD09PXQuZGF0YSgiZWFzeVBpZUNoYXJ0Iil8fCh0LmRhdGEoImVhc3lQaWVDaGFydCIpLnVwZGF0ZSh0LmRhdGEoIm51bWJlci12YWx1ZSIpKSx0LmRhdGEoIlBpZUNoYXJ0SGFzTG9hZGVkIiwhMCkpKX0pKSxlLmxlbmd0aCYmZS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyk7dC5kYXRhKCJlYXN5UGllQ2hhcnQiKS51cGRhdGUodC5kYXRhKCJudW1iZXItdmFsdWUiKSl9KSksbi5lYWNoKGV0X3BiX2N1c3RvbS5hYl90ZXN0cywoZnVuY3Rpb24odCxlKXt2YXIgbj1JdChlLnBvc3RfaWQpO3JldHVybiAwPT09bi5sZW5ndGh8fCEoIW50W2UucG9zdF9pZF0ucmVhZF9nb2FsJiZuLmxlbmd0aCYmbi52aXNpYmxlKCEwKSl8fChzZXRUaW1lb3V0KChmdW5jdGlvbigpe24ubGVuZ3RoJiZuLnZpc2libGUoITApJiYhbnRbZS5wb3N0X2lkXS5yZWFkX2dvYWwmJlB0KCJyZWFkX2dvYWwiLGUucG9zdF9pZCx2b2lkIDAsZS50ZXN0X2lkKX0pLDNlMyksdm9pZCBTdChuLCJ2aWV3X2dvYWwiKSl9KSl9YS5sZW5ndGgmJmEuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO2V0X3BiX3ZpZGVvX2JhY2tncm91bmRfaW5pdCh0LHRoaXMpfSkpfSksMTAwKSwidW5kZWZpbmVkIiE9dHlwZW9mIGV0X2xpbmtfb3B0aW9uc19kYXRhJiZldF9saW5rX29wdGlvbnNfZGF0YS5sZW5ndGg+MCYmbi5lYWNoKGV0X2xpbmtfb3B0aW9uc19kYXRhLChmdW5jdGlvbih0LGUpe2lmKGUuY2xhc3MmJmUudXJsJiZlLnRhcmdldCl7dmFyIGk9bigiLiIuY29uY2F0KGUuY2xhc3MpKTtpLm9uKCJjbGljayIsKGZ1bmN0aW9uKHQpe2lmKHQudGFyZ2V0IT09dC5jdXJyZW50VGFyZ2V0JiYhT3Qobih0LnRhcmdldCkpfHx0LnRhcmdldD09PXQuY3VycmVudFRhcmdldCl7dC5zdG9wUHJvcGFnYXRpb24oKTt2YXIgaT1lLnVybDtpZihpPShpPWkucmVwbGFjZSgvJiM5MTsvZywiWyIpKS5yZXBsYWNlKC8mIzkzOy9nLCJdIiksIl9ibGFuayI9PT1lLnRhcmdldClyZXR1cm4gdm9pZCB3aW5kb3cub3BlbihpKTtpZigiI3Byb2R1Y3RfcmV2aWV3c190YWIiPT09aSl7dmFyIGE9bigiLnJldmlld3NfdGFiIGEiKTthLmxlbmd0aD4wJiYoYS50cmlnZ2VyKCJjbGljayIpLGV0X3BiX3Ntb290aF9zY3JvbGwoYSx2b2lkIDAsODAwKSxoaXN0b3J5LnB1c2hTdGF0ZShudWxsLCIiLGkpKX1lbHNlIGkmJiIjIj09PWlbMF0mJm4oaSkubGVuZ3RoPyhldF9wYl9zbW9vdGhfc2Nyb2xsKG4oaSksdm9pZCAwLDgwMCksaGlzdG9yeS5wdXNoU3RhdGUobnVsbCwiIixpKSk6d2luZG93LmxvY2F0aW9uPWl9fSkpLGkub24oImNsaWNrIiwiYSwgYnV0dG9uIiwoZnVuY3Rpb24odCl7T3Qobih0aGlzKSl8fHQuc3RvcFByb3BhZ2F0aW9uKCl9KSl9fSkpO3ZhciBGdD17fSxMdD17fTtmdW5jdGlvbiBEdCgpe2lmKG4uZm4uZml0Vmlkcyl7dmFyIHQ9ImlmcmFtZVtzcmNePSdodHRwOi8vd3d3Lmh1bHUuY29tJ10sIGlmcmFtZVtzcmNePSdodHRwOi8vd3d3LmRhaWx5bW90aW9uLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cDovL3d3dy5mdW5ueW9yZGllLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cHM6Ly9lbWJlZC1zc2wudGVkLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cDovL2VtYmVkLnJldmlzaW9uMy5jb20nXSwgaWZyYW1lW3NyY149J2h0dHBzOi8vZmxpY2tyLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cDovL2JsaXAudHYnXSwgaWZyYW1lW3NyY149J2h0dHA6Ly93d3cuY29sbGVnZWh1bW9yLmNvbSddIixlPSIiOygwLGEuZGVmYXVsdCkod2luZG93LmxhenlTaXplcyl8fCh0Kz0iLCBpZnJhbWVbc3JjXj0nZGF0YTppbWFnZSddIixlKz0iLmxhenlsb2FkaW5nIiksbigiLmV0X3BiX3NsaWRlX3ZpZGVvIikuZml0VmlkcygpLG4oIi5ldF9wYl9tb2R1bGUiKS5maXRWaWRzKHtjdXN0b21TZWxlY3Rvcjp0LGlnbm9yZTplfSl9eHQoKSxldF9jYWxjdWxhdGVfZnVsbHNjcmVlbl9zZWN0aW9uX3NpemUoKX1mdW5jdGlvbiBXdCgpe2V0X2ZpeF9mdWxsc2NyZWVuX3NlY3Rpb24oKSxldF9jYWxjdWxhdGVfZnVsbHNjcmVlbl9zZWN0aW9uX3NpemUoKSxuKGRvY3VtZW50KS5vbigiY2xpY2siLCIuZXRfcGJfZnVsbHdpZHRoX2hlYWRlcl9zY3JvbGwgYSIsZXRfcGJfZnVsbHdpZHRoX2hlYWRlcl9zY3JvbGwpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7bigiLmV0X3BiX3ByZWxvYWQiKS5yZW1vdmVDbGFzcygiZXRfcGJfcHJlbG9hZCIpfSksNTAwKSx3aW5kb3cuSGFzaENoYW5nZUV2ZW50JiYobih3aW5kb3cpLm9uKCJoYXNoY2hhbmdlIiwoZnVuY3Rpb24oKXshZnVuY3Rpb24odCl7dmFyIGksYSxvO2lmKHQubGVuZ3RoKWlmKC0xIT09dC5pbmRleE9mKGUsMCkpe2k9dC5zcGxpdChlKTtmb3IodmFyIHI9MDtyPGkubGVuZ3RoO3IrKylvPShhPWlbcl0uc3BsaXQobCkpWzBdLGEuc2hpZnQoKSxvLmxlbmd0aCYmbigiIyIuY29uY2F0KG8pKS5sZW5ndGgmJm4oIiMiLmNvbmNhdChvKSkudHJpZ2dlcih7dHlwZToiZXRfaGFzaGNoYW5nZSIscGFyYW1zOmF9KX1lbHNlIG89KGE9dC5zcGxpdChsKSlbMF0sYS5zaGlmdCgpLG8ubGVuZ3RoJiZuKCIjIi5jb25jYXQobykpLmxlbmd0aCYmbigiIyIuY29uY2F0KG8pKS50cmlnZ2VyKHt0eXBlOiJldF9oYXNoY2hhbmdlIixwYXJhbXM6YX0pfSh3aW5kb3cubG9jYXRpb24uaGFzaC5yZXBsYWNlKC9bXmEtekEtWjAtOS1ffF0vZywiIikpfSkpLG4od2luZG93KS50cmlnZ2VyKCJoYXNoY2hhbmdlIikpLFcubGVuZ3RoJiYhTiYmVy5lYWNoKChmdW5jdGlvbigpe2V0X3BiX3BhcmFsbGF4X2luaXQobih0aGlzKSl9KSksd2luZG93LmV0X3JlaW5pdF93YXlwb2ludF9tb2R1bGVzKCksbigiLmV0X2F1ZGlvX2NvbnRlbnQiKS5sZW5ndGgmJm4od2luZG93KS50cmlnZ2VyKCJyZXNpemUiKX1mdW5jdGlvbiBxdCgpe3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7KHdpbmRvdy5ldF9wYl9ib3hfc2hhZG93X2VsZW1lbnRzfHxbXSkubWFwKGV0X3BiX2JveF9zaGFkb3dfYXBwbHlfb3ZlcmxheSl9KSwwKX1mdW5jdGlvbiBOdCh0LGUpe3ZhciBpPW4od2luZG93KS53aWR0aCgpPjk4MCxhPXdpbmRvdy5ldF9pc19maXhlZF9uYXYsbz1uKCIjd3BhZG1pbmJhciIpLHI9by5sZW5ndGgmJmk/by5oZWlnaHQoKTowLHM9bigiI3RvcC1oZWFkZXIiKSxjPXMubGVuZ3RoJiZhJiZpP3MuaGVpZ2h0KCk6MCxsPW4oIiNtYWluLWhlYWRlciIpLF89citjKyhsLmxlbmd0aCYmYSYmaT9sLmhlaWdodCgpOjApLGQ9dC5vZmZzZXQoKS50b3AtXy01MDt2b2lkIDAhPT10LmZpbmQoIi5ldF9wYl9zYWx2YXR0b3JlX2NvbnRlbnQiKS5hdHRyKCJkYXRhLWNvbHVtbnMiKSYmKGV8fHNhbHZhdHRvcmUucmVnaXN0ZXJHcmlkKHQuZmluZCgiLmV0X3BiX3NhbHZhdHRvcmVfY29udGVudCIpWzBdKSxzYWx2YXR0b3JlLnJlY3JlYXRlQ29sdW1ucyh0LmZpbmQoIi5ldF9wYl9zYWx2YXR0b3JlX2NvbnRlbnQiKVswXSksdC5maW5kKCIuZXRfcGJfcG9zdCIpLmNzcyh7b3BhY2l0eToiMSJ9KSksdC5maW5kKCIuZXRfYXVkaW9fY29udGFpbmVyIikubGVuZ3RoPjAmJiJ1bmRlZmluZWQiIT10eXBlb2Ygd3AmJnZvaWQgMCE9PXdwLm1lZGlhZWxlbWVudCYmImZ1bmN0aW9uIj09dHlwZW9mIHdwLm1lZGlhZWxlbWVudC5pbml0aWFsaXplJiYod3AubWVkaWFlbGVtZW50LmluaXRpYWxpemUoKSxuKHdpbmRvdykudHJpZ2dlcigicmVzaXplIikpLHQuZmluZCgiLmV0LXdheXBvaW50LCAuZXRfcGJfY2lyY2xlX2NvdW50ZXIsIC5ldF9wYl9udW1iZXJfY291bnRlciIpLmxlbmd0aD4wJiZ0LmZpbmQoIi5ldC13YXlwb2ludCwgLmV0X3BiX2NpcmNsZV9jb3VudGVyLCAuZXRfcGJfbnVtYmVyX2NvdW50ZXIiKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyk7dC5oYXNDbGFzcygiZXRfcGJfY2lyY2xlX2NvdW50ZXIiKSYmd2luZG93LmV0X3BiX3JlaW5pdF9jaXJjbGVfY291bnRlcnModCksdC5oYXNDbGFzcygiZXRfcGJfbnVtYmVyX2NvdW50ZXIiKSYmd2luZG93LmV0X3BiX3JlaW5pdF9udW1iZXJfY291bnRlcnModCksdC5maW5kKCIuZXRfcGJfY291bnRlcl9hbW91bnQiKS5sZW5ndGg+MCYmdC5maW5kKCIuZXRfcGJfY291bnRlcl9hbW91bnQiKS5lYWNoKChmdW5jdGlvbigpe3dpbmRvdy5ldF9iYXJfY291bnRlcnNfaW5pdChuKHRoaXMpKX0pKSxuKHRoaXMpLmNzcyh7b3BhY2l0eToiMSJ9KSx3aW5kb3cuZXRfcmVpbml0X3dheXBvaW50X21vZHVsZXMoKX0pKSx0LmZpbmQoIi5ldF9wYl9zbGlkZXIiKS5sZW5ndGg+MCYmdC5maW5kKCIuZXRfcGJfc2xpZGVyIikuZWFjaCgoZnVuY3Rpb24oKXtldF9wYl9zbGlkZXJfaW5pdChuKHRoaXMpKX0pKSx0Lm9uKCJjbGljayIsIi5ldF9wYl92aWRlb19vdmVybGF5IiwoZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpLGV0X3BiX3BsYXlfb3ZlcmxheWVkX3ZpZGVvKG4odGhpcykpfSkpLHQuZml0Vmlkcyh7Y3VzdG9tU2VsZWN0b3I6ImlmcmFtZVtzcmNePSdodHRwOi8vd3d3Lmh1bHUuY29tJ10sIGlmcmFtZVtzcmNePSdodHRwOi8vd3d3LmRhaWx5bW90aW9uLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cDovL3d3dy5mdW5ueW9yZGllLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cHM6Ly9lbWJlZC1zc2wudGVkLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cDovL2VtYmVkLnJldmlzaW9uMy5jb20nXSwgaWZyYW1lW3NyY149J2h0dHBzOi8vZmxpY2tyLmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cDovL2JsaXAudHYnXSwgaWZyYW1lW3NyY149J2h0dHA6Ly93d3cuY29sbGVnZWh1bW9yLmNvbSddIn0pLHQuZmFkZVRvKCJzbG93IiwxKSwiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LmV0X3Nob3J0Y29kZXNfaW5pdCYmd2luZG93LmV0X3Nob3J0Y29kZXNfaW5pdCh0KSxUKCksbigiaHRtbCwgYm9keSIpLmFuaW1hdGUoe3Njcm9sbFRvcDpkfSk7dmFyIHA9dC5maW5kKCIuZXRfcGJfZ3JpZF9pdGVtIik7cC5sZW5ndGgmJmV0X3BiX3NldF9yZXNwb25zaXZlX2dyaWQobihwLnBhcmVudCgpLmdldCgwKSksIi5ldF9wYl9ncmlkX2l0ZW0iKX13aW5kb3cuZXRfY2FsY19mdWxsc2NyZWVuX3NlY3Rpb249ZnVuY3Rpb24odCxlKXt2YXIgaT0ib2JqZWN0Ij09PXUodCkmJiJyZXNpemUiPT09dC50eXBlLGE9bihwKSxvPWV8fG4odGhpcykscj1vLmluZGV4KCIuZXRfcGJfZnVsbHNjcmVlbiIpLHM9aSYmdm9pZCAwIT09RnRbcl0mJnQudGFyZ2V0LndpbmRvd193aWR0aD5GdFtyXT84MDA6MDtGdFtyXT1hLndpZHRoKCksdm9pZCAwIT09THRbcl0mJmNsZWFyVGltZW91dChMdFtyXSksTHRbcl09c2V0VGltZW91dCgoZnVuY3Rpb24oKXt2YXIgdD1uKCJib2R5IiksZT1uKCIuZXQtbC0taGVhZGVyIikuZmlyc3QoKSxpPWUubGVuZ3RoPjA/ZS5oZWlnaHQoKTowLHI9by5sZW5ndGgscz1vLmluZGV4KCIuZXRfcGJfZnVsbHdpZHRoX2hlYWRlciIpLGM9cj9vLm9mZnNldCgpOnt9LGw9by5jaGlsZHJlbigiLmV0X3BiX2Z1bGx3aWR0aF9oZWFkZXJfY29udGFpbmVyIiksXz1sLmNoaWxkcmVuKCIuaGVhZGVyLWNvbnRlbnQtY29udGFpbmVyIiksZD1sLmNoaWxkcmVuKCIuaGVhZGVyLWltYWdlLWNvbnRhaW5lciIpLHU9cC5pbm5lckhlaWdodHx8YS5oZWlnaHQoKSxmPXAualF1ZXJ5KCIjd3BhZG1pbmJhciIpLGg9Zi5sZW5ndGgsYj1oP2YuaGVpZ2h0KCk6MCx2PW4oIiN0b3AtaGVhZGVyIiksbT12Lmxlbmd0aCxnPW0/di5oZWlnaHQoKTowLHc9bigiI21haW4taGVhZGVyIikseT13Lmxlbmd0aCx4PXk/dy5vdXRlckhlaWdodCgpOjAsQz1IdCgpLGs9YS53aWR0aCgpPDc4MixqPWEud2lkdGgoKT45ODAsVD0oYS53aWR0aCgpPD05ODAmJmEud2lkdGgoKSxhLndpZHRoKCksYitpK2crKHdpbmRvdy5ldF9pc192ZXJ0aWNhbF9uYXYmJmo/MDp4KSksTz12b2lkIDAhPT1jLnRvcCYmYy50b3A8PVQsUz1wLmpRdWVyeSgiLmVkaXQtcG9zdC1oZWFkZXIiKSxQPXAualF1ZXJ5KCIuZWRpdC1wb3N0LWxheW91dF9fZm9vdGVyIik7dy5hdHRyKCJkYXRhLWhlaWdodC1vbmxvYWQiKSYmKHg9cGFyc2VGbG9hdCh3LmF0dHIoImRhdGEtaGVpZ2h0LW9ubG9hZCIpKSksaCYmKGs/TyYmKHUtPWIpOnUtPWIpLFMubGVuZ3RoPjAmJih1LT1TLm91dGVySGVpZ2h0KCkpLFAubGVuZ3RoPjAmJih1LT1QLm91dGVySGVpZ2h0KCkpLG0mJmomJihaJiYhd2luZG93LmV0X2lzX3ZlcnRpY2FsX25hdj9PfHwodS09Zyk6IXdpbmRvdy5ldF9pc19maXhlZF9uYXZ8fHdpbmRvdy5ldF9pc192ZXJ0aWNhbF9uYXY/TyYmKHUtPWcpOnUtPWcpLHkmJihqP1omJiF3aW5kb3cuZXRfaXNfdmVydGljYWxfbmF2P098fCh1LT1DKTp3aW5kb3cuZXRfaXNfZml4ZWRfbmF2JiYhd2luZG93LmV0X2lzX3ZlcnRpY2FsX25hdj91LT1PP3g6Qzp3aW5kb3cuZXRfaXNfZml4ZWRfbmF2fHx3aW5kb3cuZXRfaXNfdmVydGljYWxfbmF2fHxPJiYodS09eCk6TyYmKHUtPXgpKSx0Lmhhc0NsYXNzKCJldF90cmFuc3BhcmVudF9uYXYiKSYmdC5oYXNDbGFzcygiZXRfaGlkZV9uYXYiKSYmMD09PXMmJm8uY3NzKCJwYWRkaW5nLXRvcCIsIiIpO3ZhciB6PXBhcnNlSW50KG8uY3NzKCJib3JkZXJUb3BXaWR0aCIpKTt6JiYodS09eik7dmFyIEk9cGFyc2VJbnQoby5jc3MoImJvcmRlckJvdHRvbVdpZHRoIikpO2lmKEkmJih1LT1JKSxpPjAmJjA9PT1zJiYwPT09by5jbG9zZXN0KGUpLmxlbmd0aCYmKHUtPWkpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7by5jc3MoIm1pbi1oZWlnaHQiLCIiLmNvbmNhdCh1LCJweCIpKSxsLmNzcygibWluLWhlaWdodCIsIiIuY29uY2F0KHUsInB4IikpfSksMTAwKSxsLmhhc0NsYXNzKCJjZW50ZXIiKSYmXy5oYXNDbGFzcygiYm90dG9tIikmJmQuaGFzQ2xhc3MoImJvdHRvbSIpJiZsLmFkZENsYXNzKCJib3R0b20tYm90dG9tIiksbC5oYXNDbGFzcygiY2VudGVyIikmJl8uaGFzQ2xhc3MoImNlbnRlciIpJiZkLmhhc0NsYXNzKCJjZW50ZXIiKSYmbC5hZGRDbGFzcygiY2VudGVyLWNlbnRlciIpLGwuaGFzQ2xhc3MoImNlbnRlciIpJiZfLmhhc0NsYXNzKCJjZW50ZXIiKSYmZC5oYXNDbGFzcygiYm90dG9tIikpe2wuYWRkQ2xhc3MoImNlbnRlci1ib3R0b20iKTt2YXIgQT11LWQub3V0ZXJIZWlnaHQoITApO0E+MCYmXy5jc3MoIm1pbi1oZWlnaHQiLCIiLmNvbmNhdChBLCJweCIpKS5jc3MoImhlaWdodCIsIjEwcHgiKX1sLmhhc0NsYXNzKCJjZW50ZXIiKSYmXy5oYXNDbGFzcygiYm90dG9tIikmJmQuaGFzQ2xhc3MoImNlbnRlciIpJiZsLmFkZENsYXNzKCJib3R0b20tY2VudGVyIiksKGwuaGFzQ2xhc3MoImxlZnQiKXx8bC5oYXNDbGFzcygicmlnaHQiKSkmJiFfLmxlbmd0aCYmZC5sZW5ndGgmJmwuY3NzKCJqdXN0aWZ5LWNvbnRlbnQiLCJmbGV4LWVuZCIpLGwuaGFzQ2xhc3MoImNlbnRlciIpJiZfLmhhc0NsYXNzKCJib3R0b20iKSYmIWQubGVuZ3RoJiZfLmZpbmQoIi5oZWFkZXItY29udGVudCIpLmNzcygibWFyZ2luLWJvdHRvbSIsIiIuY29uY2F0KDgwLCJweCIpKSxfLmhhc0NsYXNzKCJib3R0b20iKSYmZC5oYXNDbGFzcygiY2VudGVyIikmJihkLmZpbmQoIi5oZWFkZXItaW1hZ2UiKS5jc3MoIm1hcmdpbi1ib3R0b20iLCIiLmNvbmNhdCg4MCwicHgiKSksZC5jc3MoImFsaWduLXNlbGYiLCJmbGV4LWVuZCIpKTt2YXIgRT0wO18ubGVuZ3RoJiYoRSs9Xy5vdXRlckhlaWdodCgpKSxkLmxlbmd0aCYmKEUrPWQub3V0ZXJIZWlnaHQoKSksRT51JiYoby5jc3MoIm1pbi1oZWlnaHQiLCIiLmNvbmNhdChFLCJweCIpKSxsLmNzcygibWluLWhlaWdodCIsIiIuY29uY2F0KEUsInB4IikpKSxkLmhhc0NsYXNzKCJib3R0b20iKSYmKEU8dSYmKG8uY3NzKCJtaW4taGVpZ2h0IiwiIi5jb25jYXQoRSs4MCwicHgiKSksbC5jc3MoIm1pbi1oZWlnaHQiLCIiLmNvbmNhdChFKzgwLCJweCIpKSksbC5jc3MoImp1c3RpZnktY29udGVudCIsImZsZXgtZW5kIikpfSkscyl9LGQuaXNCdWlsZGVyfHwoaC5vbigicmVzaXplIixldF9jYWxjdWxhdGVfZnVsbHNjcmVlbl9zZWN0aW9uX3NpemUpLGgub24oImV0LXBiLWhlYWRlci1oZWlnaHQtY2FsY3VsYXRlZCIsZXRfY2FsY3VsYXRlX2Z1bGxzY3JlZW5fc2VjdGlvbl9zaXplKSksd2luZG93LmRlYm91bmNlZF9ldF9hcHBseV9idWlsZGVyX2Nzc19wYXJhbGxheD1ldF9wYl9kZWJvdW5jZShldF9hcHBseV9idWlsZGVyX2Nzc19wYXJhbGxheCwxMDApLHdpbmRvdy5ldF9wYl9wYXJhbGxheF9pbml0PWZ1bmN0aW9uKHQpe3ZhciBlPXQucGFyZW50KCk7dC5oYXNDbGFzcygiZXRfcGJfcGFyYWxsYXhfY3NzIik/KG4oImJvZHkiKS5oYXNDbGFzcygiZXQtZmIiKXx8dnx8aSkmJihldF9hcHBseV9idWlsZGVyX2Nzc19wYXJhbGxheC5iaW5kKGUpKCksdj9wLmpRdWVyeSgiI2V0LWZiLWFwcCIpLm9uKCJzY3JvbGwuZXRDc3NQYXJhbGxheEJhY2tncm91bmQiLGV0X2FwcGx5X2J1aWxkZXJfY3NzX3BhcmFsbGF4LmJpbmQoZSkpLm9uKCJyZXNpemUuZXRDc3NQYXJhbGxheEJhY2tncm91bmQiLHdpbmRvdy5kZWJvdW5jZWRfZXRfYXBwbHlfYnVpbGRlcl9jc3NfcGFyYWxsYXguYmluZChlKSk6bih3aW5kb3cpLm9uKCJzY3JvbGwuZXRDc3NQYXJhbGxheEJhY2tncm91bmQiLGV0X2FwcGx5X2J1aWxkZXJfY3NzX3BhcmFsbGF4LmJpbmQoZSkpLm9uKCJyZXNpemUuZXRDc3NQYXJhbGxheEJhY2tncm91bmQiLHdpbmRvdy5kZWJvdW5jZWRfZXRfYXBwbHlfYnVpbGRlcl9jc3NfcGFyYWxsYXguYmluZChlKSkpOihldF9wYXJhbGxheF9zZXRfaGVpZ2h0LmJpbmQoZSkoKSxldF9hcHBseV9wYXJhbGxheC5iaW5kKGUpKCksdj9wLmpRdWVyeSgiI2V0LWZiLWFwcCIpLm9uKCJzY3JvbGwuZXRUcnVlUGFyYWxsYXhCYWNrZ3JvdW5kIixldF9hcHBseV9wYXJhbGxheC5iaW5kKGUpKTpuKHdpbmRvdykub24oInNjcm9sbC5ldFRydWVQYXJhbGxheEJhY2tncm91bmQiLGV0X2FwcGx5X3BhcmFsbGF4LmJpbmQoZSkpLG4od2luZG93KS5vbigicmVzaXplLmV0VHJ1ZVBhcmFsbGF4QmFja2dyb3VuZCIsZXRfcGJfZGVib3VuY2UoZXRfcGFyYWxsYXhfc2V0X2hlaWdodCwxMDApLmJpbmQoZSkpLG4od2luZG93KS5vbigicmVzaXplLmV0VHJ1ZVBhcmFsbGF4QmFja2dyb3VuZCIsZXRfcGJfZGVib3VuY2UoZXRfYXBwbHlfcGFyYWxsYXgsMTAwKS5iaW5kKGUpKSxlLmZpbmQoIi5ldC1sZWFybi1tb3JlIC5oZWFkaW5nLW1vcmUiKS5vbigiY2xpY2siLChmdW5jdGlvbigpe3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZXRfcGFyYWxsYXhfc2V0X2hlaWdodC5iaW5kKGUpKCl9KSwzMDApfSkpKX0sbih3aW5kb3cpLm9uKCJyZXNpemUiLChmdW5jdGlvbigpe3ZhciB0PWYud2lkdGgoKSxlPVEuY3NzKCJ3aWR0aCIpLGk9dm9pZCAwIT09ZSYmIiUiIT09ZS5zdWJzdHIoLTEsMSk/US53aWR0aCgpOlEud2lkdGgoKS8xMDAqdCxhPVUhPT1pLG89bigiLmV0X3BiX3RvcF9pbnNpZGVfZGl2aWRlciwgLmV0X3BiX2JvdHRvbV9pbnNpZGVfZGl2aWRlciIpO2lmKGV0X3BiX3Jlc2l6ZV9zZWN0aW9uX3ZpZGVvX2JnKCksZXRfcGJfY2VudGVyX3ZpZGVvKCkseHQoKSxrdCgpLE8oKSxBLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9ISFuKHRoaXMpLmhhc0NsYXNzKCJldF9wYl9mdWxsd2lkdGhfcG9ydGZvbGlvX2Nhcm91c2VsIik7cHQobih0aGlzKSx0KX0pKSxhfHx3aW5kb3cuZXRfZm9yY2Vfd2lkdGhfY29udGFpbmVyX2NoYW5nZSl7bigiLmNvbnRhaW5lci13aWR0aC1jaGFuZ2Utbm90aWZ5IikudHJpZ2dlcigiY29udGFpbmVyV2lkdGhDaGFuZ2VkIiksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtJLmVhY2goKGZ1bmN0aW9uKCl7d2luZG93LnNldF9maWx0ZXJhYmxlX2dyaWRfaXRlbXMobih0aGlzKSl9KSksRS5lYWNoKChmdW5jdGlvbigpe24odGhpcykuaGFzQ2xhc3MoImV0X3BiX2dhbGxlcnlfZ3JpZCIpJiZzZXRfZ2FsbGVyeV9ncmlkX2l0ZW1zKG4odGhpcykpfSkpfSksMTAwKSxVPWk7dmFyIHI9bigiLmV0X3BiX2NpcmNsZV9jb3VudGVyIik7ci5sZW5ndGgmJnIuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpLmZpbmQoIi5ldF9wYl9jaXJjbGVfY291bnRlcl9pbm5lciIpO2lmKHQuaXMoIjp2aXNpYmxlIikpe3ZvaWQgMD09PXQuZGF0YSgiZWFzeVBpZUNoYXJ0IikmJndpbmRvdy5ldF9wYl9jaXJjbGVfY291bnRlcl9pbml0KHQpO3ZhciBlPUF0KCk7aXQ9ZTt2YXIgaT0iZGVza3RvcCIhPT1lPyItIi5jb25jYXQoZSk6IiIsYT10LmRhdGEoImJhci1iZy1jb2xvciIuY29uY2F0KGkpKTt2b2lkIDAhPT1hJiYiIiE9PWEmJih0LmRhdGEoImVhc3lQaWVDaGFydCIpLm9wdGlvbnMuYmFyQ29sb3I9YSk7dmFyIG89dC5kYXRhKCJjb2xvciIuY29uY2F0KGkpKTt2b2lkIDAhPT1vJiYiIiE9PW8mJih0LmRhdGEoImVhc3lQaWVDaGFydCIpLm9wdGlvbnMudHJhY2tDb2xvcj1vLHQudHJpZ2dlcigiY29udGFpbmVyV2lkdGhDaGFuZ2VkIikpO3ZhciByPXQuZGF0YSgiYWxwaGEiLmNvbmNhdChpKSk7dm9pZCAwIT09ciYmIiIhPT1yJiYodC5kYXRhKCJlYXN5UGllQ2hhcnQiKS5vcHRpb25zLnRyYWNrQWxwaGE9cix0LnRyaWdnZXIoImNvbnRhaW5lcldpZHRoQ2hhbmdlZCIpKSx0LmRhdGEoImVhc3lQaWVDaGFydCIpLnVwZGF0ZSh0LmRhdGEoIm51bWJlci12YWx1ZSIpKX19KSksQi5sZW5ndGgmJkIuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO2V0X2NvdW50ZG93bl90aW1lcl9sYWJlbHModCl9KSksd2luZG93LmV0X2ZvcmNlX3dpZHRoX2NvbnRhaW5lcl9jaGFuZ2U9ITF9d2luZG93LmV0X2ZpeF90ZXN0aW1vbmlhbF9pbm5lcl93aWR0aCgpLEoubGVuZ3RoJiZKLmVhY2goKGZ1bmN0aW9uKCl7d2luZG93LmV0X2Jhcl9jb3VudGVyc19pbml0KG4odGhpcykpfSkpLGQuaXNCdWlsZGVyJiZBdCgpIT09aXQmJmV0X3Byb2Nlc3NfYW5pbWF0aW9uX2RhdGEoITEpLChGLmxlbmd0aHx8ZC5pc0J1aWxkZXIpJiZmdW5jdGlvbih0KXtpZihBdCgpPT09aXQpcmV0dXJuITE7dC5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyksZT10LmRhdGEoIm1hcCIpO2lmKHZvaWQgMCE9PWUpe3ZhciBpPUF0KCk7aXQ9aTt2YXIgYT0iZGVza3RvcCIhPT1pPyItIi5jb25jYXQoaSk6IiIsbz0icGhvbmUiPT09aT8iLXRhYmxldCI6IiIscj10LmF0dHIoImRhdGEtZ3JheXNjYWxlIi5jb25jYXQoYSkpfHwwO3J8fChyPXQuYXR0cigiZGF0YS1ncmF5c2NhbGUiLmNvbmNhdChvKSl8fHQuYXR0cigiZGF0YS1ncmF5c2NhbGUiKXx8MCksMCE9PXImJihyPSItIi5jb25jYXQoci50b1N0cmluZygpKSksZS5zZXRPcHRpb25zKHtzdHlsZXM6W3tzdHlsZXJzOlt7c2F0dXJhdGlvbjpwYXJzZUludChyKX1dfV19KX19KSl9KEYpLChvdC5sZW5ndGh8fGQuaXNCdWlsZGVyKSYmbihvdCkuZWFjaCgoZnVuY3Rpb24oKXt3aW5kb3cuZXRfcGJfc2V0X3Jlc3BvbnNpdmVfZ3JpZChuKHRoaXMpLCIuZXRfcGJfZ3JpZF9pdGVtIil9KSksIWQuaXNCdWlsZGVyJiZvLmxlbmd0aCYmby5lYWNoKChmdW5jdGlvbigpe2V0Rml4RGl2aWRlclNwYWNpbmcobih0aGlzKSl9KSl9KSksZC5pc0J1aWxkZXI/bih3aW5kb3cpLm9uZSgiZXRfZmJfaW5pdF9hcHBfYWZ0ZXIiLER0KTpEdCgpLHdpbmRvdy5ldF9wYl9mdWxsd2lkdGhfaGVhZGVyX3Njcm9sbD1mdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCk7dmFyIGU9Zi53aWR0aCgpLGk9bigiYm9keSIpLGE9ZTw3ODIsbz1pLmhhc0NsYXNzKCJldF90cmFuc3BhcmVudF9uYXYiKSxyPWkuaGFzQ2xhc3MoImV0X2hpZGVfbmF2Iikscz1lPjk4MCxjPW4odGhpcykucGFyZW50cygic2VjdGlvbiIpLGw9Yy5vZmZzZXQoKSxfPW4oIiN3cGFkbWluYmFyIiksZD1uKCIjbWFpbi1oZWFkZXIiKSxwPV8ubGVuZ3RoJiYhYT9fLmhlaWdodCgpOjAsdT1ZLmxlbmd0aCYmd2luZG93LmV0X2lzX2ZpeGVkX25hdiYmcz9ZLmhlaWdodCgpOjAsaD12b2lkIDA9PT1kLmF0dHIoImRhdGEtaGVpZ2h0LW9ubG9hZCIpPzA6ZC5hdHRyKCJkYXRhLWhlaWdodC1vbmxvYWQiKSxiPWQuaGVpZ2h0KCk9PT1IdCgpfHwhc3x8IXdpbmRvdy5ldF9pc19maXhlZF9uYXZ8fG98fHI/MDpIdCgpLXBhcnNlRmxvYXQoaCksdj1sLnRvcCtjLm91dGVySGVpZ2h0KCEwKStiLShwK3UrSHQoKSk7aWYoIWcmJndpbmRvdy5ldF9pc19maXhlZF9uYXYmJm8pe3ZhciBtPWQuY2xvbmUoKS5hZGRDbGFzcygiZXQtZGlzYWJsZWQtYW5pbWF0aW9ucyBldC1maXhlZC1oZWFkZXIiKS5jc3MoInZpc2liaWxpdHkiLCJoaWRkZW4iKS5hcHBlbmRUbyhpKTt2Kz1IdCgpLW0uaGVpZ2h0KCksbS5yZW1vdmUoKX1jLmxlbmd0aCYmbigiaHRtbCwgYm9keSIpLmFuaW1hdGUoe3Njcm9sbFRvcDp2fSx7ZHVyYXRpb246ODAwfSl9LHdpbmRvdy5ldF9sb2FkX2V2ZW50X2ZpcmVkP1d0KCk6bih3aW5kb3cpLm9uKCJsb2FkIiwoZnVuY3Rpb24oKXtXdCgpfSkpLG4oIi5ldF9zZWN0aW9uX3NwZWNpYWx0eSIpLmxlbmd0aCYmbigiLmV0X3NlY3Rpb25fc3BlY2lhbHR5IikuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmZpbmQoIi5ldF9wYl9yb3ciKS5maW5kKCI+LmV0X3BiX2NvbHVtbjpub3QoLmV0X3BiX3NwZWNpYWx0eV9jb2x1bW4pIikuYWRkQ2xhc3MoImV0X3BiX2NvbHVtbl9zaW5nbGUiKX0pKSxuKCIuZXRfcGJfc2VjdGlvbl9wYXJhbGxheCIpLmxlbmd0aCYmbigiLmV0X3BiX21hcCIpLmxlbmd0aCYmbigiYm9keSIpLmFkZENsYXNzKCJwYXJhbGxheC1tYXAtc3VwcG9ydCIpLHdpbmRvdy5ldF9wYl9jdXN0b20mJm4oIi5ldF9wYl93aWRnZXRfYXJlYSAiLmNvbmNhdCh3aW5kb3cuZXRfcGJfY3VzdG9tLndpZGdldF9zZWFyY2hfc2VsZWN0b3IpKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyksZT10LmZpbmQoJ2lucHV0W3R5cGU9InN1Ym1pdCJdJyksaT1lLmF0dHIoInZhbHVlIiksYT10LmZpbmQoImJ1dHRvbiIpLG89YS50ZXh0KCkscj0hKCFlLmxlbmd0aCYmIWEubGVuZ3RoKTsodC5maW5kKCdpbnB1dFt0eXBlPSJ0ZXh0Il0nKS5sZW5ndGh8fHQuZmluZCgnaW5wdXRbdHlwZT0ic2VhcmNoIl0nKS5sZW5ndGgpJiYocnx8dC5hZGRDbGFzcygiZXQtbm8tc3VibWl0LWJ1dHRvbiIpLHQud2lkdGgoKTwxNTAmJnQuYWRkQ2xhc3MoImV0LW5hcnJvdy13cmFwcGVyIiksIWUubGVuZ3RofHx2b2lkIDAhPT1pJiYiIiE9PWl8fChlLnJlbW92ZSgpLHQuYWRkQ2xhc3MoImV0LW5vLXN1Ym1pdC1idXR0b24iKSksIWEubGVuZ3RofHx2b2lkIDAhPT1vJiYiIiE9PW98fChhLnJlbW92ZSgpLHQuYWRkQ2xhc3MoImV0LW5vLXN1Ym1pdC1idXR0b24iKSkpfSkpLG4oImJvZHkiKS5vbigiY2xpY2siLCIuZXRfcGJfYWpheF9wYWdpbmF0aW9uX2NvbnRhaW5lciAud3AtcGFnZW5hdmkgYSwuZXRfcGJfYWpheF9wYWdpbmF0aW9uX2NvbnRhaW5lciAucGFnaW5hdGlvbiBhIiwoZnVuY3Rpb24oKXt2YXIgZSxhPW4odGhpcyksbz1hLmF0dHIoImhyZWYiKSxyPXdpbmRvdy5sb2NhdGlvbi5ocmVmLHM9YS5jbG9zZXN0KCIuZXRfcGJfbW9kdWxlIikuYXR0cigiY2xhc3MiKS5zcGxpdCgiICIpLGM9IiIsbD1ldF9nZXRfYW5pbWF0aW9uX2NsYXNzZXMoKTtyZXR1cm4gd2luZG93LmV0X3BiX2FqYXhfcGFnaW5hdGlvbl9jYWNoZT13aW5kb3cuZXRfcGJfYWpheF9wYWdpbmF0aW9uX2NhY2hlfHxbXSxuLmVhY2gocywoZnVuY3Rpb24odCxlKXtsLmNvbmNhdChbImV0X2hhZF9hbmltYXRpb24iLCJsYXp5bG9hZCIsImxhenlsb2FkZWQiXSkuaW5jbHVkZXMoZSl8fCIiIT09ZS50cmltKCkmJihjKz0iLiIuY29uY2F0KGUpKX0pKSxlPW4oYyksZXRfcmVtb3ZlX2FuaW1hdGlvbihlKSx2b2lkIDAhPT13aW5kb3cuZXRfcGJfYWpheF9wYWdpbmF0aW9uX2NhY2hlW28rY10/ZS5mYWRlVG8oInNsb3ciLC4yLChmdW5jdGlvbigpe2UuZmluZCgiLmV0X3BiX2FqYXhfcGFnaW5hdGlvbl9jb250YWluZXIiKS5yZXBsYWNlV2l0aCh3aW5kb3cuZXRfcGJfYWpheF9wYWdpbmF0aW9uX2NhY2hlW28rY10pLE50KGUsITApLG4oIi5ldF9wYl90YWJzIikubGVuZ3RoJiZ3aW5kb3cuZXRfcGJfdGFic19pbml0KG4oIi5ldF9wYl90YWJzIikpLHF0KCl9KSk6KHZvaWQgMD09PXdpbmRvdy5ldF9wYl9hamF4X3BhZ2luYXRpb25fY2FjaGVbcitjXSYmKHdpbmRvdy5ldF9wYl9hamF4X3BhZ2luYXRpb25fY2FjaGVbcitjXT1lLmZpbmQoIi5ldF9wYl9hamF4X3BhZ2luYXRpb25fY29udGFpbmVyIikpLGUuZmFkZVRvKCJzbG93IiwuMiwoZnVuY3Rpb24oKXt2YXIgYT1mdW5jdGlvbihpKXt2YXIgYT10KGkpLHI9YS5maWx0ZXIoIiNldC1idWlsZGVyLW1vZHVsZS1kZXNpZ24tY2FjaGVkLWlubGluZS1zdHlsZXMiKSxzPWEuZmluZCgiIi5jb25jYXQoYywiIC5ldF9wYl9hamF4X3BhZ2luYXRpb25fY29udGFpbmVyIikpLnByZXBlbmQocik7ZXRfcmVtb3ZlX2FuaW1hdGlvbihzLmZpbmQoIi5ldF9hbmltYXRlZCIpKSxlLmZpbmQoIi5ldF9wYl9hamF4X3BhZ2luYXRpb25fY29udGFpbmVyIikucmVwbGFjZVdpdGgocyksd2luZG93LmV0X3BiX2FqYXhfcGFnaW5hdGlvbl9jYWNoZVtvK2NdPXMsTnQoZSwhMSksbigiLmV0X3BiX3RhYnMiKS5sZW5ndGgmJndpbmRvdy5ldF9wYl90YWJzX2luaXQobigiLmV0X3BiX3RhYnMiKSkscXQoKSxuKGRvY3VtZW50LmJvZHkpLnRyaWdnZXIoInBvc3QtbG9hZCIpfSxyPXt1cmw6byxzdWNjZXNzOmEsZXJyb3I6ZnVuY3Rpb24oZSl7NDA0PT09ZS5zdGF0dXMmJnQoImJvZHkuZXJyb3I0MDQiKS5sZW5ndGg+MCYmYShlLnJlc3BvbnNlVGV4dCl9fTtpJiYoci5kYXRhPXtldF9sYXlvdXRfYmxvY2tfbGF5b3V0X2NvbnRlbnQ6RVRCbG9ja0xheW91dE1vZHVsZXNTY3JpcHQubGF5b3V0Q29udGVudH0sci5tZXRob2Q9IlBPU1QiKSx0LmFqYXgocil9KSkpLCExfSkpLHdpbmRvdy5ldF9wYl9zZWFyY2hfaW5pdD1mdW5jdGlvbih0KXt2YXIgZT1BdCgpO2l0PWU7dmFyIG49dC5maW5kKCIuZXRfcGJfcyIpLGk9dC5maW5kKCIuZXRfcGJfc2VhcmNoc3VibWl0IiksYT1pLm91dGVySGVpZ2h0KCksbz1uLmlubmVySGVpZ2h0KCk7aS5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSJ9KSxhPm8mJm4uaW5uZXJIZWlnaHQoYSksaS5jc3Moe3Bvc2l0aW9uOiIifSl9LHdpbmRvdy5ldF9wYl9zZWFyY2hfcGVyY2VudGFnZV9jdXN0b21fbWFyZ2luX2ZpeD1mdW5jdGlvbih0KXt2YXIgZT10LmZpbmQoIi5ldF9wYl9zIikuY3NzKCJtYXJnaW4iKS5zcGxpdCgiICIpLG49e307c3dpdGNoKGUubGVuZ3RoKXtjYXNlIDQ6bj17dG9wOmVbMF0scmlnaHQ6ZVsxXSxib3R0b206ZVsyXSxsZWZ0OmVbM119O2JyZWFrO2Nhc2UgMjpuPXt0b3A6ZVswXSxyaWdodDplWzFdLGJvdHRvbTplWzBdLGxlZnQ6ZVsxXX07YnJlYWs7ZGVmYXVsdDpuPXt0b3A6ZVswXSxyaWdodDplWzBdLGJvdHRvbTplWzBdLGxlZnQ6ZVswXX19dmFyIGk9IiIuY29uY2F0KDAtcGFyc2VGbG9hdChuLmxlZnQpLCJweCIpO3QuZmluZCgiLmV0X3BiX3NlYXJjaHN1Ym1pdCIpLmNzcyh7dG9wOm4udG9wLHJpZ2h0OmksYm90dG9tOm4uYm90dG9tfSl9LG4oIi5ldF9wYl9zZWFyY2giKS5sZW5ndGgmJm4oIi5ldF9wYl9zZWFyY2giKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyk7dC5pcygiLmV0X3BiX3NlYXJjaF9wZXJjZW50YWdlX2N1c3RvbV9tYXJnaW4iKSYmZXRfcGJfc2VhcmNoX3BlcmNlbnRhZ2VfY3VzdG9tX21hcmdpbl9maXgodCksZXRfcGJfc2VhcmNoX2luaXQodCl9KSksd2luZG93LmV0X3BiX2NvbW1lbnRzX2luaXQ9ZnVuY3Rpb24odCl7dmFyIGU9dC5maW5kKCIuY29tbWVudC1yZXBseS1saW5rLCAuc3VibWl0Iik7ZS5sZW5ndGgmJihlLmFkZENsYXNzKCJldF9wYl9idXR0b24iKSx2b2lkIDAhPT10LmF0dHIoImRhdGEtaWNvbiIpJiYiIiE9PXQuYXR0cigiZGF0YS1pY29uIikmJihlLmF0dHIoImRhdGEtaWNvbiIsdC5hdHRyKCJkYXRhLWljb24iKSksZS5hZGRDbGFzcygiZXRfcGJfY3VzdG9tX2J1dHRvbl9pY29uIikpLHZvaWQgMCE9PXQuYXR0cigiZGF0YS1pY29uLXRhYmxldCIpJiYiIiE9PXQuYXR0cigiZGF0YS1pY29uLXRhYmxldCIpJiYoZS5hdHRyKCJkYXRhLWljb24tdGFibGV0Iix0LmF0dHIoImRhdGEtaWNvbi10YWJsZXQiKSksZS5hZGRDbGFzcygiZXRfcGJfY3VzdG9tX2J1dHRvbl9pY29uIikpLHZvaWQgMCE9PXQuYXR0cigiZGF0YS1pY29uLXBob25lIikmJiIiIT09dC5hdHRyKCJkYXRhLWljb24tcGhvbmUiKSYmKGUuYXR0cigiZGF0YS1pY29uLXBob25lIix0LmF0dHIoImRhdGEtaWNvbi1waG9uZSIpKSxlLmFkZENsYXNzKCJldF9wYl9jdXN0b21fYnV0dG9uX2ljb24iKSkpfSxuKCIuZXRfcGJfY29tbWVudHNfbW9kdWxlIikubGVuZ3RoJiZuKCIuZXRfcGJfY29tbWVudHNfbW9kdWxlIikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO2V0X3BiX2NvbW1lbnRzX2luaXQodCl9KSk7dmFyICR0PWRvY3VtZW50Lm9ucmVhZHlzdGF0ZWNoYW5nZXx8ZnVuY3Rpb24oKXt9O2Z1bmN0aW9uIFZ0KHQpe3QuZmluZCgiW2RhdGEtY29uZGl0aW9uYWwtbG9naWNdIikuZWFjaCgoZnVuY3Rpb24oKXtmb3IodmFyIGU9bih0aGlzKSxpPWUuZGF0YSgiY29uZGl0aW9uYWwtbG9naWMiKSxhPWUuZGF0YSgiY29uZGl0aW9uYWwtcmVsYXRpb24iKSxvPVtdLHI9MDtyPGkubGVuZ3RoO3IrKyl7dmFyIHMsYz1pW3JdLGw9Y1swXSxfPWNbMV0sZD1jWzJdLHA9dC5maW5kKCcuZXRfcGJfY29udGFjdF9maWVsZFtkYXRhLWlkPSInLmNvbmNhdChsLCciXScpKSx1PShwLmRhdGEoImlkIikscC5kYXRhKCJ0eXBlIikpO2lmKHAuaXMoIjp2aXNpYmxlIikpe3N3aXRjaCh1KXtjYXNlImlucHV0IjpjYXNlImVtYWlsIjpzPXAuZmluZCgiaW5wdXQiKS52YWwoKTticmVhaztjYXNlInRleHQiOnM9cC5maW5kKCJ0ZXh0YXJlYSIpLnZhbCgpO2JyZWFrO2Nhc2UicmFkaW8iOnM9cC5maW5kKCJpbnB1dDpjaGVja2VkIikudmFsKCl8fCIiO2JyZWFrO2Nhc2UiY2hlY2tib3giOnZhciBmPXAuZmluZCgiOmNoZWNrYm94OmNoZWNrZWQiKTtzPSExLGYuZWFjaCgoZnVuY3Rpb24oKXtpZihkPT09bih0aGlzKS52YWwoKSlyZXR1cm4gcz0hMCwhMX0pKSxkPSEwO2JyZWFrO2Nhc2Uic2VsZWN0IjpzPXAuZmluZCgic2VsZWN0IikudmFsKCl9aWYoImlzIGVtcHR5IiE9PV8mJiJpcyBub3QgZW1wdHkiIT09X3x8KF89ImlzIGVtcHR5Ij09PV8/ImlzIjoiaXMgbm90IixkPSIiLCJjaGVja2JveCI9PT11JiYhMT09PXMmJihzPSIiKSkscyYmInN0cmluZyI9PXR5cGVvZiBzJiYocz1zLnJlcGxhY2UoL1xcKC4pL2csIiQxIikpLCEoImlzIj09PV8mJnMhPT1kfHwiaXMgbm90Ij09PV8mJnM9PT1kKSl7dmFyIGg9bmV3IFJlZ0V4cChkLCJpIik7aWYoInN0cmluZyI9PXR5cGVvZiBkJiYoaD1uZXcgUmVnRXhwKGQucmVwbGFjZSgvW1xcXiQqKz8uKCl8W1xde31dL2csIlxcJCYiKSwiaSIpKSwoImNvbnRhaW5zIiE9PV98fHMubWF0Y2goaCkpJiYoImRvZXMgbm90IGNvbnRhaW4iIT09X3x8IXMubWF0Y2goaCkpKXt2YXIgYj1wYXJzZUludChzKSx2PXBhcnNlSW50KGQpOygiaXMgZ3JlYXRlciIhPT1fJiYiaXMgbGVzcyIhPT1ffHwhaXNOYU4oYikmJiFpc05hTih2KSkmJigiaXMgZ3JlYXRlciI9PT1fJiZiPD12fHwiaXMgbGVzcyI9PT1fJiZiPj12fHxvLnB1c2goITApKX19fX1lLmhpZGUoKTt2YXIgbT1lLmZpbmQoJ2lucHV0W3R5cGU9InRleHQiXScpLGc9bS5hdHRyKCJwYXR0ZXJuIik7bS5hdHRyKCJub3ZhbGlkYXRlIiwibm92YWxpZGF0ZSIpLG0uYXR0cigiZGF0YS1wYXR0ZXJuIixnKSxtLnJlbW92ZUF0dHIoInBhdHRlcm4iKSwiYWxsIj09PWEmJmkubGVuZ3RoPT09by5sZW5ndGgmJihlLnNob3coKSxtLnJlbW92ZUF0dHIoIm5vdmFsaWRhdGUiKSxtLmF0dHIoInBhdHRlcm4iLG0uZGF0YSgicGF0dGVybiIpKSksImFueSI9PT1hJiYwPG8ubGVuZ3RoJiYoZS5zaG93KCksbS5yZW1vdmVBdHRyKCJub3ZhbGlkYXRlIiksbS5hdHRyKCJwYXR0ZXJuIixtLmRhdGEoInBhdHRlcm4iKSkpfSkpfWlmKGRvY3VtZW50Lm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpeyJjb21wbGV0ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlJiZ3aW5kb3cuZXRfZml4X3ByaWNpbmdfY3VycmVuY3lfcG9zaXRpb24oKSwkdCgpfSxuKCIuZXRfcGJfY29udGFjdF9mb3JtX2NvbnRhaW5lciwgLmV0X3BiX25ld3NsZXR0ZXJfY3VzdG9tX2ZpZWxkcyIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKSxlPSJpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCIsaT1mdW5jdGlvbigpe1Z0KHQpfSxhPWV0X3BiX2RlYm91bmNlKGksMjUwKTt0Lm9uKCJjaGFuZ2UiLGUsaSksdC5vbigia2V5ZG93biIsZSxhKSxWdCh0KX0pKSwidW5kZWZpbmVkIiE9dHlwZW9mIGV0X2FuaW1hdGlvbl9kYXRhJiZldF9hbmltYXRpb25fZGF0YS5sZW5ndGg+MCl7Zm9yKHZhciBSdD0wLFF0PTA7UXQ8ZXRfYW5pbWF0aW9uX2RhdGEubGVuZ3RoO1F0Kyspe3ZhciBVdD1ldF9hbmltYXRpb25fZGF0YVtRdF07aWYoVXQuY2xhc3Mpe3ZhciBadD1uKCIuIi5jb25jYXQoVXQuY2xhc3MpKTsoWnQuaGFzQ2xhc3MoImV0X3BiX21lbnUiKXx8WnQuaGFzQ2xhc3MoImV0X3BiX2Z1bGx3aWR0aF9tZW51IikpJiZSdCsrfX1uKCIuZXRfcGJfbWVudSwgLmV0X3BiX2Z1bGx3aWR0aF9tZW51IikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO3Qub24oIndlYmtpdEFuaW1hdGlvbkVuZCBvYW5pbWF0aW9uZW5kIG1zQW5pbWF0aW9uRW5kIGFuaW1hdGlvbmVuZCIsKGZ1bmN0aW9uKCl7dC5jc3MoInotaW5kZXgiLFJ0LXQuaW5kZXgoIi5ldF9wYl9tZW51LCAuZXRfcGJfZnVsbHdpZHRoX21lbnUiKSl9KSl9KSl9bigiLmV0X3BiX3NlY3Rpb25fdmlkZW9fYmdfaG92ZXIiKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PXRoaXMsZT1uKHRoaXMpLmNsb3Nlc3QoIi5ldF9wYl9zZWN0aW9uX3ZpZGVvX29uX2hvdmVyIiksaT0hMTtlLm9uKCJtb3VzZW92ZXIiLChmdW5jdGlvbigpe2l8fChuKHQpLmZpbmQoIi5tZWpzLXZpZGVvIHZpZGVvIikudHJpZ2dlcigicGxheSIpLGk9ITApfSkpLGUub24oIm1vdXNlbGVhdmUiLChmdW5jdGlvbigpe2k9ITF9KSl9KSksbihkb2N1bWVudCkudHJpZ2dlcigiZXRfcGJfYWZ0ZXJfaW5pdF9tb2R1bGVzIiksd2luZG93LmV0X3BiX3dyYXBfd29vX2F0dHJpYnV0ZV9maWVsZHNfaW5fc3BhbigpLHdpbmRvdy5ldF9wYl9zaG9wX2FkZF9ob3Zlcl9jbGFzcz1mdW5jdGlvbigpe24oIi5ldF9wYl9zaG9wIikuZWFjaCgoZnVuY3Rpb24oKXtuKHRoaXMpLmZpbmQoIi5ldF9zaG9wX2ltYWdlIikub24oIm1vdXNlb3ZlciIsKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKS5wYXJlbnRzKCkuZXEoMSksZT10LmZpbmQoIi5wcmljZSIpLGk9dC5maW5kKCIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSIpO2UuYWRkQ2xhc3MoImhvdmVyIiksaS5hZGRDbGFzcygiaG92ZXIiKX0pKS5vbigibW91c2VvdXQiLChmdW5jdGlvbigpe3ZhciB0PW4odGhpcykucGFyZW50cygpLmVxKDEpLGU9dC5maW5kKCIucHJpY2UiKSxpPXQuZmluZCgiLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUiKTtlLnJlbW92ZUNsYXNzKCJob3ZlciIpLGkucmVtb3ZlQ2xhc3MoImhvdmVyIil9KSl9KSl9LGV0X3BiX3Nob3BfYWRkX2hvdmVyX2NsYXNzKCl9KSksd2luZG93LmV0X2xvYWRfZXZlbnRfZmlyZWQ/aigpOm4od2luZG93KS5vbigibG9hZCIsKGZ1bmN0aW9uKCl7aigpfSkpfSx3aW5kb3cuZXRGaXhEaXZpZGVyU3BhY2luZz1mdW5jdGlvbih0KXt0LmF0dHIoInN0eWxlIiwiIik7dmFyIGU9dC5jc3MoImJhY2tncm91bmRTaXplIikuc3BsaXQoIiAiKSxuPWVbMF0saT1lWzFdO2lmKCJzdHJpbmciPT10eXBlb2YgbiYmInN0cmluZyI9PXR5cGVvZiBpJiYiMTAwJSIhPT1uJiYiJSI9PT1uLnN1YnN0cigtMSwxKSl7dmFyIGE9cGFyc2VGbG9hdCh0Lm91dGVyV2lkdGgoKSksbz1wYXJzZUZsb2F0KG4pLzEwMCphLHI9IiIuY29uY2F0KHBhcnNlSW50KG8pLCJweCAiKS5jb25jYXQoaSk7dC5jc3MoImJhY2tncm91bmRTaXplIixyKX19LHdpbmRvdy5ldF9wYl9jdXN0b20mJndpbmRvdy5ldF9wYl9jdXN0b20uaXNfYWJfdGVzdGluZ19hY3RpdmUmJiJ5ZXMiPT09d2luZG93LmV0X3BiX2N1c3RvbS5pc19jYWNoZV9wbHVnaW5fYWN0aXZlKXtuKHdpbmRvdykub24oImxvYWQiLChmdW5jdGlvbigpe3dpbmRvdy5ldF9sb2FkX2V2ZW50X2ZpcmVkPSEwfSkpO3ZhciBUPWV0X3BiX2N1c3RvbS5hYl90ZXN0cy5sZW5ndGg7bi5lYWNoKGV0X3BiX2N1c3RvbS5hYl90ZXN0cywoZnVuY3Rpb24odCxlKXtuLmFqYXgoe3R5cGU6IlBPU1QiLHVybDpldF9wYl9jdXN0b20uYWpheHVybCxkYXRhVHlwZToianNvbiIsZGF0YTp7YWN0aW9uOiJldF9wYl9hYl9nZXRfc3ViamVjdF9pZCIsZXRfZnJvbnRlbmRfbm9uY2U6ZXRfcGJfY3VzdG9tLmV0X2Zyb250ZW5kX25vbmNlLGV0X3BiX2FiX3Rlc3RfaWQ6ZS5wb3N0X2lkfSxzdWNjZXNzOmZ1bmN0aW9uKHQpe2lmKHQpe3ZhciBpPW4oIi5ldF9wYl9zdWJqZWN0X3BsYWNlaG9sZGVyX2lkXyIuY29uY2F0KGUucG9zdF9pZCwiXyIpLmNvbmNhdCh0LmlkKSk7aS5hZnRlcih0LmNvbnRlbnQpLGkucmVtb3ZlKCl9KFQtPTEpPD0wJiYobigiLmV0X3BiX3N1YmplY3RfcGxhY2Vob2xkZXIiKS5yZW1vdmUoKSx3aW5kb3cuZXRfcGJfaW5pdF9tb2R1bGVzKCksbigiYm9keSIpLnRyaWdnZXIoImV0X3BiX2FiX3N1YmplY3RfcmVhZHkiKSl9fSl9KSl9ZWxzZSB3aW5kb3cuZXRfcGJfaW5pdF9tb2R1bGVzKCk7ZnVuY3Rpb24gTygpe24oImJvZHkiKS5pcygiLmV0LWZiIikmJm4oIiN3cGFkbWluYmFyIikubGVuZ3RoPjAmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7bigiI2V0X2ZpeF9odG1sX21hcmdpbiIpLnJlbW92ZSgpLG4oIjxzdHlsZSAvPiIse2lkOiJldF9maXhfaHRtbF9tYXJnaW4iLHRleHQ6Imh0bWwuanMuZXQtZmItdG9wLWh0bWwgeyBtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDsgfSJ9KS5hcHBlbmRUbygiaGVhZCIpfSksMCl9ZnVuY3Rpb24gUyh0KXt2YXIgZT10LmZpbmQoIi5ldF9wYl9tZW51X193cmFwIikuZmlyc3QoKSxuPXQuZmluZCgiLmV0X3BiX21lbnVfX3NlYXJjaC1jb250YWluZXIiKS5maXJzdCgpLGk9dC5maW5kKCIuZXRfcGJfbWVudV9fc2VhcmNoLWlucHV0IikuZmlyc3QoKTtuLmhhc0NsYXNzKCJldF9wYl9pc19hbmltYXRpbmciKXx8KGUucmVtb3ZlQ2xhc3MoImV0X3BiX21lbnVfX3dyYXAtLWhpZGRlbiIpLmFkZENsYXNzKCJldF9wYl9tZW51X193cmFwLS12aXNpYmxlIiksbi5yZW1vdmVDbGFzcygiZXRfcGJfbWVudV9fc2VhcmNoLWNvbnRhaW5lci0tdmlzaWJsZSIpLmFkZENsYXNzKCJldF9wYl9tZW51X19zZWFyY2gtY29udGFpbmVyLS1oaWRkZW4gZXRfcGJfaXNfYW5pbWF0aW5nIiksaS50cmlnZ2VyKCJibHVyIiksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtuLnJlbW92ZUNsYXNzKCJldF9wYl9pc19hbmltYXRpbmciKS5hZGRDbGFzcygiZXRfcGJfbWVudV9fc2VhcmNoLWNvbnRhaW5lci0tZGlzYWJsZWQiKX0pLDFlMykpfWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLChmdW5jdGlvbigpeyhkLmlzRGl2aVRoZW1lfHxkLmlzRXh0cmFUaGVtZSkmJmZ1bmN0aW9uKCl7aWYod2luZG93LmV0X2xvY2F0aW9uX2hhc2g9d2luZG93LmxvY2F0aW9uLmhhc2gucmVwbGFjZSgvW15hLXpBLVowLTktXyNdL2csIiIpLCIiIT09d2luZG93LmV0X2xvY2F0aW9uX2hhc2gpe3dpbmRvdy5zY3JvbGxUbygwLDApO3ZhciB0PW4od2luZG93LmV0X2xvY2F0aW9uX2hhc2gpO3QubGVuZ3RoJiYoInNjcm9sbFJlc3RvcmF0aW9uImluIGhpc3Rvcnk/aGlzdG9yeS5zY3JvbGxSZXN0b3JhdGlvbj0ibWFudWFsIjood2luZG93LmV0X2xvY2F0aW9uX2hhc2hfc3R5bGU9dC5jc3MoImRpc3BsYXkiKSx0LmNzcygiZGlzcGxheSIsIm5vbmUiKSkpfX0oKSxuKCIuZXRfcGJfdG9wX2luc2lkZV9kaXZpZGVyLmV0LW5vLXRyYW5zaXRpb24sIC5ldF9wYl9ib3R0b21faW5zaWRlX2RpdmlkZXIuZXQtbm8tdHJhbnNpdGlvbiIpLnJlbW92ZUNsYXNzKCJldC1uby10cmFuc2l0aW9uIikuZWFjaCgoZnVuY3Rpb24oKXtldEZpeERpdmlkZXJTcGFjaW5nKG4odGhpcykpfSkpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7KHdpbmRvdy5ldF9wYl9ib3hfc2hhZG93X2VsZW1lbnRzfHxbXSkubWFwKGV0X3BiX2JveF9zaGFkb3dfYXBwbHlfb3ZlcmxheSl9KSwwKX0pKSxuKHdpbmRvdykub24oImxvYWQiLChmdW5jdGlvbigpe3ZhciB0PW4oImJvZHkiKTtpZih3aW5kb3cuZXRfbG9hZF9ldmVudF9maXJlZD0hMCx0Lmhhc0NsYXNzKCJzYWZhcmkiKSl7dmFyIGU9dC5jc3MoImRpc3BsYXkiKSxpPSJpbml0aWFsIj09PWU/ImJsb2NrIjoiaW5pdGlhbCI7aWYodC5jc3Moe2Rpc3BsYXk6aX0pLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dC5jc3Moe2Rpc3BsYXk6ZX0pfSksMCksdC5oYXNDbGFzcygid29vY29tbWVyY2UtcGFnZSIpJiZ0Lmhhc0NsYXNzKCJzaW5nbGUtcHJvZHVjdCIpKXt2YXIgYT1uKCIud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcy53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkiKTtpZigwPT09YS5sZW5ndGgpcmV0dXJuO3ZhciBvPXBhcnNlSW50KGFbMF0uc3R5bGUub3BhY2l0eSk7aWYoIW8pcmV0dXJuO2EuY3NzKHtvcGFjaXR5Om8tLjA5fSksc2V0VGltZW91dCgoZnVuY3Rpb24oKXthLmNzcyh7b3BhY2l0eTpvfSl9KSwwKX19bigiLmV0X3BiX21vZHVsZSAjcmF0aW5nLCAuZXRfcGJfbW9kdWxlIC5jb21tZW50LWZvcm0tcmF0aW5nIikubGVuZ3RoPjAmJm4oIi5ldF9wYl9tb2R1bGUgI3JhdGluZywgLmV0X3BiX21vZHVsZSAuY29tbWVudC1mb3JtLXJhdGluZyIpLmVhY2goKGZ1bmN0aW9uKCl7d2luZG93LmV0X3BiX2luaXRfd29vX3N0YXJfcmF0aW5nKG4odGhpcykpfSkpLHdpbmRvdy5ldF9wYl9pbml0X3dvb19jdXN0b21fYnV0dG9uX2ljb249ZnVuY3Rpb24oKXtuKCIuZXRfcGJfd29vX2N1c3RvbV9idXR0b25faWNvbiIpLmxlbmd0aD4wJiZuKCIuZXRfcGJfd29vX2N1c3RvbV9idXR0b25faWNvbiIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKSxlPXQuYXR0cigiZGF0YS1idXR0b24tbmFtZXMiKTtpZihlKXt2YXIgaT0oMCxsLmRlZmF1bHQpKGUsIiAiKTsoMCxjLmRlZmF1bHQpKGksKGZ1bmN0aW9uKGUpe3ZhciBuPXQuZmluZCgnYnV0dG9uW25hbWU9IicuY29uY2F0KGUsJyJdJykpLGk9dC5hdHRyKCJkYXRhLSIuY29uY2F0KGUsIi1pY29uIikpLGE9dC5hdHRyKCJkYXRhLSIuY29uY2F0KGUsIi1pY29uLXRhYmxldCIpKSxvPXQuYXR0cigiZGF0YS0iLmNvbmNhdChlLCItaWNvbi1waG9uZSIpKTtuLmFkZENsYXNzKCJldF9wYl9jdXN0b21fYnV0dG9uX2ljb24gZXRfcGJfYnV0dG9uIiksKGl8fGF8fG8pJiYobi5hdHRyKCJkYXRhLWljb24iLGkpLG4uYXR0cigiZGF0YS1pY29uLXRhYmxldCIsYSksbi5hdHRyKCJkYXRhLWljb24tcGhvbmUiLG8pKX0pKX1lbHNle3ZhciBhPXQuZGF0YSgiYnV0dG9uLWNsYXNzIiksbz10LmZpbmQoIi4iLmNvbmNhdChhKSkscj10LmF0dHIoImRhdGEtYnV0dG9uLWljb24iKSxzPXQuYXR0cigiZGF0YS1idXR0b24taWNvbi10YWJsZXQiKSxfPXQuYXR0cigiZGF0YS1idXR0b24taWNvbi1waG9uZSIpO28uYWRkQ2xhc3MoImV0X3BiX2N1c3RvbV9idXR0b25faWNvbiBldF9wYl9idXR0b24iKSwocnx8c3x8XykmJihvLmF0dHIoImRhdGEtaWNvbiIsciksby5hdHRyKCJkYXRhLWljb24tdGFibGV0IixzKSxvLmF0dHIoImRhdGEtaWNvbi1waG9uZSIsXykpfX0pKX0sd2luZG93LmV0X3BiX2luaXRfd29vX2N1c3RvbV9idXR0b25faWNvbigpLG4oImJvZHkiKS5vbigidXBkYXRlZF9jaGVja291dCIsKGZ1bmN0aW9uKHQpe3dpbmRvdy5ldF9wYl9pbml0X3dvb19jdXN0b21fYnV0dG9uX2ljb24oKX0pKSxuKCIuZXRfcGJfd2NfbWV0YSIpLmxlbmd0aD4wJiZuKCIuZXRfcGJfd2NfbWV0YSIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9bih0aGlzKTsiIj09PXQuZmluZCgiLnByb2R1Y3RfbWV0YSBzcGFuOnZpc2libGUiKS50ZXh0KCkmJnQuYWRkQ2xhc3MoImV0X3BiX3djX21ldGFfZW1wdHkiKX0pKX0pKSxuKChmdW5jdGlvbigpe2lmKHZvaWQgMCE9PU11dGF0aW9uT2JzZXJ2ZXIpZm9yKHZhciB0PWZ1bmN0aW9uKHQpe3JldHVybiB0LmZpbHRlcigoZnVuY3Rpb24oKXtyZXR1cm4hbih0aGlzKS5pcygiOnZpc2libGUiKX0pKS5sZW5ndGh9LGU9bigiLmV0X3BiX3NlY3Rpb24iKSxpPWZ1bmN0aW9uKHQpe3ZhciBlPXZvaWQgMCE9PW4udW5pcXVlU29ydD9uLnVuaXF1ZVNvcnQ6bi51bmlxdWUsaT1uKFtdKTtyZXR1cm4gdC5lYWNoKChmdW5jdGlvbigpe2k9aS5hZGQobih0aGlzKS5wYXJlbnRzKCkpfSkpLGUoaS5nZXQoKSl9KGUpLGE9dChlKSxvPW5ldyBNdXRhdGlvbk9ic2VydmVyKHdpbmRvdy5ldF9wYl9kZWJvdW5jZSgoZnVuY3Rpb24oKXt2YXIgaT10KGUpO2k8YSYmbih3aW5kb3cpLnRyaWdnZXIoInJlc2l6ZSIpLGE9aX0pLDIwMCkpLHI9MDtyPGkubGVuZ3RoO3IrKylvLm9ic2VydmUoaVtyXSx7Y2hpbGRMaXN0OiEwLGF0dHJpYnV0ZXM6ITAsYXR0cmlidXRlRmlsdGVyOlsiY2xhc3MiLCJzdHlsZSJdLGF0dHJpYnV0ZU9sZFZhbHVlOiExLGNoYXJhY3RlckRhdGE6ITEsY2hhcmFjdGVyRGF0YU9sZFZhbHVlOiExLHN1YnRyZWU6ITF9KX0pKSxPKCksbihkb2N1bWVudCkub24oImNsaWNrIiwiLmV0X3BiX21lbnVfX3NlYXJjaC1idXR0b24iLChmdW5jdGlvbigpeyFmdW5jdGlvbih0KXt2YXIgZT10LmZpbmQoIi5ldF9wYl9tZW51X193cmFwIikuZmlyc3QoKSxpPXQuZmluZCgiLmV0X3BiX21lbnVfX3NlYXJjaC1jb250YWluZXIiKS5maXJzdCgpLGE9dC5maW5kKCIuZXRfcGJfbWVudV9fc2VhcmNoLWlucHV0IikuZmlyc3QoKSxvPXQuZmluZCgiLmV0X3BiX3JvdyA+IC5ldF9wYl9tZW51X19sb2dvLXdyYXAiKS5maXJzdCgpLHI9dC5maW5kKCIuZXRfcGJfbWVudV9pbm5lcl9jb250YWluZXIgPiAuZXRfcGJfbWVudV9fbG9nby13cmFwIikuZmlyc3QoKSxzPW8uYWRkKHIpLGM9bih3aW5kb3cpLndpZHRoKCk8PTk4MDtpZighaS5oYXNDbGFzcygiZXRfcGJfaXNfYW5pbWF0aW5nIikpe2lmKGUuZmluZCgiLm1vYmlsZV9uYXYub3BlbmVkIikucmVtb3ZlQ2xhc3MoIm9wZW5lZCIpLmFkZENsYXNzKCJjbG9zZWQiKSxlLmZpbmQoIi5ldF9tb2JpbGVfbWVudSIpLmhpZGUoKSxlLnJlbW92ZUNsYXNzKCJldF9wYl9tZW51X193cmFwLS12aXNpYmxlIikuYWRkQ2xhc3MoImV0X3BiX21lbnVfX3dyYXAtLWhpZGRlbiIpLGkucmVtb3ZlQ2xhc3MoImV0X3BiX21lbnVfX3NlYXJjaC1jb250YWluZXItLWhpZGRlbiBldF9wYl9tZW51X19zZWFyY2gtY29udGFpbmVyLS1kaXNhYmxlZCIpLmFkZENsYXNzKCJldF9wYl9tZW51X19zZWFyY2gtY29udGFpbmVyLS12aXNpYmxlIGV0X3BiX2lzX2FuaW1hdGluZyIpLGkuY3NzKCJwYWRkaW5nLXRvcCIsIjBweCIpLHQuaGFzQ2xhc3MoImV0X3BiX21lbnUtLXN0eWxlLWxlZnRfYWxpZ25lZCIpfHx0Lmhhc0NsYXNzKCJldF9wYl9mdWxsd2lkdGhfbWVudS0tc3R5bGUtbGVmdF9hbGlnbmVkIikpaS5jc3MoInBhZGRpbmctbGVmdCIsIiIuY29uY2F0KHMud2lkdGgoKSwicHgiKSk7ZWxzZXt2YXIgbD1zLmhlaWdodCgpO2kuY3NzKCJwYWRkaW5nLWxlZnQiLCIwcHgiKSwoY3x8dC5oYXNDbGFzcygiZXRfcGJfbWVudS0tc3R5bGUtY2VudGVyZWQiKXx8dC5oYXNDbGFzcygiZXRfcGJfZnVsbHdpZHRoX21lbnUtLXN0eWxlLWNlbnRlcmVkIikpJiZpLmNzcygicGFkZGluZy10b3AiLCIiLmNvbmNhdChsPjA/bCszMDowLCJweCIpKX1hLmNzcygiZm9udC1zaXplIix0LmZpbmQoIi5ldC1tZW51LW5hdiBsaSBhIikuZmlyc3QoKS5jc3MoImZvbnQtc2l6ZSIpKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2EudHJpZ2dlcigiZm9jdXMiKX0pLDApLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZS5hZGRDbGFzcygiZXRfcGJfbm9fYW5pbWF0aW9uIiksaS5hZGRDbGFzcygiZXRfcGJfbm9fYW5pbWF0aW9uIikucmVtb3ZlQ2xhc3MoImV0X3BiX2lzX2FuaW1hdGluZyIpfSksMWUzKX19KG4odGhpcykuY2xvc2VzdCgiLmV0X3BiX21vZHVsZSIpKX0pKSxuKGRvY3VtZW50KS5vbigiY2xpY2siLCIuZXRfcGJfbWVudV9fY2xvc2Utc2VhcmNoLWJ1dHRvbiIsKGZ1bmN0aW9uKCl7UyhuKHRoaXMpLmNsb3Nlc3QoIi5ldF9wYl9tb2R1bGUiKSl9KSksbihkb2N1bWVudCkub24oImJsdXIiLCIuZXRfcGJfbWVudV9fc2VhcmNoLWlucHV0IiwoZnVuY3Rpb24oKXtTKG4odGhpcykuY2xvc2VzdCgiLmV0X3BiX21vZHVsZSIpKX0pKSxuKChmdW5jdGlvbigpe24oIi5ldF9wYl9tZW51LS1zdHlsZS1pbmxpbmVfY2VudGVyZWRfbG9nbywgLmV0X3BiX2Z1bGx3aWR0aF9tZW51LS1zdHlsZS1pbmxpbmVfY2VudGVyZWRfbG9nbyIpLmVhY2goKGZ1bmN0aW9uKCl7IWZ1bmN0aW9uKHQpe3ZhciBlPXQuZmluZCgiLmV0X3BiX21lbnVfX2xvZ28td3JhcCIpLmZpcnN0KCk7aWYoMCE9PWUubGVuZ3RoKXt2YXIgaT10LmZpbmQoIi5ldF9wYl9tZW51X19tZW51IikuZmlyc3QoKTtpZighKDA9PT1pLmxlbmd0aHx8aS5maW5kKCIuZXRfcGJfbWVudV9fbG9nbyIpLmxlbmd0aD4wKSl7dmFyIGE9d2luZG93LmV0X3BiX21lbnVfaW5qZWN0X2lubGluZV9jZW50ZXJlZF9sb2dvKGkuZ2V0KDApKTtudWxsIT09YSYmbihhKS5lbXB0eSgpLmFwcGVuZChlLmNsb25lKCkpfX19KG4odGhpcykpfSkpLCgwLGEuZGVmYXVsdCkod2luZG93LmxhenlTaXplcyl8fG4oZG9jdW1lbnQpLm9uKCJsYXp5bG9hZGVkIiwoZnVuY3Rpb24odCl7dmFyIGk9bih0LnRhcmdldCksbz1pLmF0dHIoIm5hbWUiKTtpLmlzKCJpZnJhbWUiKSYmKCgwLGUuZGVmYXVsdCkobywiZml0dmlkIil8fCgwLGEuZGVmYXVsdCkobykpJiYoaS5hdHRyKCJzcmMiLGkuYXR0cigiZGF0YS1zcmMiKSksaS5wYXJlbnQoKS5maXRWaWRzKCkpfSkpfSkpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLHdpbmRvdy5ldF9wYl9yZXBvc2l0aW9uX21lbnVfbW9kdWxlX2Ryb3Bkb3ducyksbih3aW5kb3cpLm9uKCJyZXNpemUiLHdpbmRvdy5ldF9wYl9yZXBvc2l0aW9uX21lbnVfbW9kdWxlX2Ryb3Bkb3ducyk7dmFyIFA9e2NvbnRleHRzOlsiY29udGVudCIsImF0dHJzIiwic3R5bGVzIiwiY2xhc3NlcyIsInZpc2liaWxpdHkiXSxzY3JlZW5Nb2RlOnZvaWQgMCx3aW5kb3dXaWR0aDp2b2lkIDAsaW5pdDpmdW5jdGlvbih0LGUpe1Auc2NyZWVuTW9kZT10LFAud2luZG93V2lkdGg9ZSxuKCIuZXRfbXVsdGlfdmlld19faG92ZXJfc2VsZWN0b3IiKS5yZW1vdmVDbGFzcygiZXRfbXVsdGlfdmlld19faG92ZXJfc2VsZWN0b3IiKSxQLmdldEVsZW1lbnRzKCkuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO2lmKCFQLmlzQnVpbGRlckVsZW1lbnQodCkpe3ZhciBlPVAuZ2V0RGF0YSh0KTtlLiRob3ZlclNlbGVjdG9yJiZlLiRob3ZlclNlbGVjdG9yLmxlbmd0aCYmZS4kaG92ZXJTZWxlY3Rvci5hZGRDbGFzcygiZXRfbXVsdGlfdmlld19faG92ZXJfc2VsZWN0b3IiKSxQLm5vcm1hbFN0YXRlSGFuZGxlcihlKX19KSksUC5pc1RvdWNoRGV2aWNlKCk/KHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixQLnRvdWNoU3RhdGVIYW5kbGVyKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsUC50b3VjaFN0YXRlSGFuZGxlcix7cGFzc2l2ZTohMX0pKToobigiLmV0X211bHRpX3ZpZXdfX2hvdmVyX3NlbGVjdG9yIikub2ZmKCJtb3VzZWVudGVyIG1vdXNlbGVhdmUiLFAuaG92ZXJTdGF0ZUhhbmRsZXIpLG4oIi5ldF9tdWx0aV92aWV3X19ob3Zlcl9zZWxlY3RvciIpLm9uKCJtb3VzZWVudGVyIG1vdXNlbGVhdmUiLFAuaG92ZXJTdGF0ZUhhbmRsZXIpLG4oIiNtYWluLWhlYWRlciwgI21haW4tZm9vdGVyIikub2ZmKCJtb3VzZWVudGVyIixQLnJlc2V0SG92ZXJTdGF0ZSksbigiI21haW4taGVhZGVyLCAjbWFpbi1mb290ZXIiKS5vbigibW91c2VlbnRlciIsUC5yZXNldEhvdmVyU3RhdGUpKX0sbm9ybWFsU3RhdGVIYW5kbGVyOmZ1bmN0aW9uKHQpe3QmJiFQLmlzRW1wdHlPYmplY3QodC5ub3JtYWxTdGF0ZSkmJlAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0Lm5vcm1hbFN0YXRlLHQuJHRhcmdldCx0LiRzb3VyY2UsdC5zbHVnKX0sdG91Y2hTdGF0ZUhhbmRsZXI6ZnVuY3Rpb24odCl7dmFyIGU9bih0LnRhcmdldCk7aWYobih0LnRhcmdldCkuaGFzQ2xhc3MoImV0X211bHRpX3ZpZXdfX2hvdmVyX3NlbGVjdG9yIil8fChlPW4odC50YXJnZXQpLmNsb3Nlc3QoIi5ldF9tdWx0aV92aWV3X19ob3Zlcl9zZWxlY3RvciIpKSxlJiZlLmxlbmd0aCl7dmFyIGk9bih0LnRhcmdldCkuaXMoImEiKT9uKHQudGFyZ2V0KTpuKHQudGFyZ2V0KS5jbG9zZXN0KCJhIixlKTtpZihpJiZpLmxlbmd0aCl7dmFyIGE9aS5hdHRyKCJocmVmIik7IiMiIT09YSYmMD09PWEuaW5kZXhPZigiIyIpJiZuKGEpJiZuKGEpLmxlbmd0aCYmKHQucHJldmVudERlZmF1bHQoKSxuKCJodG1sLCBib2R5IikuYW5pbWF0ZSh7c2Nyb2xsVG9wOm4oYSkub2Zmc2V0KCkudG9wfSw4MDApKX1lbHNlIGUuaGFzQ2xhc3MoImV0X211bHRpX3ZpZXdfX2hvdmVyZWQiKT9QLnJlc2V0SG92ZXJTdGF0ZShlLChmdW5jdGlvbigpe2UuaGFzQ2xhc3MoImV0X2NsaWNrYWJsZSIpJiZlLnRyaWdnZXIoImNsaWNrIil9KSk6UC5zZXRIb3ZlclN0YXRlKGUsKGZ1bmN0aW9uKCl7ZS5oYXNDbGFzcygiZXRfY2xpY2thYmxlIikmJmUudHJpZ2dlcigiY2xpY2siKX0pKX19LGhvdmVyU3RhdGVIYW5kbGVyOmZ1bmN0aW9uKHQpe3ZhciBlPW4odC50YXJnZXQpO24odC50YXJnZXQpLmhhc0NsYXNzKCJldF9tdWx0aV92aWV3X19ob3Zlcl9zZWxlY3RvciIpfHwoZT1uKHQudGFyZ2V0KS5jbG9zZXN0KCIuZXRfbXVsdGlfdmlld19faG92ZXJfc2VsZWN0b3IiKSksIm1vdXNlZW50ZXIiIT09dC50eXBlfHxlLmhhc0NsYXNzKCJldF9tdWx0aV92aWV3X19ob3ZlcmVkIik/Im1vdXNlbGVhdmUiPT09dC50eXBlJiZlLmhhc0NsYXNzKCJldF9tdWx0aV92aWV3X19ob3ZlcmVkIikmJlAucmVzZXRIb3ZlclN0YXRlKGUpOlAuc2V0SG92ZXJTdGF0ZShlKX0sc2V0SG92ZXJTdGF0ZTpmdW5jdGlvbih0LGUpe1AucmVzZXRIb3ZlclN0YXRlKCk7dmFyIGk9W107dC5kYXRhKCJldE11bHRpVmlldyIpJiZpLnB1c2goUC5nZXREYXRhKHQpKSx0LmZpbmQoIltkYXRhLWV0LW11bHRpLXZpZXddIikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO1AuaXNCdWlsZGVyRWxlbWVudCh0KXx8aS5wdXNoKFAuZ2V0RGF0YSh0KSl9KSk7Zm9yKHZhciBhPTA7YTxpLmxlbmd0aDthKyspe3ZhciBvPWlbYV07IW98fFAuaXNFbXB0eU9iamVjdChvLm5vcm1hbFN0YXRlKXx8UC5pc0VtcHR5T2JqZWN0KG8uaG92ZXJTdGF0ZSl8fFAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdChvLmhvdmVyU3RhdGUsby4kdGFyZ2V0LG8uJHNvdXJjZSxvLnNsdWcpfXQuYWRkQ2xhc3MoImV0X211bHRpX3ZpZXdfX2hvdmVyZWQiKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmZSgpfSxyZXNldEhvdmVyU3RhdGU6ZnVuY3Rpb24odCxlKXt2YXIgaT1bXTt0JiZ0Lmxlbmd0aD8odC5kYXRhKCJldE11bHRpVmlldyIpJiZpLnB1c2goUC5nZXREYXRhKHQpKSx0LmZpbmQoIltkYXRhLWV0LW11bHRpLXZpZXddIikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD1uKHRoaXMpO1AuaXNCdWlsZGVyRWxlbWVudCh0KXx8aS5wdXNoKFAuZ2V0RGF0YSh0KSl9KSkpOlAuZ2V0RWxlbWVudHMoKS5lYWNoKChmdW5jdGlvbigpe3ZhciB0PW4odGhpcyk7UC5pc0J1aWxkZXJFbGVtZW50KHQpfHxpLnB1c2goUC5nZXREYXRhKHQpKX0pKTtmb3IodmFyIGE9MDthPGkubGVuZ3RoO2ErKyl7dmFyIG89aVthXTshb3x8UC5pc0VtcHR5T2JqZWN0KG8ubm9ybWFsU3RhdGUpfHxQLmlzRW1wdHlPYmplY3Qoby5ob3ZlclN0YXRlKXx8UC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KG8ubm9ybWFsU3RhdGUsby4kdGFyZ2V0LG8uJHNvdXJjZSxvLnNsdWcpfW4oIi5ldF9tdWx0aV92aWV3X19ob3Zlcl9zZWxlY3RvciIpLnJlbW92ZUNsYXNzKCJldF9tdWx0aV92aWV3X19ob3ZlcmVkIiksImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUoKX0sZ2V0RGF0YTpmdW5jdGlvbih0KXtpZighdHx8IXQubGVuZ3RoKXJldHVybiExO3ZhciBlPVAuZ2V0U2NyZWVuTW9kZSgpLGk9dC5kYXRhKCJldE11bHRpVmlldyIpO2lmKCFpKXJldHVybiExO2lmKCJzdHJpbmciPT10eXBlb2YgaSYmKGk9UC50cnlQYXJzZUpTT04oaSkpLCFpfHwhaS5zY2hlbWF8fCFpLnNsdWcpcmV0dXJuITE7dmFyIGE9aS50YXJnZXQ/bihpLnRhcmdldCk6dDtpZighYXx8IWEubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbz17fSxyPXt9LHM9MDtzPFAuY29udGV4dHMubGVuZ3RoO3MrKyl7dmFyIGM9UC5jb250ZXh0c1tzXTtpLnNjaGVtYSYmaS5zY2hlbWEuaGFzT3duUHJvcGVydHkoYykmJihpLnNjaGVtYVtjXS5oYXNPd25Qcm9wZXJ0eShlKT9vW2NdPWkuc2NoZW1hW2NdW2VdOiJ0YWJsZXQiPT09ZSYmaS5zY2hlbWFbY10uaGFzT3duUHJvcGVydHkoImRlc2t0b3AiKT9vW2NdPWkuc2NoZW1hW2NdLmRlc2t0b3A6InBob25lIj09PWUmJmkuc2NoZW1hW2NdLmhhc093blByb3BlcnR5KCJ0YWJsZXQiKT9vW2NdPWkuc2NoZW1hW2NdLnRhYmxldDoicGhvbmUiPT09ZSYmaS5zY2hlbWFbY10uaGFzT3duUHJvcGVydHkoImRlc2t0b3AiKSYmKG9bY109aS5zY2hlbWFbY10uZGVza3RvcCksaS5zY2hlbWFbY10uaGFzT3duUHJvcGVydHkoImhvdmVyIikmJihyW2NdPWkuc2NoZW1hW2NdLmhvdmVyKSl9dmFyIGw9ISFpLmhvdmVyX3NlbGVjdG9yJiZuKGkuaG92ZXJfc2VsZWN0b3IpO3JldHVybiBsJiZsLmxlbmd0aHx8KGw9dC5oYXNDbGFzcygiLmV0X3BiX21vZHVsZSIpP3Q6dC5jbG9zZXN0KCIuZXRfcGJfbW9kdWxlIikpLHtub3JtYWxTdGF0ZTpvLGhvdmVyU3RhdGU6ciwkdGFyZ2V0OmEsJHNvdXJjZTp0LCRob3ZlclNlbGVjdG9yOmwsc2x1ZzppLnNsdWcsc2NyZWVuTW9kZTplfX0sY2FsbGJhY2tIYW5kbGVyRGVmYXVsdDpmdW5jdGlvbih0LGUsbixpKXtpZihpKXt2YXIgYT1QLmdldENhbGxiYWNrSGFuZGxlckN1c3RvbShpKTtpZihhJiYiZnVuY3Rpb24iPT10eXBlb2YgYSlyZXR1cm4gYSh0LGUsbixpKX12YXIgbz17fTtyZXR1cm4gdC5oYXNPd25Qcm9wZXJ0eSgiY29udGVudCIpJiYoby5jb250ZW50PVAudXBkYXRlQ29udGVudCh0LmNvbnRlbnQsZSxuKSksdC5oYXNPd25Qcm9wZXJ0eSgiYXR0cnMiKSYmKG8uYXR0cnM9UC51cGRhdGVBdHRycyh0LmF0dHJzLGUsbikpLHQuaGFzT3duUHJvcGVydHkoInN0eWxlcyIpJiYoby5zdHlsZXM9UC51cGRhdGVTdHlsZXModC5zdHlsZXMsZSxuKSksdC5oYXNPd25Qcm9wZXJ0eSgiY2xhc3NlcyIpJiYoby5jbGFzc2VzPVAudXBkYXRlQ2xhc3Nlcyh0LmNsYXNzZXMsZSxuKSksdC5oYXNPd25Qcm9wZXJ0eSgidmlzaWJpbGl0eSIpJiYoby52aXNpYmlsaXR5PVAudXBkYXRlVmlzaWJpbGl0eSh0LnZpc2liaWxpdHksZSxuKSksIVAuaXNFbXB0eU9iamVjdChvKSYmb30sY2FsbGJhY2tIYW5kbGVyQ291bnRlcjpmdW5jdGlvbih0LGUsbil7dmFyIGk9UC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxuKTtpJiZpLmF0dHJzJiZpLmF0dHJzLmhhc093blByb3BlcnR5KCJkYXRhLXdpZHRoIikmJndpbmRvdy5ldF9iYXJfY291bnRlcnNfaW5pdChlKX0sY2FsbGJhY2tIYW5kbGVyTnVtYmVyQ291bnRlcjpmdW5jdGlvbih0LGUsbil7aWYoZS5oYXNDbGFzcygidGl0bGUiKSlyZXR1cm4gUC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxuKTt2YXIgaT10LmF0dHJzfHwhMTtpZihpJiYoaS5oYXNPd25Qcm9wZXJ0eSgiZGF0YS1wZXJjZW50LXNpZ24iKSYmUC51cGRhdGVDb250ZW50KGlbImRhdGEtcGVyY2VudC1zaWduIl0sZS5maW5kKCIucGVyY2VudC1zaWduIiksbiksaS5oYXNPd25Qcm9wZXJ0eSgiZGF0YS1udW1iZXItdmFsdWUiKSkpe3ZhciBhPWUuY2xvc2VzdCgiLmV0X3BiX251bWJlcl9jb3VudGVyIiksbz1pWyJkYXRhLW51bWJlci12YWx1ZSJdfHw1MCxyPWlbImRhdGEtbnVtYmVyLXNlcGFyYXRvciJdfHwiIjtQLnVwZGF0ZUF0dHJzKHsiZGF0YS1udW1iZXItdmFsdWUiOm8sImRhdGEtbnVtYmVyLXNlcGFyYXRvciI6cn0sYSxuKSYmYS5kYXRhKCJlYXN5UGllQ2hhcnQiKSYmYS5kYXRhKCJlYXN5UGllQ2hhcnQiKS51cGRhdGUobyl9fSxjYWxsYmFja0hhbmRsZXJDaXJjbGVDb3VudGVyOmZ1bmN0aW9uKHQsZSxuKXtpZighZS5oYXNDbGFzcygiZXRfcGJfY2lyY2xlX2NvdW50ZXJfaW5uZXIiKSlyZXR1cm4gUC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxuKTt2YXIgaT10LmF0dHJzfHwhMTtpZihpJiYoaS5oYXNPd25Qcm9wZXJ0eSgiZGF0YS1wZXJjZW50LXNpZ24iKSYmUC51cGRhdGVDb250ZW50KGlbImRhdGEtcGVyY2VudC1zaWduIl0sZS5maW5kKCIucGVyY2VudC1zaWduIiksbiksaS5oYXNPd25Qcm9wZXJ0eSgiZGF0YS1udW1iZXItdmFsdWUiKSkpe3ZhciBhPWUuY2xvc2VzdCgiLmV0X3BiX2NpcmNsZV9jb3VudGVyX2lubmVyIiksbz1pWyJkYXRhLW51bWJlci12YWx1ZSJdO1AudXBkYXRlQXR0cnMoeyJkYXRhLW51bWJlci12YWx1ZSI6b30sYSxuKSYmYS5kYXRhKCJlYXN5UGllQ2hhcnQiKSYmKHdpbmRvdy5ldF9wYl9jaXJjbGVfY291bnRlcl9pbml0KGEpLGEuZGF0YSgiZWFzeVBpZUNoYXJ0IikudXBkYXRlKG8pKX19LGNhbGxiYWNrSGFuZGxlclNsaWRlcjpmdW5jdGlvbih0LGUsbil7dmFyIGk9UC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxuKTtlLmhhc0NsYXNzKCJldF9wYl9tb2R1bGUiKSYmaSYmaS5jbGFzc2VzJiYoaS5jbGFzc2VzLmFkZCYmLTEhPT1pLmNsYXNzZXMuYWRkLmluZGV4T2YoImV0X3BiX3NsaWRlcl9ub19hcnJvd3MiKSYmZS5maW5kKCIuZXQtcGItc2xpZGVyLWFycm93cyIpLmFkZENsYXNzKCJldF9tdWx0aV92aWV3X2hpZGRlbiIpLGkuY2xhc3Nlcy5yZW1vdmUmJi0xIT09aS5jbGFzc2VzLnJlbW92ZS5pbmRleE9mKCJldF9wYl9zbGlkZXJfbm9fYXJyb3dzIikmJmUuZmluZCgiLmV0LXBiLXNsaWRlci1hcnJvd3MiKS5yZW1vdmVDbGFzcygiZXRfbXVsdGlfdmlld19oaWRkZW4iKSxpLmNsYXNzZXMuYWRkJiYtMSE9PWkuY2xhc3Nlcy5hZGQuaW5kZXhPZigiZXRfcGJfc2xpZGVyX25vX3BhZ2luYXRpb24iKSYmZS5maW5kKCIuZXQtcGItY29udHJvbGxlcnMiKS5hZGRDbGFzcygiZXRfbXVsdGlfdmlld19oaWRkZW4iKSxpLmNsYXNzZXMucmVtb3ZlJiYtMSE9PWkuY2xhc3Nlcy5yZW1vdmUuaW5kZXhPZigiZXRfcGJfc2xpZGVyX25vX3BhZ2luYXRpb24iKSYmZS5maW5kKCIuZXQtcGItY29udHJvbGxlcnMiKS5yZW1vdmVDbGFzcygiZXRfbXVsdGlfdmlld19oaWRkZW4iKSl9LGNhbGxiYWNrSGFuZGxlclBvc3RTbGlkZXI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPVAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0LGUsbik7ZS5oYXNDbGFzcygiZXRfcGJfbW9kdWxlIikmJmkmJmkuY2xhc3NlcyYmKGkuY2xhc3Nlcy5hZGQmJi0xIT09aS5jbGFzc2VzLmFkZC5pbmRleE9mKCJldF9wYl9zbGlkZXJfbm9fYXJyb3dzIikmJmUuZmluZCgiLmV0LXBiLXNsaWRlci1hcnJvd3MiKS5hZGRDbGFzcygiZXRfbXVsdGlfdmlld19oaWRkZW4iKSxpLmNsYXNzZXMucmVtb3ZlJiYtMSE9PWkuY2xhc3Nlcy5yZW1vdmUuaW5kZXhPZigiZXRfcGJfc2xpZGVyX25vX2Fycm93cyIpJiZlLmZpbmQoIi5ldC1wYi1zbGlkZXItYXJyb3dzIikucmVtb3ZlQ2xhc3MoImV0X211bHRpX3ZpZXdfaGlkZGVuIiksaS5jbGFzc2VzLmFkZCYmLTEhPT1pLmNsYXNzZXMuYWRkLmluZGV4T2YoImV0X3BiX3NsaWRlcl9ub19wYWdpbmF0aW9uIikmJmUuZmluZCgiLmV0LXBiLWNvbnRyb2xsZXJzIikuYWRkQ2xhc3MoImV0X211bHRpX3ZpZXdfaGlkZGVuIiksaS5jbGFzc2VzLnJlbW92ZSYmLTEhPT1pLmNsYXNzZXMucmVtb3ZlLmluZGV4T2YoImV0X3BiX3NsaWRlcl9ub19wYWdpbmF0aW9uIikmJmUuZmluZCgiLmV0LXBiLWNvbnRyb2xsZXJzIikucmVtb3ZlQ2xhc3MoImV0X211bHRpX3ZpZXdfaGlkZGVuIikpfSxjYWxsYmFja0hhbmRsZXJWaWRlb1NsaWRlcjpmdW5jdGlvbih0LGUsbil7dmFyIGk9UC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxuKTtpZihlLmhhc0NsYXNzKCJldF9wYl9zbGlkZXIiKSYmaSYmaS5jbGFzc2VzKXtpLmNsYXNzZXMuYWRkJiYtMSE9PWkuY2xhc3Nlcy5hZGQuaW5kZXhPZigiZXRfcGJfc2xpZGVyX25vX2Fycm93cyIpJiZlLmZpbmQoIi5ldC1wYi1zbGlkZXItYXJyb3dzIikuYWRkQ2xhc3MoImV0X211bHRpX3ZpZXdfaGlkZGVuIiksaS5jbGFzc2VzLnJlbW92ZSYmLTEhPT1pLmNsYXNzZXMucmVtb3ZlLmluZGV4T2YoImV0X3BiX3NsaWRlcl9ub19hcnJvd3MiKSYmZS5maW5kKCIuZXQtcGItc2xpZGVyLWFycm93cyIpLnJlbW92ZUNsYXNzKCJldF9tdWx0aV92aWV3X2hpZGRlbiIpO3ZhciBhPWkuY2xhc3Nlcy5hZGQmJi0xIT09aS5jbGFzc2VzLmFkZC5pbmRleE9mKCJldF9wYl9zbGlkZXJfZG90cyIpPyJldF9wYl9zbGlkZXJfZG90cyI6ISghaS5jbGFzc2VzLmFkZHx8LTE9PT1pLmNsYXNzZXMuYWRkLmluZGV4T2YoImV0X3BiX3NsaWRlcl9jYXJvdXNlbCIpKSYmImV0X3BiX3NsaWRlcl9jYXJvdXNlbCI7aWYoYSl7dmFyIG89ZS5kYXRhKCJldF9wYl9zaW1wbGVfc2xpZGVyIik7Im9iamVjdCI9PT11KG8pJiZvLmV0X3NsaWRlcl9kZXN0cm95KCksZXRfcGJfc2xpZGVyX2luaXQoZSksImV0X3BiX3NsaWRlcl9jYXJvdXNlbCI9PT1hJiZlLnNpYmxpbmdzKCIuZXRfcGJfY2Fyb3VzZWwiKS5ldF9wYl9zaW1wbGVfY2Fyb3VzZWwoe3NsaWRlX2R1cmF0aW9uOjFlM30pfX19LGNhbGxiYWNrSGFuZGxlclNsaWRlckl0ZW06ZnVuY3Rpb24odCxlLGkpe2lmKCFlLmhhc0NsYXNzKCJldF9wYl9zbGlkZV92aWRlbyIpJiYhZS5pcygiaW1nIikpcmV0dXJuIFAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0LGUsaSk7aWYoZS5oYXNDbGFzcygiZXRfcGJfc2xpZGVfdmlkZW8iKSl7dmFyIGE9ISghdHx8IXQuY29udGVudCkmJm4odC5jb250ZW50KSxvPS0xIT09ZS5odG1sKCkuaW5kZXhPZigiZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlciIpP24oZS5maW5kKCIuZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlciIpLmh0bWwoKSk6bihlLmh0bWwoKSk7aWYoIWF8fCFvKXJldHVybjt2YXIgcj0hMTtpZihhLmhhc0NsYXNzKCJ3cC12aWRlbyIpJiZvLmhhc0NsYXNzKCJ3cC12aWRlbyIpP2Z1bmN0aW9uKCl7aWYoYS5maW5kKCJzb3VyY2UiKS5sZW5ndGghPT1vLmZpbmQoInNvdXJjZSIpLmxlbmd0aClyZXR1cm4hMDt2YXIgdD0hMTtyZXR1cm4gYS5maW5kKCJzb3VyY2UiKS5lYWNoKChmdW5jdGlvbihlKXt2YXIgaT1vLmZpbmQoInNvdXJjZSIpLmVxKGUpO24odGhpcykuYXR0cigic3JjIikhPT1pLmF0dHIoInNyYyIpJiYodD0hMCl9KSksdH0oKSYmKHI9UC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxpKSk6KGEuaXMoImlmcmFtZSIpJiZvLmlzKCJpZnJhbWUiKSYmYS5hdHRyKCJzcmMiKSE9PW8uYXR0cigic3JjIil8fGEuaGFzQ2xhc3MoIndwLXZpZGVvIikmJm8uaXMoImlmcmFtZSIpfHxhLmlzKCJpZnJhbWUiKSYmby5oYXNDbGFzcygid3AtdmlkZW8iKSkmJihyPVAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0LGUsaSkpLHImJnIuY29udGVudClpZihhLmlzKCJpZnJhbWUiKSllLmNsb3Nlc3QoIi5ldF9wYl9tb2R1bGUiKS5maXRWaWRzKCk7ZWxzZXt2YXIgcz1hLmZpbmQoInZpZGVvIikuYXR0cigid2lkdGgiKSxjPWEuZmluZCgidmlkZW8iKS5hdHRyKCJoZWlnaHQiKSxsPWUud2lkdGgoKSxfPWwvcypjO2UuZmluZCgidmlkZW8iKS5tZWRpYWVsZW1lbnRwbGF5ZXIoe3ZpZGVvV2lkdGg6cGFyc2VJbnQobCksdmlkZW9IZWlnaHQ6cGFyc2VJbnQoXyksYXV0b3NpemVQcm9ncmVzczohMSxzdWNjZXNzOmZ1bmN0aW9uKHQsZSl7dmFyIGk9bihlKSxhPV8taS5oZWlnaHQoKStuKHQpLmhlaWdodCgpO2kuY3NzKCJtYXJnaW4tdG9wIiwiIi5jb25jYXQoYSwicHgiKSl9fSl9fWVsc2UgaWYoZS5pcygiaW1nIikmJihyPVAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0LGUsaSkpJiZyLmF0dHJzJiZyLmF0dHJzLnNyYyl7dmFyIGQ9ZS5jbG9zZXN0KCIuZXRfcGJfbW9kdWxlIik7ZS5jc3MoInZpc2liaWxpdHkiLCJoaWRkZW4iKSxldF9maXhfc2xpZGVyX2hlaWdodChkKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2V0X2ZpeF9zbGlkZXJfaGVpZ2h0KGQpLGUuY3NzKCJ2aXNpYmlsaXR5IiwidmlzaWJsZSIpfSksMTAwKX19LGNhbGxiYWNrSGFuZGxlclZpZGVvOmZ1bmN0aW9uKHQsZSxpKXtpZihlLmhhc0NsYXNzKCJldF9wYl92aWRlb19vdmVybGF5IikpcmV0dXJuIFAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0LGUsaSk7dmFyIGE9ITEsbz0hKCF0fHwhdC5jb250ZW50KSYmbih0LmNvbnRlbnQpLHI9LTEhPT1lLmh0bWwoKS5pbmRleE9mKCJmbHVpZC13aWR0aC12aWRlby13cmFwcGVyIik/bihlLmZpbmQoIi5mbHVpZC13aWR0aC12aWRlby13cmFwcGVyIikuaHRtbCgpKTpuKGUuaHRtbCgpKTtyZXR1cm4gbyYmcj8oby5pcygidmlkZW8iKSYmci5pcygidmlkZW8iKT9mdW5jdGlvbigpe2lmKG8uZmluZCgic291cmNlIikubGVuZ3RoIT09ci5maW5kKCJzb3VyY2UiKS5sZW5ndGgpcmV0dXJuITA7dmFyIHQ9ITE7cmV0dXJuIG8uZmluZCgic291cmNlIikuZWFjaCgoZnVuY3Rpb24oZSl7dmFyIGk9ci5maW5kKCJzb3VyY2UiKS5lcShlKTtuKHRoaXMpLmF0dHIoInNyYyIpIT09aS5hdHRyKCJzcmMiKSYmKHQ9ITApfSkpLHR9KCkmJihhPVAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0LGUsaSkpOihvLmlzKCJpZnJhbWUiKSYmci5pcygiaWZyYW1lIikmJm8uYXR0cigic3JjIikhPT1yLmF0dHIoInNyYyIpfHxvLmlzKCJ2aWRlbyIpJiZyLmlzKCJpZnJhbWUiKXx8by5pcygiaWZyYW1lIikmJnIuaXMoInZpZGVvIikpJiYoYT1QLmNhbGxiYWNrSGFuZGxlckRlZmF1bHQodCxlLGkpKSxhJiZhLmNvbnRlbnQmJm8uaXMoImlmcmFtZSIpJiZuLmZuLmZpdFZpZHMmJmUuZml0VmlkcygpLGEpOnZvaWQgMH0sY2FsbGJhY2tIYW5kbGVyQmxvZzpmdW5jdGlvbih0LGUsbil7dmFyIGk9UC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxuKSxhPVAuZ2V0T2JqZWN0VmFsdWUoaSwiY2xhc3Nlcy5hZGQiKTthJiYtMSE9PWEuaW5kZXhPZigiZXRfcGJfYmxvZ19zaG93X2NvbnRlbnQiKSYmZXRfcmVpbml0X3dheXBvaW50X21vZHVsZXMoKX0sY2FsbGJhY2tIYW5kbGVyV29vQ29tbWVyY2VCcmVhZGNydW1iOmZ1bmN0aW9uKHQsZSxuKXtpZih0LmNvbnRlbnQpcmV0dXJuIFAuY2FsbGJhY2tIYW5kbGVyRGVmYXVsdCh0LGUsbik7aWYodC5hdHRycyYmdC5hdHRycy5oYXNPd25Qcm9wZXJ0eSgiaHJlZiIpKXt2YXIgaT10LmF0dHJzLmhyZWY7cmV0dXJuIFAudXBkYXRlQXR0cnMoe2hyZWY6aX0sZSxuKX19LGNhbGxiYWNrSGFuZGxlcldvb0NvbW1lcmNlVGFiczpmdW5jdGlvbih0LGUsaSl7dmFyIGE9UC5jYWxsYmFja0hhbmRsZXJEZWZhdWx0KHQsZSxpKTtpZihhJiZhLmF0dHJzJiZhLmF0dHJzLmhhc093blByb3BlcnR5KCJkYXRhLWluY2x1ZGVfdGFicyIpKXtlLmZpbmQoImxpIikuaGlkZSgpLGUuZmluZCgibGkiKS5yZW1vdmVDbGFzcygiZXRfcGJfdGFiX2FjdGl2ZSIpO3ZhciBvPVtdO2EuYXR0cnNbImRhdGEtaW5jbHVkZV90YWJzIl0uc3BsaXQoInwiKS5mb3JFYWNoKChmdW5jdGlvbih0KXsiIiE9PXQudHJpbSgpJiZvLnB1c2goIiIuY29uY2F0KHQsIl90YWIiKSl9KSksby5mb3JFYWNoKChmdW5jdGlvbih0LGUpezA9PT1lJiZuKCIuIi5jb25jYXQodCkpLmFkZENsYXNzKCJldF9wYl90YWJfYWN0aXZlIiksbigiLiIuY29uY2F0KHQpKS5zaG93KCl9KSl9fSxnZXRDYWxsYmFja0hhbmRsZXJDdXN0b206ZnVuY3Rpb24odCl7c3dpdGNoKHQpe2Nhc2UiZXRfcGJfY291bnRlciI6cmV0dXJuIFAuY2FsbGJhY2tIYW5kbGVyQ291bnRlcjtjYXNlImV0X3BiX251bWJlcl9jb3VudGVyIjpyZXR1cm4gUC5jYWxsYmFja0hhbmRsZXJOdW1iZXJDb3VudGVyO2Nhc2UiZXRfcGJfY2lyY2xlX2NvdW50ZXIiOnJldHVybiBQLmNhbGxiYWNrSGFuZGxlckNpcmNsZUNvdW50ZXI7Y2FzZSJldF9wYl9zbGlkZXIiOmNhc2UiZXRfcGJfZnVsbHdpZHRoX3NsaWRlciI6cmV0dXJuIFAuY2FsbGJhY2tIYW5kbGVyU2xpZGVyO2Nhc2UiZXRfcGJfcG9zdF9zbGlkZXIiOmNhc2UiZXRfcGJfZnVsbHdpZHRoX3Bvc3Rfc2xpZGVyIjpyZXR1cm4gUC5jYWxsYmFja0hhbmRsZXJQb3N0U2xpZGVyO2Nhc2UiZXRfcGJfdmlkZW9fc2xpZGVyIjpyZXR1cm4gUC5jYWxsYmFja0hhbmRsZXJWaWRlb1NsaWRlcjtjYXNlImV0X3BiX3NsaWRlIjpyZXR1cm4gUC5jYWxsYmFja0hhbmRsZXJTbGlkZXJJdGVtO2Nhc2UiZXRfcGJfdmlkZW8iOnJldHVybiBQLmNhbGxiYWNrSGFuZGxlclZpZGVvO2Nhc2UiZXRfcGJfYmxvZyI6cmV0dXJuIFAuY2FsbGJhY2tIYW5kbGVyQmxvZztjYXNlImV0X3BiX3djX2JyZWFkY3J1bWIiOnJldHVybiBQLmNhbGxiYWNrSGFuZGxlcldvb0NvbW1lcmNlQnJlYWRjcnVtYjtjYXNlImV0X3BiX3djX3RhYnMiOnJldHVybiBQLmNhbGxiYWNrSGFuZGxlcldvb0NvbW1lcmNlVGFicztkZWZhdWx0OnJldHVybiExfX0sdXBkYXRlQ29udGVudDpmdW5jdGlvbih0LGUsaSl7aWYodm9pZCAwPT09dClyZXR1cm4hMTt2YXIgYT1uKCI8IisoZS5nZXQoMCkudGFnTmFtZXx8ImRpdiIpKyI+IikuaHRtbCh0KTtyZXR1cm4gZS5odG1sKCkhPT1hLmh0bWwoKSYmKGUuZW1wdHkoKS5odG1sKHQpLGkuaGFzQ2xhc3MoImV0X211bHRpX3ZpZXdfc3dhcHBlZCIpfHxpLmFkZENsYXNzKCJldF9tdWx0aV92aWV3X3N3YXBwZWQiKSwhMCl9LHVwZGF0ZUF0dHJzOmZ1bmN0aW9uKHQsZSxpKXtpZighdClyZXR1cm4hMTt2YXIgYT17fTtyZXR1cm4gbi5lYWNoKHQsKGZ1bmN0aW9uKG4saSl7dmFyIG89ZS5hdHRyKG4pO3N3aXRjaChuKXtjYXNlImNsYXNzIjpjYXNlInN0eWxlIjpjYXNlInNyY3NldCI6Y2FzZSJzaXplcyI6YnJlYWs7Y2FzZSJzcmMiOm8hPT1pJiYoZS5vZmYoImxvYWQiKSxlLm9uKCJsb2FkIiwoZnVuY3Rpb24oKXtlLmFkZENsYXNzKCJldF9tdWx0aV92aWV3X2ltYWdlX19sb2FkZWQiKSxlLnJlbW92ZUNsYXNzKCJldF9tdWx0aV92aWV3X2ltYWdlX19sb2FkaW5nIil9KSksZS5hZGRDbGFzcygiZXRfbXVsdGlfdmlld19pbWFnZV9fbG9hZGluZyIpLGUucmVtb3ZlQ2xhc3MoImV0X211bHRpX3ZpZXdfaW1hZ2VfX2xvYWRlZCIpLGUuYXR0cih7c3JjOmksc3Jjc2V0OnQuc3Jjc2V0fHwiIixzaXplczp0LnNpemVzfHwiIn0pLGk/ZS5yZW1vdmVDbGFzcygiZXRfbXVsdGlfdmlld19oaWRkZW5faW1hZ2UiKTplLmFkZENsYXNzKCJldF9tdWx0aV92aWV3X2hpZGRlbl9pbWFnZSIpLGFbbl09aSk7YnJlYWs7ZGVmYXVsdDpvIT09aSYmKGUuYXR0cihuLGkpLDA9PT1uLmluZGV4T2YoImRhdGEtIikmJmUuZGF0YShuLnJlcGxhY2UoImRhdGEtIiwiIiksaSksYVtuXT1pKX19KSksIVAuaXNFbXB0eU9iamVjdChhKSYmKGkuaGFzQ2xhc3MoImV0X211bHRpX3ZpZXdfc3dhcHBlZCIpfHxpLmFkZENsYXNzKCJldF9tdWx0aV92aWV3X3N3YXBwZWQiKSxhKX0sdXBkYXRlU3R5bGVzOmZ1bmN0aW9uKHQsZSxpKXtpZighdClyZXR1cm4hMTt2YXIgYT17fTtyZXR1cm4gbi5lYWNoKHQsKGZ1bmN0aW9uKHQsbil7ZS5jc3ModCkhPT1uJiYoZS5jc3ModCxuKSxhW3RdPW4pfSkpLCFQLmlzRW1wdHlPYmplY3QoYSkmJihpLmhhc0NsYXNzKCJldF9tdWx0aV92aWV3X3N3YXBwZWQiKXx8aS5hZGRDbGFzcygiZXRfbXVsdGlfdmlld19zd2FwcGVkIiksYSl9LHVwZGF0ZUNsYXNzZXM6ZnVuY3Rpb24odCxlLG4pe2lmKCF0KXJldHVybiExO3ZhciBpPXt9O2lmKHQuYWRkKWZvcih2YXIgYT0wO2E8dC5hZGQubGVuZ3RoO2ErKyllLmhhc0NsYXNzKHQuYWRkW2FdKXx8KGUuYWRkQ2xhc3ModC5hZGRbYV0pLGkuaGFzT3duUHJvcGVydHkoImFkZCIpfHwoaS5hZGQ9W10pLGkuYWRkLnB1c2godC5hZGRbYV0pKTtpZih0LnJlbW92ZSlmb3IoYT0wO2E8dC5yZW1vdmUubGVuZ3RoO2ErKyllLmhhc0NsYXNzKHQucmVtb3ZlW2FdKSYmKGUucmVtb3ZlQ2xhc3ModC5yZW1vdmVbYV0pLGkuaGFzT3duUHJvcGVydHkoInJlbW92ZSIpfHwoaS5yZW1vdmU9W10pLGkucmVtb3ZlLnB1c2godC5yZW1vdmVbYV0pKTtyZXR1cm4hUC5pc0VtcHR5T2JqZWN0KGkpJiYobi5oYXNDbGFzcygiZXRfbXVsdGlfdmlld19zd2FwcGVkIil8fG4uYWRkQ2xhc3MoImV0X211bHRpX3ZpZXdfc3dhcHBlZCIpLGkpfSx1cGRhdGVWaXNpYmlsaXR5OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT17fTtyZXR1cm4gdCYmZS5oYXNDbGFzcygiZXRfbXVsdGlfdmlld19oaWRkZW4iKSYmKGUucmVtb3ZlQ2xhc3MoImV0X211bHRpX3ZpZXdfaGlkZGVuIiksaS5pc1Zpc2libGU9ITApLHR8fGUuaGFzQ2xhc3MoImV0X211bHRpX3ZpZXdfaGlkZGVuIil8fChlLmFkZENsYXNzKCJldF9tdWx0aV92aWV3X2hpZGRlbiIpLGkuaXNIaWRkZW49ITApLCFQLmlzRW1wdHlPYmplY3QoaSkmJihuLmhhc0NsYXNzKCJldF9tdWx0aV92aWV3X3N3YXBwZWQiKXx8bi5hZGRDbGFzcygiZXRfbXVsdGlfdmlld19zd2FwcGVkIiksaSl9LGlzRW1wdHlPYmplY3Q6ZnVuY3Rpb24odCl7aWYoIXQpcmV0dXJuITA7dmFyIGU9ITA7Zm9yKHZhciBuIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShuKSYmKGU9ITEpO3JldHVybiBlfSxnZXRPYmplY3RWYWx1ZTpmdW5jdGlvbih0LGUsaSl7dHJ5e2Zvcih2YXIgYT1uLmV4dGVuZCh7fSx0KSxvPWUuc3BsaXQoIi4iKSxyPTA7cjxvLmxlbmd0aDsrK3IpYT1hW29bcl1dO3JldHVybiBhfWNhdGNoKHQpe3JldHVybiBpfX0sdHJ5UGFyc2VKU09OOmZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4gSlNPTi5wYXJzZSh0KX1jYXRjaCh0KXtyZXR1cm4hMX19LGdldFNjcmVlbk1vZGU6ZnVuY3Rpb24oKXtpZihkLmlzQnVpbGRlciYmUC5zY3JlZW5Nb2RlKXJldHVybiBQLnNjcmVlbk1vZGU7dmFyIHQ9UC5nZXRXaW5kb3dXaWR0aCgpO3JldHVybiB0Pjk4MD8iZGVza3RvcCI6dD43Njc/InRhYmxldCI6InBob25lIn0sZ2V0V2luZG93V2lkdGg6ZnVuY3Rpb24oKXtyZXR1cm4gUC53aW5kb3dXaWR0aD9QLndpbmRvd1dpZHRoOmQuaXNCdWlsZGVyP24oIi5ldC1jb3JlLWZyYW1lIikud2lkdGgoKTpuKHdpbmRvdykud2lkdGgoKX0sZ2V0RWxlbWVudHM6ZnVuY3Rpb24oKXtyZXR1cm4gZC5pc0J1aWxkZXI/bigiLmV0LWNvcmUtZnJhbWUiKS5jb250ZW50cygpLmZpbmQoIltkYXRhLWV0LW11bHRpLXZpZXddIik6bigiW2RhdGEtZXQtbXVsdGktdmlld10iKX0saXNCdWlsZGVyRWxlbWVudDpmdW5jdGlvbih0KXtyZXR1cm4gdC5jbG9zZXN0KCIjZXQtZmItYXBwIikubGVuZ3RoPjB9LGlzVG91Y2hEZXZpY2U6ZnVuY3Rpb24oKXtyZXR1cm4ib250b3VjaHN0YXJ0ImluIHdpbmRvd3x8bmF2aWdhdG9yLm1zTWF4VG91Y2hQb2ludHN9fTshZnVuY3Rpb24oKXtpZihkLmlzQnVpbGRlciluKHdpbmRvdykub24oImV0X2ZiX3ByZXZpZXdfbW9kZV9jaGFuZ2VkIiwoZnVuY3Rpb24odCxlKXsiZXRfZmJfcHJldmlld19tb2RlX2NoYW5nZWQiPT09dC50eXBlJiZQLmluaXQoZSl9KSk7ZWxzZXtuKChmdW5jdGlvbigpe1AuaW5pdCgpfSkpLG4od2luZG93KS5vbigib3JpZW50YXRpb25jaGFuZ2UiLChmdW5jdGlvbih0KXtQLmluaXQoKX0pKTt2YXIgdD1udWxsO24od2luZG93KS5vbigicmVzaXplIiwoZnVuY3Rpb24oZSl7ZS5vcmlnaW5hbEV2ZW50JiZlLm9yaWdpbmFsRXZlbnQuaXNUcnVzdGVkJiYoY2xlYXJUaW1lb3V0KHQpLHQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXtQLmluaXQodm9pZCAwLG4od2luZG93KS53aWR0aCgpKX0pLDIwMCkpfSkpfX0oKSxkLmlzQnVpbGRlciYmbigoZnVuY3Rpb24oKXtuKGRvY3VtZW50KS5vbigic3VibWl0IiwiLmV0LWZiLXJvb3QtYW5jZXN0b3Itc2libGluZyBmb3JtIiwoZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpfSkpLG4oZG9jdW1lbnQpLm9uKCJjbGljayIsJy5ldC1mYi1yb290LWFuY2VzdG9yLXNpYmxpbmcgYSwgLmV0LWZiLXJvb3QtYW5jZXN0b3Itc2libGluZyBidXR0b24sIC5ldC1mYi1yb290LWFuY2VzdG9yLXNpYmxpbmcgaW5wdXRbdHlwZT0ic3VibWl0Il0nLChmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCl9KSl9KSksd2luZG93LmV0SW5pdFdvb1Jldmlld3NSYXRpbmdTdGFycz1mdW5jdGlvbigpe24oJ3NlbGVjdFtuYW1lPSJyYXRpbmciXScpLmVhY2goKGZ1bmN0aW9uKCl7bih0aGlzKS5wcmV2KCIuc3RhcnMiKS5yZW1vdmUoKSxuKHRoaXMpLmhpZGUoKS5iZWZvcmUoJzxwIGNsYXNzPSJzdGFycyI+XHRcdFx0XHRcdFx0PHNwYW4+XHRcdFx0XHRcdFx0XHQ8YSBjbGFzcz0ic3Rhci0xIiBocmVmPSIjIj4xPC9hPlx0XHRcdFx0XHRcdFx0PGEgY2xhc3M9InN0YXItMiIgaHJlZj0iIyI+MjwvYT5cdFx0XHRcdFx0XHRcdDxhIGNsYXNzPSJzdGFyLTMiIGhyZWY9IiMiPjM8L2E+XHRcdFx0XHRcdFx0XHQ8YSBjbGFzcz0ic3Rhci00IiBocmVmPSIjIj40PC9hPlx0XHRcdFx0XHRcdFx0PGEgY2xhc3M9InN0YXItNSIgaHJlZj0iIyI+NTwvYT5cdFx0XHRcdFx0XHQ8L3NwYW4+XHRcdFx0XHRcdDwvcD4nKX0pKX19KHQpfSkuY2FsbCh0aGlzLG4oOCkpfSwxNDQ1OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKHQpe3ZhciBlLGk9KGU9big3KSkmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9LGE9big0NTIpOyFmdW5jdGlvbih0KXtmdW5jdGlvbiBlKCl7dmFyIGU9dCgiYm9keSIpLmhhc0NsYXNzKCJldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQiKSxuPXQoImJvZHkiKS5oYXNDbGFzcygiZXQtdGItaGFzLXRlbXBsYXRlIik7cmV0dXJuIShlfHxuKX1mdW5jdGlvbiBuKGUpe3ZhciBuPWUudGFyZ2V0LmdldEF0dHJpYnV0ZSgibmFtZSIpLGk9ZS50YXJnZXQudmFsdWU7dCgiaW5wdXRbdHlwZT1oaWRkZW5dW25hbWU9Ii5jb25jYXQobiwiXSIpKS5yZW1vdmUoKSx0KCI8aW5wdXQ+IikuYXR0cih7dHlwZToiaGlkZGVuIix2YWx1ZTppLG5hbWU6bn0pLnByZXBlbmRUbygiLmV0X3BiX3djX2NoZWNrb3V0X3BheW1lbnRfaW5mbyBmb3JtLmNoZWNrb3V0Iil9ZnVuY3Rpb24gbyhlKXt2YXIgbj1lLnRhcmdldC5nZXRBdHRyaWJ1dGUoIm5hbWUiKSxhPXQoImlucHV0W3R5cGU9aGlkZGVuXVtuYW1lPSIuY29uY2F0KG4sIl0iKSk7KDAsaS5kZWZhdWx0KShbInNoaXBfdG9fZGlmZmVyZW50X2FkZHJlc3MiLCJjcmVhdGVhY2NvdW50Il0sbikmJiFlLnRhcmdldC5jaGVja2VkJiZhLnJlbW92ZSgpLCJzaGlwX3RvX2RpZmZlcmVudF9hZGRyZXNzIj09PW4mJihlLnRhcmdldC5jaGVja2VkPyhjKCksdCgiZGl2LnNoaXBwaW5nX2FkZHJlc3MiKS5zbGlkZURvd24oKSk6dCgiZGl2LnNoaXBwaW5nX2FkZHJlc3MiKS5zbGlkZVVwKCkpfWZ1bmN0aW9uIHIoZSl7dmFyIG49ZS50YXJnZXQuZ2V0QXR0cmlidXRlKCJuYW1lIiksYT1lLnRhcmdldC52YWx1ZTt0KCJpbnB1dFt0eXBlPWhpZGRlbl1bbmFtZT0iLmNvbmNhdChuLCJdIikpLnJlbW92ZSgpLCgwLGkuZGVmYXVsdCkoWyJzaGlwcGluZ19zdGF0ZSIsImJpbGxpbmdfc3RhdGUiXSxuKSYmdCgiaW5wdXRbdHlwZT1oaWRkZW5dW25hbWU9Ii5jb25jYXQobiwiXSIpLCIuZXRfcGJfd2NfY2hlY2tvdXRfcGF5bWVudF9pbmZvIikucmVtb3ZlKCksdCgiPGlucHV0PiIpLmF0dHIoe3R5cGU6ImhpZGRlbiIsdmFsdWU6YSxuYW1lOm59KS5wcmVwZW5kVG8oIi5ldF9wYl93Y19jaGVja291dF9wYXltZW50X2luZm8gZm9ybS5jaGVja291dCIpfWZ1bmN0aW9uIHMoZSl7dmFyIG49dChlLnRhcmdldCksaT1lLnRhcmdldC5nZXRBdHRyaWJ1dGUoIm5hbWUiKSxhPW4udmFsKCk7dCgiLmV0X3BiX3djX2NoZWNrb3V0X3BheW1lbnRfaW5mbyBpbnB1dFt0eXBlPWhpZGRlbl1bbmFtZT0iLmNvbmNhdChpLCJdIikpLnJlbW92ZSgpLHQoIjxpbnB1dD4iKS5hdHRyKHt0eXBlOiJoaWRkZW4iLHZhbHVlOmEsbmFtZTppfSkucHJlcGVuZFRvKCIuZXRfcGJfd2NfY2hlY2tvdXRfcGF5bWVudF9pbmZvIGZvcm0uY2hlY2tvdXQiKX1mdW5jdGlvbiBjKCl7dmFyIGU9dCgiLmV0X3BiX3djX2NoZWNrb3V0X3NoaXBwaW5nIGlucHV0W25hbWU9c2hpcF90b19kaWZmZXJlbnRfYWRkcmVzc10iKSxuPWUuaXMoIjpjaGVja2VkIik7dCgiLmV0X3BiX3djX2NoZWNrb3V0X2JpbGxpbmcgLmZvcm0tcm93IikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgZSxuLGk9dCh0aGlzKS5maW5kKCJpbnB1dCIpLGE9dCh0aGlzKS5maW5kKCJzZWxlY3QiKTtpLmxlbmd0aD8oZT1pLmF0dHIoIm5hbWUiKSxuPWkudmFsKCkpOmEubGVuZ3RoJiYoZT1hLmF0dHIoIm5hbWUiKSxuPWEudmFsKCkpLCIiIT09ZSYmdm9pZCAwIT09ZSYmdCgiPGlucHV0PiIpLmF0dHIoe3R5cGU6ImhpZGRlbiIsdmFsdWU6bixuYW1lOmV9KS5wcmVwZW5kVG8oIi5ldF9wYl93Y19jaGVja291dF9wYXltZW50X2luZm8gZm9ybS5jaGVja291dCIpfSkpLG4mJih0KCIuZXRfcGJfd2NfY2hlY2tvdXRfc2hpcHBpbmcgLmZvcm0tcm93IikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgZSxuLGk9dCh0aGlzKS5maW5kKCJpbnB1dCIpLGE9dCh0aGlzKS5maW5kKCJzZWxlY3QiKTtpLmxlbmd0aD8oZT1pLmF0dHIoIm5hbWUiKSxuPWkudmFsKCkpOmEubGVuZ3RoJiYoZT1hLmF0dHIoIm5hbWUiKSxuPWEudmFsKCkpLCIiIT09ZSYmdm9pZCAwIT09ZSYmKHQoJy5ldF9wYl93Y19jaGVja291dF9wYXltZW50X2luZm8gZm9ybS5jaGVja291dCBpbnB1dFt0eXBlPSJoaWRkZW4iXVtuYW1lPSInK2UrJyJdJykucmVtb3ZlKCksdCgiPGlucHV0PiIpLmF0dHIoe3R5cGU6ImhpZGRlbiIsdmFsdWU6bixuYW1lOmV9KS5wcmVwZW5kVG8oIi5ldF9wYl93Y19jaGVja291dF9wYXltZW50X2luZm8gZm9ybS5jaGVja291dCIpKX0pKSx0KCI8aW5wdXQ+IikuYXR0cih7dHlwZToiaGlkZGVuIix2YWx1ZTplLnZhbCgpLG5hbWU6InNoaXBfdG9fZGlmZmVyZW50X2FkZHJlc3MifSkucHJlcGVuZFRvKCIuZXRfcGJfd2NfY2hlY2tvdXRfcGF5bWVudF9pbmZvIGZvcm0uY2hlY2tvdXQiKSl9dmFyIGw7ZnVuY3Rpb24gXygpe3ZhciBlPXQoIi5ldF9wYl93Y19jaGVja291dF9wYXltZW50X2luZm8iKTt0KCIud2NfcGF5bWVudF9tZXRob2QiKS5yZW1vdmVDbGFzcygiZXRfcGJfY2hlY2tlZCIpLGUuZmluZCgnaW5wdXQuaW5wdXQtcmFkaW9bdHlwZT0icmFkaW8iXTpjaGVja2VkJykucGFyZW50KCIud2NfcGF5bWVudF9tZXRob2QiKS5hZGRDbGFzcygiZXRfcGJfY2hlY2tlZCIpfXZhciBkPXtjdXN0b21CdXR0b25JY29uSW5pdDpmdW5jdGlvbigpe3dpbmRvdy5ldF9wYl9pbml0X3dvb19jdXN0b21fYnV0dG9uX2ljb24oKX0sYW5pbWF0aW9uSW5pdDpmdW5jdGlvbigpe3UuZXRQcm9jZXNzQW5pbWF0aW9uRGF0YSgpfSxtYWtlUmV0dXJuVG9TaG9wQnRuVmlzaWJsZVdoZW5DYXJ0RW1wdGllZDpmdW5jdGlvbigpe2lmKCFhLmlzVkIpe3ZhciBlPXQoIi53Yy1iYWNrd2FyZCIpLmNsb3Nlc3QoIi5ldF9wYl93Y19jYXJ0X25vdGljZSIpO2UuaGFzQ2xhc3MoImV0X2FuaW1hdGVkIikmJmUucmVtb3ZlQ2xhc3MoImV0X2FuaW1hdGVkIikuYWRkQ2xhc3MoImV0X2hhZF9hbmltYXRpb24iKX19LHJlbW92ZUR1cGxpY2F0ZVdvb0NhcnRGb3JtOmZ1bmN0aW9uKCl7YS5pc1ZCfHx0KCIud29vY29tbWVyY2UtY2FydC1mb3JtIikuY2xvc2VzdCgiLndvb2NvbW1lcmNlIikuZmluZCgiLndvb2NvbW1lcmNlLWNhcnQtZm9ybTpub3QoOmZpcnN0KSIpLnJlbW92ZSgpfSxyZW1vdmVEdXBsaWNhdGVkQ2FydFRvdGFsTW9kdWxlczpmdW5jdGlvbigpe2EuaXNWQnx8dCgiLmV0X3BiX3djX2NhcnRfdG90YWxzIikuZmluZCgiLmNhcnRfdG90YWxzOm5vdCg6Zmlyc3QpIikucmVtb3ZlKCl9LHdvb0NhcnRUb3RhbHNJbml0OmZ1bmN0aW9uKCl7dChkb2N1bWVudC5ib2R5KS5vbigidXBkYXRlZF93Y19kaXYiLHRoaXMucmVtb3ZlRHVwbGljYXRlZENhcnRUb3RhbE1vZHVsZXMpfSx3b29DYXJ0UHJvZHVjdHNJbml0OmZ1bmN0aW9uKCl7dChkb2N1bWVudC5ib2R5KS5vbigidXBkYXRlZF93Y19kaXYiLHRoaXMucmVtb3ZlRHVwbGljYXRlV29vQ2FydEZvcm0pfSx3b29Ob3RpY2VJbml0OmZ1bmN0aW9uKCl7dChkb2N1bWVudC5ib2R5KS5vbigidXBkYXRlZF93Y19kaXYiLHRoaXMubWFrZVJldHVyblRvU2hvcEJ0blZpc2libGVXaGVuQ2FydEVtcHRpZWQpLHQoZG9jdW1lbnQuYm9keSkub24oInVwZGF0ZWRfd2NfZGl2Iix0aGlzLmFuaW1hdGlvbkluaXQpfSxyZUluaXRDdXN0b21CdXR0b25JY29uOmZ1bmN0aW9uKCl7dChkb2N1bWVudC5ib2R5KS5vbigidXBkYXRlZF93Y19kaXYiLHRoaXMuY3VzdG9tQnV0dG9uSWNvbkluaXQpfSxpbml0OmZ1bmN0aW9uKCl7dGhpcy53b29DYXJ0UHJvZHVjdHNJbml0KCksdGhpcy53b29Ob3RpY2VJbml0KCksdGhpcy5yZUluaXRDdXN0b21CdXR0b25JY29uKCksdGhpcy53b29DYXJ0VG90YWxzSW5pdCgpLHQoZG9jdW1lbnQuYm9keSkub24oImNoYW5nZSBpbnB1dCIsIi53b29jb21tZXJjZS1jYXJ0LWZvcm0gLmNhcnRfaXRlbSA6aW5wdXQiLChmdW5jdGlvbigpe2lmKCFhLmlzQnVpbGRlcil7dmFyIGUsbixpLG89dCh0aGlzKS5jbG9zZXN0KCIuZXRfcGJfbW9kdWxlX2lubmVyIikuZmluZCgnYnV0dG9uW25hbWU9InVwZGF0ZV9jYXJ0Il0nKSxyPXQodGhpcykucGFyZW50cygiLmV0X3BiX3dvb19jdXN0b21fYnV0dG9uX2ljb24uZXRfcGJfd2NfY2FydF9wcm9kdWN0cyIpO2U9ci5hdHRyKCJkYXRhLWFwcGx5X2NvdXBvbi1pY29uIiksbj1yLmF0dHIoImRhdGEtYXBwbHlfY291cG9uLWljb24tdGFibGV0IiksaT1yLmF0dHIoImRhdGEtYXBwbHlfY291cG9uLWljb24tcGhvbmUiKSxvLmFkZENsYXNzKCJldF9wYl9jdXN0b21fYnV0dG9uX2ljb24gZXRfcGJfYnV0dG9uIiksKGV8fG58fGkpJiYoby5hdHRyKCJkYXRhLWljb24iLGUpLG8uYXR0cigiZGF0YS1pY29uLXRhYmxldCIsbiksby5hdHRyKCJkYXRhLWljb24tcGhvbmUiLGkpKX19KSl9fSxwPXtpbml0OmZ1bmN0aW9uKCl7dGhpcy5zdG9wU3RpY2t5V29vTm90aWNlU2Nyb2xsKCl9LHN0b3BTdGlja3lXb29Ob3RpY2VTY3JvbGw6ZnVuY3Rpb24oKXthLmlzVkJ8fHQoImEuc2hvd2NvdXBvbiIpLm9uKCJjbGljayIsKGZ1bmN0aW9uKGUpe2lmKHQodGhpcykucGFyZW50cygiLmV0X3BiX3djX2NhcnRfbm90aWNlIikuaGFzQ2xhc3MoImV0X3BiX3N0aWNreV9tb2R1bGUiKSl7ZS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgbj10KHRoaXMpLnBhcmVudHMoIi5ldF9wYl9zdGlja3lfbW9kdWxlIik7cmV0dXJuIHQoIi5jaGVja291dF9jb3Vwb24iLG4pLnNsaWRlVG9nZ2xlKDQwMCwoZnVuY3Rpb24oKXt0KCIuY2hlY2tvdXRfY291cG9uIixuKS5maW5kKCI6aW5wdXQ6ZXEoMCkiKS5mb2N1cygpfSkpLCExfX0pKX19LHU9e2V0X2dldF9hbmltYXRpb25fY2xhc3NlczpmdW5jdGlvbigpe3JldHVyblsiZXRfYW5pbWF0ZWQiLCJldF9pc19hbmltYXRpbmciLCJpbmZpbml0ZSIsImV0LXdheXBvaW50IiwiZmFkZSIsImZhZGVUb3AiLCJmYWRlUmlnaHQiLCJmYWRlQm90dG9tIiwiZmFkZUxlZnQiLCJzbGlkZSIsInNsaWRlVG9wIiwic2xpZGVSaWdodCIsInNsaWRlQm90dG9tIiwic2xpZGVMZWZ0IiwiYm91bmNlIiwiYm91bmNlVG9wIiwiYm91bmNlUmlnaHQiLCJib3VuY2VCb3R0b20iLCJib3VuY2VMZWZ0Iiwiem9vbSIsInpvb21Ub3AiLCJ6b29tUmlnaHQiLCJ6b29tQm90dG9tIiwiem9vbUxlZnQiLCJmbGlwIiwiZmxpcFRvcCIsImZsaXBSaWdodCIsImZsaXBCb3R0b20iLCJmbGlwTGVmdCIsImZvbGQiLCJmb2xkVG9wIiwiZm9sZFJpZ2h0IiwiZm9sZEJvdHRvbSIsImZvbGRMZWZ0Iiwicm9sbCIsInJvbGxUb3AiLCJyb2xsUmlnaHQiLCJyb2xsQm90dG9tIiwicm9sbExlZnQiLCJ0cmFuc2Zvcm1BbmltIl19LGV0X3JlbW92ZV9hbmltYXRpb246ZnVuY3Rpb24oZSl7aWYoIWUuaGFzQ2xhc3MoImluZmluaXRlIikpe3ZhciBuPXRoaXMuZXRfZ2V0X2FuaW1hdGlvbl9jbGFzc2VzKCk7ZS5pcygiLmV0X3BiX3NlY3Rpb24iKSYmZS5pcygiLnJvbGwiKSYmdCgiIi5jb25jYXQoZXRfZnJvbnRlbmRfc2NyaXB0cy5idWlsZGVyQ3NzQ29udGFpbmVyUHJlZml4LCIsICIpLmNvbmNhdChldF9mcm9udGVuZF9zY3JpcHRzLmJ1aWxkZXJDc3NMYXlvdXRQcmVmaXgpKS5jc3MoIm92ZXJmbG93LXgiLCIiKSxlLnJlbW92ZUNsYXNzKG4uam9pbigiICIpKSxlLmNzcyh7ImFuaW1hdGlvbi1kZWxheSI6IiIsImFuaW1hdGlvbi1kdXJhdGlvbiI6IiIsImFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24iOiIiLG9wYWNpdHk6IiIsdHJhbnNmb3JtOiIiLGxlZnQ6IiJ9KSxlLmFkZENsYXNzKCJldF9oYWRfYW5pbWF0aW9uIil9fSxldF9yZW1vdmVfYW5pbWF0aW9uX2RhdGE6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPVtdLGk9ZS5nZXQoMCkuYXR0cmlidXRlcyxhPTA7YTxpLmxlbmd0aDthKyspImRhdGEtYW5pbWF0aW9uLSI9PT1pW2FdLm5hbWUuc3Vic3RyaW5nKDAsMTUpJiZuLnB1c2goaVthXS5uYW1lKTt0LmVhY2gobiwoZnVuY3Rpb24odCxuKXtlLnJlbW92ZUF0dHIobil9KSl9LGV0X3Byb2Nlc3NfYW5pbWF0aW9uX2ludGVuc2l0eTpmdW5jdGlvbih0LGUsbil7dmFyIGk9e307c3dpdGNoKHQpe2Nhc2Uic2xpZGUiOnN3aXRjaChlKXtjYXNlInRvcCI6aT17dHJhbnNmb3JtOiJ0cmFuc2xhdGUzZCgwLCAiLmNvbmNhdCgtMipuLCIlLCAwKSIpfTticmVhaztjYXNlInJpZ2h0IjppPXt0cmFuc2Zvcm06InRyYW5zbGF0ZTNkKCIuY29uY2F0KDIqbiwiJSwgMCwgMCkiKX07YnJlYWs7Y2FzZSJib3R0b20iOmk9e3RyYW5zZm9ybToidHJhbnNsYXRlM2QoMCwgIi5jb25jYXQoMipuLCIlLCAwKSIpfTticmVhaztjYXNlImxlZnQiOmk9e3RyYW5zZm9ybToidHJhbnNsYXRlM2QoIi5jb25jYXQoLTIqbiwiJSwgMCwgMCkiKX07YnJlYWs7ZGVmYXVsdDppPXt0cmFuc2Zvcm06InNjYWxlM2QoIi5jb25jYXQoYT0uMDEqKDEwMC1uKSwiLCAiKS5jb25jYXQoYSwiLCAiKS5jb25jYXQoYSwiKSIpfX1icmVhaztjYXNlInpvb20iOnZhciBhO2k9e3RyYW5zZm9ybToic2NhbGUzZCgiLmNvbmNhdChhPS4wMSooMTAwLW4pLCIsICIpLmNvbmNhdChhLCIsICIpLmNvbmNhdChhLCIpIil9O2JyZWFrO2Nhc2UiZmxpcCI6c3dpdGNoKGUpe2Nhc2UicmlnaHQiOnZhciBvPU1hdGguY2VpbCguOSpuKTtpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UibGVmdCI6bz0tMSpNYXRoLmNlaWwoLjkqbiksaT17dHJhbnNmb3JtOiJwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoIi5jb25jYXQobywiZGVnKSIpfTticmVhaztjYXNlInRvcCI6ZGVmYXVsdDpvPU1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UiYm90dG9tIjpvPS0xKk1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9fWJyZWFrO2Nhc2UiZm9sZCI6c3dpdGNoKGUpe2Nhc2UidG9wIjpvPS0xKk1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UiYm90dG9tIjpvPU1hdGguY2VpbCguOSpuKSxpPXt0cmFuc2Zvcm06InBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgiLmNvbmNhdChvLCJkZWcpIil9O2JyZWFrO2Nhc2UibGVmdCI6bz1NYXRoLmNlaWwoLjkqbiksaT17dHJhbnNmb3JtOiJwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoIi5jb25jYXQobywiZGVnKSIpfTticmVhaztkZWZhdWx0Om89LTEqTWF0aC5jZWlsKC45Km4pLGk9e3RyYW5zZm9ybToicGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKCIuY29uY2F0KG8sImRlZykiKX19YnJlYWs7Y2FzZSJyb2xsIjpzd2l0Y2goZSl7Y2FzZSJyaWdodCI6Y2FzZSJib3R0b20iOm89LTEqTWF0aC5jZWlsKDMuNipuKSxpPXt0cmFuc2Zvcm06InJvdGF0ZVooIi5jb25jYXQobywiZGVnKSIpfTticmVhaztjYXNlInRvcCI6Y2FzZSJsZWZ0IjpvPU1hdGguY2VpbCgzLjYqbiksaT17dHJhbnNmb3JtOiJyb3RhdGVaKCIuY29uY2F0KG8sImRlZykiKX07YnJlYWs7ZGVmYXVsdDpvPU1hdGguY2VpbCgzLjYqbiksaT17dHJhbnNmb3JtOiJyb3RhdGVaKCIuY29uY2F0KG8sImRlZykiKX19fXJldHVybiBpfSxldF9hbmltYXRlX2VsZW1lbnQ6ZnVuY3Rpb24oZSl7dmFyIG49dGhpcyxpPWU7aWYoIWkuaGFzQ2xhc3MoImV0X2hhZF9hbmltYXRpb24iKSl7dmFyIGE9aS5hdHRyKCJkYXRhLWFuaW1hdGlvbi1zdHlsZSIpLG89aS5hdHRyKCJkYXRhLWFuaW1hdGlvbi1yZXBlYXQiKSxyPWkuYXR0cigiZGF0YS1hbmltYXRpb24tZHVyYXRpb24iKSxzPWkuYXR0cigiZGF0YS1hbmltYXRpb24tZGVsYXkiKSxjPWkuYXR0cigiZGF0YS1hbmltYXRpb24taW50ZW5zaXR5IiksbD1pLmF0dHIoImRhdGEtYW5pbWF0aW9uLXN0YXJ0aW5nLW9wYWNpdHkiKSxfPWkuYXR0cigiZGF0YS1hbmltYXRpb24tc3BlZWQtY3VydmUiKSxkPWkucGFyZW50KCIuZXRfcGJfYnV0dG9uX21vZHVsZV93cmFwcGVyIikscD10KCJib2R5IikuaGFzQ2xhc3MoImVkZ2UiKTtpLmlzKCIuZXRfcGJfc2VjdGlvbiIpJiYicm9sbCI9PT1hJiZ0KCIiLmNvbmNhdChldF9mcm9udGVuZF9zY3JpcHRzLmJ1aWxkZXJDc3NDb250YWluZXJQcmVmaXgsIiwgIikuY29uY2F0KGV0X2Zyb250ZW5kX3NjcmlwdHMuYnVpbGRlckNzc0xheW91dFByZWZpeCkpLmNzcygib3ZlcmZsb3cteCIsImhpZGRlbiIpLHRoaXMuZXRfcmVtb3ZlX2FuaW1hdGlvbl9kYXRhKGkpO3ZhciB1PWlzTmFOKHBhcnNlSW50KGwpKT8wOi4wMSpwYXJzZUludChsKTstMT09PXQuaW5BcnJheShfLFsibGluZWFyIiwiZWFzZSIsImVhc2UtaW4iLCJlYXNlLW91dCIsImVhc2UtaW4tb3V0Il0pJiYoXz0iZWFzZS1pbi1vdXQiKSxkLmxlbmd0aD4wJiYoaS5yZW1vdmVDbGFzcygiZXRfYW5pbWF0ZWQiKSwoaT1kKS5hZGRDbGFzcygiZXRfYW5pbWF0ZWQiKSksaS5jc3MoeyJhbmltYXRpb24tZHVyYXRpb24iOnIsImFuaW1hdGlvbi1kZWxheSI6cyxvcGFjaXR5OnUsImFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24iOl99KSwic2xpZGVUb3AiIT09YSYmInNsaWRlQm90dG9tIiE9PWF8fGkuY3NzKCJsZWZ0IiwiMHB4Iik7Zm9yKHZhciBmPXt9LGg9aXNOYU4ocGFyc2VJbnQoYykpPzUwOnBhcnNlSW50KGMpLGI9WyJzbGlkZSIsInpvb20iLCJmbGlwIiwiZm9sZCIsInJvbGwiXSx2PSExLG09ITEsZz0wO2c8Yi5sZW5ndGg7ZysrKXt2YXIgdz1iW2ddO2lmKGEmJmEuc3Vic3RyKDAsdy5sZW5ndGgpPT09dyl7dj13LCIiIT09KG09YS5zdWJzdHIody5sZW5ndGgsYS5sZW5ndGgpKSYmKG09bS50b0xvd2VyQ2FzZSgpKTticmVha319aWYoITEhPT12JiYhMSE9PW0mJihmPXRoaXMuZXRfcHJvY2Vzc19hbmltYXRpb25faW50ZW5zaXR5KHYsbSxoKSksdC5pc0VtcHR5T2JqZWN0KGYpfHxpLmNzcyhwP3QuZXh0ZW5kKGYse3RyYW5zaXRpb246InRyYW5zZm9ybSAwcyBlYXNlLWluIn0pOmYpLGkuYWRkQ2xhc3MoImV0X2FuaW1hdGVkIiksaS5hZGRDbGFzcygiZXRfaXNfYW5pbWF0aW5nIiksaS5hZGRDbGFzcyhhKSxpLmFkZENsYXNzKG8pLCFvKXt2YXIgeT1wYXJzZUludChyKSx4PXBhcnNlSW50KHMpO3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7bi5ldF9yZW1vdmVfYW5pbWF0aW9uKGkpfSkseSt4KSxwJiYhdC5pc0VtcHR5T2JqZWN0KGYpJiZzZXRUaW1lb3V0KChmdW5jdGlvbigpe2kuY3NzKCJ0cmFuc2l0aW9uIiwiIil9KSx5K3grNTApfX19LGdldEN1cnJlbnRXaW5kb3dNb2RlOmZ1bmN0aW9uKCl7dmFyIGU9dCh3aW5kb3cpLndpZHRoKCksbj0iZGVza3RvcCI7cmV0dXJuIGU8PTk4MCYmZT43Njc/bj0idGFibGV0IjplPD03NjcmJihuPSJwaG9uZSIpLG59LGV0UHJvY2Vzc0FuaW1hdGlvbkRhdGE6ZnVuY3Rpb24oKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGV0X2FuaW1hdGlvbl9kYXRhJiYwIT09ZXRfYW5pbWF0aW9uX2RhdGEubGVuZ3RoKXt0KCJib2R5IikuY3NzKCJvdmVyZmxvdy14IiwiaGlkZGVuIiksdCgiI3BhZ2UtY29udGFpbmVyIikuY3NzKCJvdmVyZmxvdy15IiwiaGlkZGVuIik7Zm9yKHZhciBlPTA7ZTxldF9hbmltYXRpb25fZGF0YS5sZW5ndGg7ZSsrKXt2YXIgbj1ldF9hbmltYXRpb25fZGF0YVtlXTtpZihuLmNsYXNzJiZuLnN0eWxlJiZuLnJlcGVhdCYmbi5kdXJhdGlvbiYmbi5kZWxheSYmbi5pbnRlbnNpdHkmJm4uc3RhcnRpbmdfb3BhY2l0eSYmbi5zcGVlZF9jdXJ2ZSl7dmFyIGk9dCgiLiIuY29uY2F0KG4uY2xhc3MpKTtpLnJlbW92ZUNsYXNzKCJldF9oYWRfYW5pbWF0aW9uIik7dmFyIGE9dGhpcy5nZXRDdXJyZW50V2luZG93TW9kZSgpLG89ImRlc2t0b3AiPT09YSxyPSIiO298fChyKz0iXyIuY29uY2F0KGEpKTt2YXIgcz1vfHx2b2lkIDA9PT1uWyJzdHlsZSIuY29uY2F0KHIpXT9uLnN0eWxlOm5bInN0eWxlIi5jb25jYXQocildLGM9b3x8dm9pZCAwPT09blsicmVwZWF0Ii5jb25jYXQocildP24ucmVwZWF0Om5bInJlcGVhdCIuY29uY2F0KHIpXSxsPW98fHZvaWQgMD09PW5bImR1cmF0aW9uIi5jb25jYXQocildP24uZHVyYXRpb246blsiZHVyYXRpb24iLmNvbmNhdChyKV0sXz1vfHx2b2lkIDA9PT1uWyJkZWxheSIuY29uY2F0KHIpXT9uLmRlbGF5Om5bImRlbGF5Ii5jb25jYXQocildLGQ9b3x8dm9pZCAwPT09blsiaW50ZW5zaXR5Ii5jb25jYXQocildP24uaW50ZW5zaXR5Om5bImludGVuc2l0eSIuY29uY2F0KHIpXSxwPW98fHZvaWQgMD09PW5bInN0YXJ0aW5nX29wYWNpdHkiLmNvbmNhdChyKV0/bi5zdGFydGluZ19vcGFjaXR5Om5bInN0YXJ0aW5nX29wYWNpdHkiLmNvbmNhdChyKV0sdT1vfHx2b2lkIDA9PT1uWyJzcGVlZF9jdXJ2ZSIuY29uY2F0KHIpXT9uLnNwZWVkX2N1cnZlOm5bInNwZWVkX2N1cnZlIi5jb25jYXQocildO2kuYXR0cih7ImRhdGEtYW5pbWF0aW9uLXN0eWxlIjpzLCJkYXRhLWFuaW1hdGlvbi1yZXBlYXQiOiJvbmNlIj09PWM/IiI6ImluZmluaXRlIiwiZGF0YS1hbmltYXRpb24tZHVyYXRpb24iOmwsImRhdGEtYW5pbWF0aW9uLWRlbGF5IjpfLCJkYXRhLWFuaW1hdGlvbi1pbnRlbnNpdHkiOmQsImRhdGEtYW5pbWF0aW9uLXN0YXJ0aW5nLW9wYWNpdHkiOnAsImRhdGEtYW5pbWF0aW9uLXNwZWVkLWN1cnZlIjp1fSksdGhpcy5ldF9hbmltYXRlX2VsZW1lbnQoaSl9fX19fTtkLmluaXQoKSxwLmluaXQoKSxmdW5jdGlvbiBlKCl7dCgiLmV0X3BiX3djX2NoZWNrb3V0X2JpbGxpbmcgZm9ybS5jaGVja291dCIpLmxlbmd0aD8oYS5pc1ZCJiZ0KCIuZXRfcGJfd2NfY2hlY2tvdXRfYmlsbGluZyBmb3JtLmNoZWNrb3V0IikucHJlcGVuZCgnXG4gICAgICAgIDxkaXYgY2xhc3M9Indvb2NvbW1lcmNlLU5vdGljZUdyb3VwIHdvb2NvbW1lcmNlLU5vdGljZUdyb3VwLWNoZWNrb3V0Ij5cbiAgICAgICAgICA8dWwgY2xhc3M9Indvb2NvbW1lcmNlLWVycm9yIiByb2xlPSJhbGVydCI+XG4gICAgICAgICAgICA8bGkgZGF0YS1pZD0iYmlsbGluZ19maXJzdF9uYW1lIj5cbiAgICAgICAgICAgICAgPHN0cm9uZz5CaWxsaW5nIEZpcnN0IG5hbWU8L3N0cm9uZz4gaXMgYSByZXF1aXJlZCBmaWVsZC5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPC91bD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgICcpLGNsZWFyVGltZW91dChsKSk6bD1zZXRUaW1lb3V0KGUsMWUzKX0oKSx0KGRvY3VtZW50LmJvZHkpLm9uKCJ1cGRhdGVkX2NoZWNrb3V0IixfKSx0KCIjZXQtYm9jIikub24oImNoYW5nZSIsImlucHV0LmlucHV0LXJhZGlvIixfKSx0KGRvY3VtZW50LmJvZHkpLm9uKCJjbGljayIsIi53b29jb21tZXJjZS1jYXJ0LWZvcm0gLnByb2R1Y3QtcmVtb3ZlID4gYSIsKGZ1bmN0aW9uKHQpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2NfY2FydF9wYXJhbXMmJmEuaXNWQilyZXR1cm4gdC5wcmV2ZW50RGVmYXVsdCgpLCExfSkpLHQoZG9jdW1lbnQuYm9keSkub24oImluaXRfY2hlY2tvdXQiLChmdW5jdGlvbigpe2UoKXx8KHQoZG9jdW1lbnQuYm9keSkub24oImNoZWNrb3V0X2Vycm9yIiwoZnVuY3Rpb24oKXt0KCIud29vY29tbWVyY2UtTm90aWNlR3JvdXAtY2hlY2tvdXQ6bm90KDpmaXJzdCkiKS5oaWRlKCl9KSksYygpLHQoZG9jdW1lbnQuYm9keSkub24oImNoYW5nZSIsIi5ldF9wYl93Y19jaGVja291dF9iaWxsaW5nIGlucHV0IixzKSx0KGRvY3VtZW50LmJvZHkpLm9uKCJjaGFuZ2UiLCIuZXRfcGJfd2NfY2hlY2tvdXRfYmlsbGluZyBzZWxlY3QiLHIpLHQoZG9jdW1lbnQuYm9keSkub24oImNoYW5nZSIsIi5ldF9wYl93Y19jaGVja291dF9zaGlwcGluZyBpbnB1dCIscyksdChkb2N1bWVudC5ib2R5KS5vbigiY2hhbmdlIiwiLmV0X3BiX3djX2NoZWNrb3V0X3NoaXBwaW5nIHNlbGVjdCIsciksdChkb2N1bWVudC5ib2R5KS5vbigiY2hhbmdlIiwiI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3MgaW5wdXQiLG8pLHQoZG9jdW1lbnQuYm9keSkub24oImNoYW5nZSIsInRleHRhcmVhW25hbWU9b3JkZXJfY29tbWVudHNdIixuKSx0KGRvY3VtZW50LmJvZHkpLm9uKCJjaGFuZ2UiLCJpbnB1dCNjcmVhdGVhY2NvdW50IixvKSx0KCIuZXRfcGJfd2NfY2hlY2tvdXRfc2hpcHBpbmciKS5sZW5ndGh8fHQoJy53b29jb21tZXJjZS1lcnJvciBsaVtkYXRhLWlkXj0ic2hpcHBpbmdfIl0nKS5oaWRlKCksdCgiLmV0X3BiX3djX2NoZWNrb3V0X3NoaXBwaW5nIGRpdi5zaGlwcGluZ19hZGRyZXNzIikuaGlkZSgpKX0pKSx0KGRvY3VtZW50LmJvZHkpLm9uKCJ3Y19jYXJ0X2VtcHRpZWQiLChmdW5jdGlvbigpe2UoKXx8dCgiLmV0X3BiX3djX2NhcnRfdG90YWxzIikuaGlkZSgpfSkpLHQoIi5ldF9wYl93Y19jaGVja291dF9vcmRlcl9kZXRhaWxzIikub24oImNoYW5nZSIsImlucHV0W25hbWVePXNoaXBwaW5nX21ldGhvZF0iLChmdW5jdGlvbigpe3QoZG9jdW1lbnQuYm9keSkudHJpZ2dlcigidXBkYXRlX2NoZWNrb3V0Iil9KSksdCgiLmV0X3BiX3djX2NoZWNrb3V0X2JpbGxpbmcgc2VsZWN0W25hbWVePWJpbGxpbmdfY291bnRyeV0sIC5ldF9wYl93Y19jaGVja291dF9zaGlwcGluZyBzZWxlY3RbbmFtZV49c2hpcHBpbmdfY291bnRyeV0iKS5vbigiY2hhbmdlIiwoZnVuY3Rpb24oKXt0KGRvY3VtZW50LmJvZHkpLnRyaWdnZXIoInVwZGF0ZV9jaGVja291dCIpfSkpLHQoIi5ldF9wYl93Y19jaGVja291dF9iaWxsaW5nIGlucHV0W25hbWVePWJpbGxpbmdfcG9zdGNvZGVdLCAuZXRfcGJfd2NfY2hlY2tvdXRfc2hpcHBpbmcgaW5wdXRbbmFtZV49c2hpcHBpbmdfcG9zdGNvZGVdIikub24oImNoYW5nZSIsKGZ1bmN0aW9uKCl7dChkb2N1bWVudC5ib2R5KS50cmlnZ2VyKCJ1cGRhdGVfY2hlY2tvdXQiKX0pKSxlKCl8fHQoImJvZHkiKS5oYXNDbGFzcygid29vY29tbWVyY2Utb3JkZXItcmVjZWl2ZWQiKSYmdCgnLmV0X3BiX3JvdzpoYXMoIi5ldF9wYl9jb2x1bW4uZXRfcGJfY29sdW1uX2VtcHR5IiknKS5hZGRDbGFzcygiZXRfcGJfbm9fdG9wX2JvdHRvbV9wYWRkaW5nIil9KHQpLHQoKGZ1bmN0aW9uKHQpe3Quc2Nyb2xsX3RvX25vdGljZXM9ZnVuY3Rpb24oZSl7dmFyIG49MTAwO3QoIi5ldC1maXhlZC1oZWFkZXIiKS5sZW5ndGgmJihuKz10KCIuZXQtZml4ZWQtaGVhZGVyIikuaGVpZ2h0KCkpLGUubGVuZ3RoJiZ0KCJodG1sLCBib2R5IikuYW5pbWF0ZSh7c2Nyb2xsVG9wOmUub2Zmc2V0KCkudG9wLW59LDFlMyl9fSkpfSkuY2FsbCh0aGlzLG4oOCkpfSwxNDY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTAwKTtmdW5jdGlvbiBhKHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHR8fG51bGwhPWUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgZnVuY3Rpb24iKTt2YXIgbj1mdW5jdGlvbiBuKCl7dmFyIGk9YXJndW1lbnRzLGE9ZT9lLmFwcGx5KHRoaXMsaSk6aVswXSxvPW4uY2FjaGU7aWYoby5oYXMoYSkpcmV0dXJuIG8uZ2V0KGEpO3ZhciByPXQuYXBwbHkodGhpcyxpKTtyZXR1cm4gbi5jYWNoZT1vLnNldChhLHIpfHxvLHJ9O3JldHVybiBuLmNhY2hlPW5ldyhhLkNhY2hlfHxpKSxufWEuQ2FjaGU9aSx0LmV4cG9ydHM9YX0sMTQ3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEwMCksYT1uKDI1MSksbz1uKDI1Mik7ZnVuY3Rpb24gcih0KXt2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5fX2RhdGFfXz1uZXcgaTsrK2U8bjspdGhpcy5hZGQodFtlXSl9ci5wcm90b3R5cGUuYWRkPXIucHJvdG90eXBlLnB1c2g9YSxyLnByb3RvdHlwZS5oYXM9byx0LmV4cG9ydHM9cn0sMTQ4OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaGFzKGUpfX0sMTQ5OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLGkpe2Zvcih2YXIgYT10Lmxlbmd0aCxvPW4rKGk/MTotMSk7aT9vLS06KytvPGE7KWlmKGUodFtvXSxvLHQpKXJldHVybiBvO3JldHVybi0xfX0sMTUwOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDExNik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0Pyh0PWkodCkpPT09MS8wfHx0PT09LTEvMD8xNzk3NjkzMTM0ODYyMzE1N2UyOTIqKHQ8MD8tMToxKTp0PT10P3Q6MDowPT09dD90OjB9fSwxNTE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTIwKSxhPW4oNTkpLG89T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLG4pe3ZhciByPXRbZV07by5jYWxsKHQsZSkmJmEocixuKSYmKHZvaWQgMCE9PW58fGUgaW4gdCl8fGkodCxlLG4pfX0sMTU0OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEwOSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXt2YXIgYT10Lmxlbmd0aDtyZXR1cm4gbj12b2lkIDA9PT1uP2E6biwhZSYmbj49YT90OmkodCxlLG4pfX0sMTU1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM0MyksYT1uKDE1Niksbz1uKDM0NCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBhKHQpP28odCk6aSh0KX19LDE1NjpmdW5jdGlvbih0LGUpe3ZhciBuPVJlZ0V4cCgiW1xcdTIwMGRcXHVkODAwLVxcdWRmZmZcXHUwMzAwLVxcdTAzNmZcXHVmZTIwLVxcdWZlMmZcXHUyMGQwLVxcdTIwZmZcXHVmZTBlXFx1ZmUwZl0iKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG4udGVzdCh0KX19LDE2MjpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMDMpKCk7dC5leHBvcnRzPWl9LDE2MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxODQpLGE9big4MCksbz1uKDMpLHI9big3Mikscz1uKDY3KSxjPW4oODIpLGw9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgbj1vKHQpLF89IW4mJmEodCksZD0hbiYmIV8mJnIodCkscD0hbiYmIV8mJiFkJiZjKHQpLHU9bnx8X3x8ZHx8cCxmPXU/aSh0Lmxlbmd0aCxTdHJpbmcpOltdLGg9Zi5sZW5ndGg7Zm9yKHZhciBiIGluIHQpIWUmJiFsLmNhbGwodCxiKXx8dSYmKCJsZW5ndGgiPT1ifHxkJiYoIm9mZnNldCI9PWJ8fCJwYXJlbnQiPT1iKXx8cCYmKCJidWZmZXIiPT1ifHwiYnl0ZUxlbmd0aCI9PWJ8fCJieXRlT2Zmc2V0Ij09Yil8fHMoYixoKSl8fGYucHVzaChiKTtyZXR1cm4gZn19LDE2NDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbigpe3JldHVybltdfX0sMTY4OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiB0KGUobikpfX19LDE2OTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MykobigyMyksIlNldCIpO3QuZXhwb3J0cz1pfSwxNzA6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNDMpKG4oMjMpLCJXZWFrTWFwIik7dC5leHBvcnRzPWl9LDE3MTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMjYpLGE9L1teLltcXV0rfFxbKD86KC0/XGQrKD86XC5cZCspPyl8KFsiJ10pKCg/Oig/IVwyKVteXFxdfFxcLikqPylcMilcXXwoPz0oPzpcLnxcW1xdKSg/OlwufFxbXF18JCkpL2csbz0vXFwoXFwpPy9nLHI9aSgoZnVuY3Rpb24odCl7dmFyIGU9W107cmV0dXJuIDQ2PT09dC5jaGFyQ29kZUF0KDApJiZlLnB1c2goIiIpLHQucmVwbGFjZShhLChmdW5jdGlvbih0LG4saSxhKXtlLnB1c2goaT9hLnJlcGxhY2UobywiJDEiKTpufHx0KX0pKSxlfSkpO3QuZXhwb3J0cz1yfSwxNzI6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49LTEsaT1udWxsPT10PzA6dC5sZW5ndGg7KytuPGk7KWlmKGUodFtuXSxuLHQpKXJldHVybiEwO3JldHVybiExfX0sMTczOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIzKS5VaW50OEFycmF5O3QuZXhwb3J0cz1pfSwxNzQ6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9LTEsbj1BcnJheSh0LnNpemUpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKHQsaSl7blsrK2VdPVtpLHRdfSkpLG59fSwxNzU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTc2KSxhPW4oMTQwKSxvPW4oMTQpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gaSh0LG8sYSl9fSwxNzY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTE4KSxhPW4oMyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXt2YXIgbz1lKHQpO3JldHVybiBhKHQpP286aShvLG4odCkpfX0sMTc3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEyKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PXQmJiFpKHQpfX0sMTc4OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBudWxsIT1uJiZuW3RdPT09ZSYmKHZvaWQgMCE9PWV8fHQgaW4gT2JqZWN0KG4pKX19fSwxODM6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4hMX19LDE4NDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0tMSxpPUFycmF5KHQpOysrbjx0OylpW25dPWUobik7cmV0dXJuIGl9fSwxODU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTg2KSxhPS9eXHMrLzt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLGkodCkrMSkucmVwbGFjZShhLCIiKTp0fX0sMTg2OmZ1bmN0aW9uKHQsZSl7dmFyIG49L1xzLzt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXQubGVuZ3RoO2UtLSYmbi50ZXN0KHQuY2hhckF0KGUpKTspO3JldHVybiBlfX0sMTg3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDQ1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gaShlLChmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0pKX19LDIwMTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzNSksYT1uKDIyMSksbz1uKDEyKSxyPW4oMTM4KSxzPS9eXFtvYmplY3QgLis/Q29uc3RydWN0b3JcXSQvLGM9RnVuY3Rpb24ucHJvdG90eXBlLGw9T2JqZWN0LnByb3RvdHlwZSxfPWMudG9TdHJpbmcsZD1sLmhhc093blByb3BlcnR5LHA9UmVnRXhwKCJeIitfLmNhbGwoZCkucmVwbGFjZSgvW1xcXiQuKis/KClbXF17fXxdL2csIlxcJCYiKS5yZXBsYWNlKC9oYXNPd25Qcm9wZXJ0eXwoZnVuY3Rpb24pLio/KD89XFxcKCl8IGZvciAuKz8oPz1cXFxdKS9nLCIkMS4qPyIpKyIkIik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiEoIW8odCl8fGEodCkpJiYoaSh0KT9wOnMpLnRlc3Qocih0KSl9fSwyMDI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMjMpWyJfX2NvcmUtanNfc2hhcmVkX18iXTt0LmV4cG9ydHM9aX0sMjAzOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlLG4saSl7Zm9yKHZhciBhPS0xLG89T2JqZWN0KGUpLHI9aShlKSxzPXIubGVuZ3RoO3MtLTspe3ZhciBjPXJbdD9zOisrYV07aWYoITE9PT1uKG9bY10sYyxvKSlicmVha31yZXR1cm4gZX19fSwyMDQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiBmdW5jdGlvbihuLGEpe2lmKG51bGw9PW4pcmV0dXJuIG47aWYoIWkobikpcmV0dXJuIHQobixhKTtmb3IodmFyIG89bi5sZW5ndGgscj1lP286LTEscz1PYmplY3Qobik7KGU/ci0tOisrcjxvKSYmITEhPT1hKHNbcl0scixzKTspO3JldHVybiBufX19LDIwNTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3MyksYT1uKDgwKSxvPW4oMykscj1uKDY3KSxzPW4oOTcpLGM9big1Mik7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIGw9LTEsXz0oZT1pKGUsdCkpLmxlbmd0aCxkPSExOysrbDxfOyl7dmFyIHA9YyhlW2xdKTtpZighKGQ9bnVsbCE9dCYmbih0LHApKSlicmVhazt0PXRbcF19cmV0dXJuIGR8fCsrbCE9Xz9kOiEhKF89bnVsbD09dD8wOnQubGVuZ3RoKSYmcyhfKSYmcihwLF8pJiYobyh0KXx8YSh0KSl9fSwyMDY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMjg3KSxhPW4oMjA1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gbnVsbCE9dCYmYSh0LGUsaSl9fSwyMDc6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3ZvaWQgMDplW3RdfX19LDIwODpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdCE9dH19LDIxMDpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MyksYT1mdW5jdGlvbigpe3RyeXt2YXIgdD1pKE9iamVjdCwiZGVmaW5lUHJvcGVydHkiKTtyZXR1cm4gdCh7fSwiIix7fSksdH1jYXRjaCh0KXt9fSgpO3QuZXhwb3J0cz1hfSwyMTE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTUxKSxhPW4oNzMpLG89big2Nykscj1uKDEyKSxzPW4oNTIpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbixjKXtpZighcih0KSlyZXR1cm4gdDtmb3IodmFyIGw9LTEsXz0oZT1hKGUsdCkpLmxlbmd0aCxkPV8tMSxwPXQ7bnVsbCE9cCYmKytsPF87KXt2YXIgdT1zKGVbbF0pLGY9bjtpZigiX19wcm90b19fIj09PXV8fCJjb25zdHJ1Y3RvciI9PT11fHwicHJvdG90eXBlIj09PXUpcmV0dXJuIHQ7aWYobCE9ZCl7dmFyIGg9cFt1XTt2b2lkIDA9PT0oZj1jP2MoaCx1LHApOnZvaWQgMCkmJihmPXIoaCk/aDpvKGVbbCsxXSk/W106e30pfWkocCx1LGYpLHA9cFt1XX1yZXR1cm4gdH19LDIxNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxNjgpKE9iamVjdC5rZXlzLE9iamVjdCk7dC5leHBvcnRzPWl9LDIxODpmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MykobigyMyksIkRhdGFWaWV3Iik7dC5leHBvcnRzPWl9LDIxOTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big1OCksYT1PYmplY3QucHJvdG90eXBlLG89YS5oYXNPd25Qcm9wZXJ0eSxyPWEudG9TdHJpbmcscz1pP2kudG9TdHJpbmdUYWc6dm9pZCAwO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1vLmNhbGwodCxzKSxuPXRbc107dHJ5e3Rbc109dm9pZCAwO3ZhciBpPSEwfWNhdGNoKHQpe312YXIgYT1yLmNhbGwodCk7cmV0dXJuIGkmJihlP3Rbc109bjpkZWxldGUgdFtzXSksYX19LDIyMDpmdW5jdGlvbih0LGUpe3ZhciBuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBuLmNhbGwodCl9fSwyMjE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpLGE9bigyMDIpLG89KGk9L1teLl0rJC8uZXhlYyhhJiZhLmtleXMmJmEua2V5cy5JRV9QUk9UT3x8IiIpKT8iU3ltYm9sKHNyYylfMS4iK2k6IiI7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiEhbyYmbyBpbiB0fX0sMjIyOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbZV19fSwyMjM6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNDMpKG4oMjMpLCJQcm9taXNlIik7dC5leHBvcnRzPWl9LDIyNDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzNiksYT1uKDI4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGEodCkmJiJbb2JqZWN0IEFyZ3VtZW50c10iPT1pKHQpfX0sMjI1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM2KSxhPW4oOTcpLG89bigyOCkscj17fTtyWyJbb2JqZWN0IEZsb2F0MzJBcnJheV0iXT1yWyJbb2JqZWN0IEZsb2F0NjRBcnJheV0iXT1yWyJbb2JqZWN0IEludDhBcnJheV0iXT1yWyJbb2JqZWN0IEludDE2QXJyYXldIl09clsiW29iamVjdCBJbnQzMkFycmF5XSJdPXJbIltvYmplY3QgVWludDhBcnJheV0iXT1yWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPXJbIltvYmplY3QgVWludDE2QXJyYXldIl09clsiW29iamVjdCBVaW50MzJBcnJheV0iXT0hMCxyWyJbb2JqZWN0IEFyZ3VtZW50c10iXT1yWyJbb2JqZWN0IEFycmF5XSJdPXJbIltvYmplY3QgQXJyYXlCdWZmZXJdIl09clsiW29iamVjdCBCb29sZWFuXSJdPXJbIltvYmplY3QgRGF0YVZpZXddIl09clsiW29iamVjdCBEYXRlXSJdPXJbIltvYmplY3QgRXJyb3JdIl09clsiW29iamVjdCBGdW5jdGlvbl0iXT1yWyJbb2JqZWN0IE1hcF0iXT1yWyJbb2JqZWN0IE51bWJlcl0iXT1yWyJbb2JqZWN0IE9iamVjdF0iXT1yWyJbb2JqZWN0IFJlZ0V4cF0iXT1yWyJbb2JqZWN0IFNldF0iXT1yWyJbb2JqZWN0IFN0cmluZ10iXT1yWyJbb2JqZWN0IFdlYWtNYXBdIl09ITEsdC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBvKHQpJiZhKHQubGVuZ3RoKSYmISFyW2kodCldfX0sMjI2OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE0Nik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPWkodCwoZnVuY3Rpb24odCl7cmV0dXJuIDUwMD09PW4uc2l6ZSYmbi5jbGVhcigpLHR9KSksbj1lLmNhY2hlO3JldHVybiBlfX0sMjI3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIyOCksYT1uKDc2KSxvPW4oOTYpO3QuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMuc2l6ZT0wLHRoaXMuX19kYXRhX189e2hhc2g6bmV3IGksbWFwOm5ldyhvfHxhKSxzdHJpbmc6bmV3IGl9fX0sMjI4OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIyOSksYT1uKDIzMCksbz1uKDIzMSkscj1uKDIzMikscz1uKDIzMyk7ZnVuY3Rpb24gYyh0KXt2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrZTxuOyl7dmFyIGk9dFtlXTt0aGlzLnNldChpWzBdLGlbMV0pfX1jLnByb3RvdHlwZS5jbGVhcj1pLGMucHJvdG90eXBlLmRlbGV0ZT1hLGMucHJvdG90eXBlLmdldD1vLGMucHJvdG90eXBlLmhhcz1yLGMucHJvdG90eXBlLnNldD1zLHQuZXhwb3J0cz1jfSwyMjk6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzUpO3QuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189aT9pKG51bGwpOnt9LHRoaXMuc2l6ZT0wfX0sMjM6ZnVuY3Rpb24odCxlLG4pe3ZhciBhPW4oMTM3KSxvPSJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiBzZWxmPyJ1bmRlZmluZWQiOmkoc2VsZikpJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZixyPWF8fG98fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCk7dC5leHBvcnRzPXJ9LDIzMDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX19LDIzMTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3NSksYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9fZGF0YV9fO2lmKGkpe3ZhciBuPWVbdF07cmV0dXJuIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iPT09bj92b2lkIDA6bn1yZXR1cm4gYS5jYWxsKGUsdCk/ZVt0XTp2b2lkIDB9fSwyMzI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzUpLGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXztyZXR1cm4gaT92b2lkIDAhPT1lW3RdOmEuY2FsbChlLHQpfX0sMjMzOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDc1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fO3JldHVybiB0aGlzLnNpemUrPXRoaXMuaGFzKHQpPzA6MSxuW3RdPWkmJnZvaWQgMD09PWU/Il9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iOmUsdGhpc319LDIzNDpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9fSwyMzU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzcpLGE9QXJyYXkucHJvdG90eXBlLnNwbGljZTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWkoZSx0KTtyZXR1cm4hKG48MHx8KG49PWUubGVuZ3RoLTE/ZS5wb3AoKTphLmNhbGwoZSxuLDEpLC0tdGhpcy5zaXplLDApKX19LDIzNjpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3Nyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18sbj1pKGUsdCk7cmV0dXJuIG48MD92b2lkIDA6ZVtuXVsxXX19LDIzNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3Nyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBpKHRoaXMuX19kYXRhX18sdCk+LTF9fSwyMzg6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzcpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX18sYT1pKG4sdCk7cmV0dXJuIGE8MD8oKyt0aGlzLnNpemUsbi5wdXNoKFt0LGVdKSk6blthXVsxXT1lLHRoaXN9fSwyMzk6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1pKHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9fSwyNDA6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9aSh0KTtyZXR1cm4ic3RyaW5nIj09ZXx8Im51bWJlciI9PWV8fCJzeW1ib2wiPT1lfHwiYm9vbGVhbiI9PWU/Il9fcHJvdG9fXyIhPT10Om51bGw9PT10fX0sMjQxOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDc4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGkodGhpcyx0KS5nZXQodCl9fSwyNDI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gaSh0aGlzLHQpLmhhcyh0KX19LDI0MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3OCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49aSh0aGlzLHQpLGE9bi5zaXplO3JldHVybiBuLnNldCh0LGUpLHRoaXMuc2l6ZSs9bi5zaXplPT1hPzA6MSx0aGlzfX0sMjQ0OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEwNyksYT1uKDExNyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLG8pe3ZhciByPW4ubGVuZ3RoLHM9cixjPSFvO2lmKG51bGw9PXQpcmV0dXJuIXM7Zm9yKHQ9T2JqZWN0KHQpO3ItLTspe3ZhciBsPW5bcl07aWYoYyYmbFsyXT9sWzFdIT09dFtsWzBdXTohKGxbMF1pbiB0KSlyZXR1cm4hMX1mb3IoOysrcjxzOyl7dmFyIF89KGw9bltyXSlbMF0sZD10W19dLHA9bFsxXTtpZihjJiZsWzJdKXtpZih2b2lkIDA9PT1kJiYhKF8gaW4gdCkpcmV0dXJuITF9ZWxzZXt2YXIgdT1uZXcgaTtpZihvKXZhciBmPW8oZCxwLF8sdCxlLHUpO2lmKCEodm9pZCAwPT09Zj9hKHAsZCwzLG8sdSk6ZikpcmV0dXJuITF9fXJldHVybiEwfX0sMjQ1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDc2KTt0LmV4cG9ydHM9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW5ldyBpLHRoaXMuc2l6ZT0wfX0sMjQ2OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18sbj1lLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplPWUuc2l6ZSxufX0sMjQ3OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmdldCh0KX19LDI0ODpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9fSwyNDk6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNzYpLGE9big5Niksbz1uKDEwMCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcy5fX2RhdGFfXztpZihuIGluc3RhbmNlb2YgaSl7dmFyIHI9bi5fX2RhdGFfXztpZighYXx8ci5sZW5ndGg8MTk5KXJldHVybiByLnB1c2goW3QsZV0pLHRoaXMuc2l6ZT0rK24uc2l6ZSx0aGlzO249dGhpcy5fX2RhdGFfXz1uZXcgbyhyKX1yZXR1cm4gbi5zZXQodCxlKSx0aGlzLnNpemU9bi5zaXplLHRoaXN9fSwyNTA6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTA3KSxhPW4oMTM5KSxvPW4oMjUzKSxyPW4oMjU0KSxzPW4oNjYpLGM9bigzKSxsPW4oNzIpLF89big4MiksZD0iW29iamVjdCBBcmd1bWVudHNdIixwPSJbb2JqZWN0IEFycmF5XSIsdT0iW29iamVjdCBPYmplY3RdIixmPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLGgsYix2KXt2YXIgbT1jKHQpLGc9YyhlKSx3PW0/cDpzKHQpLHk9Zz9wOnMoZSkseD0odz13PT1kP3U6dyk9PXUsQz0oeT15PT1kP3U6eSk9PXUsaz13PT15O2lmKGsmJmwodCkpe2lmKCFsKGUpKXJldHVybiExO209ITAseD0hMX1pZihrJiYheClyZXR1cm4gdnx8KHY9bmV3IGkpLG18fF8odCk/YSh0LGUsbixoLGIsdik6byh0LGUsdyxuLGgsYix2KTtpZighKDEmbikpe3ZhciBqPXgmJmYuY2FsbCh0LCJfX3dyYXBwZWRfXyIpLFQ9QyYmZi5jYWxsKGUsIl9fd3JhcHBlZF9fIik7aWYoanx8VCl7dmFyIE89aj90LnZhbHVlKCk6dCxTPVQ/ZS52YWx1ZSgpOmU7cmV0dXJuIHZ8fCh2PW5ldyBpKSxiKE8sUyxuLGgsdil9fXJldHVybiEhayYmKHZ8fCh2PW5ldyBpKSxyKHQsZSxuLGgsYix2KSl9fSwyNTE6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uc2V0KHQsIl9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iKSx0aGlzfX0sMjUyOmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmhhcyh0KX19LDI1MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9big1OCksYT1uKDE3Myksbz1uKDU5KSxyPW4oMTM5KSxzPW4oMTc0KSxjPW4oMTI4KSxsPWk/aS5wcm90b3R5cGU6dm9pZCAwLF89bD9sLnZhbHVlT2Y6dm9pZCAwO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbixpLGwsZCxwKXtzd2l0Y2gobil7Y2FzZSJbb2JqZWN0IERhdGFWaWV3XSI6aWYodC5ieXRlTGVuZ3RoIT1lLmJ5dGVMZW5ndGh8fHQuYnl0ZU9mZnNldCE9ZS5ieXRlT2Zmc2V0KXJldHVybiExO3Q9dC5idWZmZXIsZT1lLmJ1ZmZlcjtjYXNlIltvYmplY3QgQXJyYXlCdWZmZXJdIjpyZXR1cm4hKHQuYnl0ZUxlbmd0aCE9ZS5ieXRlTGVuZ3RofHwhZChuZXcgYSh0KSxuZXcgYShlKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuIG8oK3QsK2UpO2Nhc2UiW29iamVjdCBFcnJvcl0iOnJldHVybiB0Lm5hbWU9PWUubmFtZSYmdC5tZXNzYWdlPT1lLm1lc3NhZ2U7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjpyZXR1cm4gdD09ZSsiIjtjYXNlIltvYmplY3QgTWFwXSI6dmFyIHU9cztjYXNlIltvYmplY3QgU2V0XSI6dmFyIGY9MSZpO2lmKHV8fCh1PWMpLHQuc2l6ZSE9ZS5zaXplJiYhZilyZXR1cm4hMTt2YXIgaD1wLmdldCh0KTtpZihoKXJldHVybiBoPT1lO2l8PTIscC5zZXQodCxlKTt2YXIgYj1yKHUodCksdShlKSxpLGwsZCxwKTtyZXR1cm4gcC5kZWxldGUodCksYjtjYXNlIltvYmplY3QgU3ltYm9sXSI6aWYoXylyZXR1cm4gXy5jYWxsKHQpPT1fLmNhbGwoZSl9cmV0dXJuITF9fSwyNTQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTc1KSxhPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLG8scixzKXt2YXIgYz0xJm4sbD1pKHQpLF89bC5sZW5ndGg7aWYoXyE9aShlKS5sZW5ndGgmJiFjKXJldHVybiExO2Zvcih2YXIgZD1fO2QtLTspe3ZhciBwPWxbZF07aWYoIShjP3AgaW4gZTphLmNhbGwoZSxwKSkpcmV0dXJuITF9dmFyIHU9cy5nZXQodCksZj1zLmdldChlKTtpZih1JiZmKXJldHVybiB1PT1lJiZmPT10O3ZhciBoPSEwO3Muc2V0KHQsZSkscy5zZXQoZSx0KTtmb3IodmFyIGI9YzsrK2Q8Xzspe3ZhciB2PXRbcD1sW2RdXSxtPWVbcF07aWYobyl2YXIgZz1jP28obSx2LHAsZSx0LHMpOm8odixtLHAsdCxlLHMpO2lmKCEodm9pZCAwPT09Zz92PT09bXx8cih2LG0sbixvLHMpOmcpKXtoPSExO2JyZWFrfWJ8fChiPSJjb25zdHJ1Y3RvciI9PXApfWlmKGgmJiFiKXt2YXIgdz10LmNvbnN0cnVjdG9yLHk9ZS5jb25zdHJ1Y3Rvcjt3PT15fHwhKCJjb25zdHJ1Y3RvciJpbiB0KXx8ISgiY29uc3RydWN0b3IiaW4gZSl8fCJmdW5jdGlvbiI9PXR5cGVvZiB3JiZ3IGluc3RhbmNlb2YgdyYmImZ1bmN0aW9uIj09dHlwZW9mIHkmJnkgaW5zdGFuY2VvZiB5fHwoaD0hMSl9cmV0dXJuIHMuZGVsZXRlKHQpLHMuZGVsZXRlKGUpLGh9fSwyNTU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTc3KSxhPW4oMTQpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtmb3IodmFyIGU9YSh0KSxuPWUubGVuZ3RoO24tLTspe3ZhciBvPWVbbl0scj10W29dO2Vbbl09W28scixpKHIpXX1yZXR1cm4gZX19LDI1NjpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbil7Zm9yKHZhciBpPW4tMSxhPXQubGVuZ3RoOysraTxhOylpZih0W2ldPT09ZSlyZXR1cm4gaTtyZXR1cm4tMX19LDI3OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDgxKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/IiI6aSh0KX19LDI3MTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyNDQpLGE9bigyNTUpLG89bigxNzgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1hKHQpO3JldHVybiAxPT1lLmxlbmd0aCYmZVswXVsyXT9vKGVbMF1bMF0sZVswXVsxXSk6ZnVuY3Rpb24obil7cmV0dXJuIG49PT10fHxpKG4sdCxlKX19fSwyNzI6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTE3KSxhPW4oMSksbz1uKDIwNikscj1uKDExMikscz1uKDE3NyksYz1uKDE3OCksbD1uKDUyKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gcih0KSYmcyhlKT9jKGwodCksZSk6ZnVuY3Rpb24obil7dmFyIHI9YShuLHQpO3JldHVybiB2b2lkIDA9PT1yJiZyPT09ZT9vKG4sdCk6aShlLHIsMyl9fX0sMjczOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIwNyksYT1uKDI4OCksbz1uKDExMikscj1uKDUyKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG8odCk/aShyKHQpKTphKHQpfX0sMjg6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiJvYmplY3QiPT1pKHQpfX0sMjg2OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDgxKSxhPW4oMTU0KSxvPW4oMTU2KSxyPW4oODYpLHM9bigyOTIpLGM9bigxNTUpLGw9bigyNyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbiYmIm51bWJlciIhPXR5cGVvZiBuJiZyKHQsZSxuKSYmKGU9bj12b2lkIDApLChuPXZvaWQgMD09PW4/NDI5NDk2NzI5NTpuPj4+MCk/KHQ9bCh0KSkmJigic3RyaW5nIj09dHlwZW9mIGV8fG51bGwhPWUmJiFzKGUpKSYmIShlPWkoZSkpJiZvKHQpP2EoYyh0KSwwLG4pOnQuc3BsaXQoZSxuKTpbXX19LDI4NzpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsIT10JiZlIGluIE9iamVjdCh0KX19LDI4ODpmdW5jdGlvbih0LGUsbil7dmFyIGk9big5MSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gaShlLHQpfX19LDI5MjpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzNDUpLGE9big3NCksbz1uKDk4KSxyPW8mJm8uaXNSZWdFeHAscz1yP2Eocik6aTt0LmV4cG9ydHM9c30sMzpmdW5jdGlvbih0LGUpe3ZhciBuPUFycmF5LmlzQXJyYXk7dC5leHBvcnRzPW59LDMwOTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big4NSksYT1uKDM4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgbj0tMSxvPWEodCk/QXJyYXkodC5sZW5ndGgpOltdO3JldHVybiBpKHQsKGZ1bmN0aW9uKHQsaSxhKXtvWysrbl09ZSh0LGksYSl9KSksb319LDMxOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDQ1KSxhPW4oMzIpLG89bigzMDkpLHI9bigzKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4ocih0KT9pOm8pKHQsYShlLDMpKX19LDMyOmZ1bmN0aW9uKHQsZSxuKXt2YXIgYT1uKDI3MSksbz1uKDI3Mikscj1uKDQ5KSxzPW4oMyksYz1uKDI3Myk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6bnVsbD09dD9yOiJvYmplY3QiPT1pKHQpP3ModCk/byh0WzBdLHRbMV0pOmEodCk6Yyh0KX19LDMyOTpmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxlLmdldFRlbXBsYXRlRWRpdG9ySWZyYW1lPWUuZ2V0TW90aW9uRWZmZWN0VHJhY2tlckNvbnRhaW5lcj1lLmdldEVkaXRvcldyaXRpbmdGbG93U2VsZWN0b3I9ZS5nZXRFZGl0b3JJbnNlcnRlck1lbnVTZWxlY3Rvcj1lLmdldENvbnRlbnRBcmVhU2VsZWN0b3JMaXN0PWUuZ2V0Q29udGVudEFyZWFTZWxlY3RvckJ5VmVyc2lvbj1lLmdldENvbnRlbnRBcmVhU2VsZWN0b3I9dm9pZCAwO3ZhciBpPWMobigzMSkpLGE9YyhuKDYyKSksbz1jKG4oMykpLHI9YyhuKDcpKSxzPWMobigxKSk7ZnVuY3Rpb24gYyh0KXtyZXR1cm4gdCYmdC5fX2VzTW9kdWxlP3Q6e2RlZmF1bHQ6dH19dmFyIGw9ZnVuY3Rpb24oKXtyZXR1cm57NS41OiJpbnRlcmZhY2UtaW50ZXJmYWNlLXNrZWxldG9uX19jb250ZW50Iiw1LjQ6ImJsb2NrLWVkaXRvci1lZGl0b3Itc2tlbGV0b25fX2NvbnRlbnQiLDUuMzoiZWRpdC1wb3N0LWxheW91dF9fY29udGVudCIsNS4yOiJlZGl0LXBvc3QtbGF5b3V0X19jb250ZW50IiwiZ3V0ZW5iZXJnLTcuMSI6ImVkaXQtcG9zdC1lZGl0b3ItcmVnaW9uc19fY29udGVudCJ9fTtlLmdldENvbnRlbnRBcmVhU2VsZWN0b3JMaXN0PWw7dmFyIF89ZnVuY3Rpb24gdChlLG4pe2lmKCgwLG8uZGVmYXVsdCkoZSkpcmV0dXJuKDAsaS5kZWZhdWx0KShlLChmdW5jdGlvbihlKXtyZXR1cm4gdChlLG4pfSkpO3ZhciBhPW4/Ii4iOiIiLHI9KDAscy5kZWZhdWx0KSh7NS41OiJpbnRlcmZhY2UtaW50ZXJmYWNlLXNrZWxldG9uX19jb250ZW50Iiw1LjQ6ImJsb2NrLWVkaXRvci1lZGl0b3Itc2tlbGV0b25fX2NvbnRlbnQiLDUuMzoiZWRpdC1wb3N0LWxheW91dF9fY29udGVudCIsNS4yOiJlZGl0LXBvc3QtbGF5b3V0X19jb250ZW50IiwiZ3V0ZW5iZXJnLTcuMSI6ImVkaXQtcG9zdC1lZGl0b3ItcmVnaW9uc19fY29udGVudCJ9LGUsIiIpO3JldHVybiIiLmNvbmNhdChhKS5jb25jYXQocil9O2UuZ2V0Q29udGVudEFyZWFTZWxlY3RvckJ5VmVyc2lvbj1fO3ZhciBkPWZ1bmN0aW9uKHQpe3ZhciBlPSEoYXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0pfHxhcmd1bWVudHNbMV0sbj1lPyIuIjoiIjtyZXR1cm4gbisoKDAsYS5kZWZhdWx0KSh0LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXygiNS41IiwhMCkpKT8oMCxhLmRlZmF1bHQpKHQuZG9jdW1lbnQucXVlcnlTZWxlY3RvcihfKCI1LjQiLCEwKSkpPygwLGEuZGVmYXVsdCkodC5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKF8oImd1dGVuYmVyZy03LjEiLCEwKSkpP18oIjUuMiIpOl8oImd1dGVuYmVyZy03LjEiKTpfKCI1LjQiKTpfKCI1LjUiKSl9O2UuZ2V0Q29udGVudEFyZWFTZWxlY3Rvcj1kLGUuZ2V0RWRpdG9yV3JpdGluZ0Zsb3dTZWxlY3Rvcj1mdW5jdGlvbigpe2FyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdfHx3aW5kb3c7dmFyIHQ9IShhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSl8fGFyZ3VtZW50c1sxXSxlPXQ/Ii4iOiIiLG49ImJsb2NrLWVkaXRvci13cml0aW5nLWZsb3ciO3JldHVybiBlK259LGUuZ2V0RWRpdG9ySW5zZXJ0ZXJNZW51U2VsZWN0b3I9ZnVuY3Rpb24odCl7dmFyIGU9IShhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSl8fGFyZ3VtZW50c1sxXSxuPWQodCwhMSksaT1lPyIuIjoiIjtyZXR1cm4gaSsoKDAsci5kZWZhdWx0KShfKFsiNS40IiwiNS41Il0pLG4pPyJibG9jay1lZGl0b3ItaW5zZXJ0ZXJfX21lbnUiOiJlZGl0b3ItaW5zZXJ0ZXJfX21lbnUiKX0sZS5nZXRNb3Rpb25FZmZlY3RUcmFja2VyQ29udGFpbmVyPWZ1bmN0aW9uKHQpe3ZhciBlPSEoYXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0pfHxhcmd1bWVudHNbMV0sbj1kKHQsITEpLGk9ZT8iLiI6IiI7cmV0dXJuIGkrKCJibG9jay1lZGl0b3ItZWRpdG9yLXNrZWxldG9uX19jb250ZW50Ij09PW4/ImJsb2NrLWVkaXRvci13cml0aW5nLWZsb3ciOm4pfSxlLmdldFRlbXBsYXRlRWRpdG9ySWZyYW1lPWZ1bmN0aW9uKHQpe3JldHVybiB0LmpRdWVyeSgnaWZyYW1lW25hbWU9ImVkaXRvci1jYW52YXMiXScpLmNvbnRlbnRzKCl9fSwzMzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxNTApO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1pKHQpLG49ZSUxO3JldHVybiBlPT1lP24/ZS1uOmU6MH19LDM0MzpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdC5zcGxpdCgiIil9fSwzNDQ6ZnVuY3Rpb24odCxlKXt2YXIgbj0iW1xcdTAzMDAtXFx1MDM2ZlxcdWZlMjAtXFx1ZmUyZlxcdTIwZDAtXFx1MjBmZl0iLGk9IlxcdWQ4M2NbXFx1ZGZmYi1cXHVkZmZmXSIsYT0iW15cXHVkODAwLVxcdWRmZmZdIixvPSIoPzpcXHVkODNjW1xcdWRkZTYtXFx1ZGRmZl0pezJ9IixyPSJbXFx1ZDgwMC1cXHVkYmZmXVtcXHVkYzAwLVxcdWRmZmZdIixzPSIoPzoiK24rInwiK2krIik/IixjPSJbXFx1ZmUwZVxcdWZlMGZdPyIsbD1jK3MrIig/OlxcdTIwMGQoPzoiK1thLG8scl0uam9pbigifCIpKyIpIitjK3MrIikqIixfPSIoPzoiK1thK24rIj8iLG4sbyxyLCJbXFx1ZDgwMC1cXHVkZmZmXSJdLmpvaW4oInwiKSsiKSIsZD1SZWdFeHAoaSsiKD89IitpKyIpfCIrXytsLCJnIik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0Lm1hdGNoKGQpfHxbXX19LDM0NTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzNiksYT1uKDI4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGEodCkmJiJbb2JqZWN0IFJlZ0V4cF0iPT1pKHQpfX0sMzU6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzYpLGE9bigxMik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKCFhKHQpKXJldHVybiExO3ZhciBlPWkodCk7cmV0dXJuIltvYmplY3QgRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgQXN5bmNGdW5jdGlvbl0iPT1lfHwiW29iamVjdCBQcm94eV0iPT1lfX0sMzY6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTgpLGE9bigyMTkpLG89bigyMjApLHI9aT9pLnRvU3RyaW5nVGFnOnZvaWQgMDt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwPT09dD8iW29iamVjdCBVbmRlZmluZWRdIjoiW29iamVjdCBOdWxsXSI6ciYmciBpbiBPYmplY3QodCk/YSh0KTpvKHQpfX0sMzc6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzYpLGE9bigzKSxvPW4oMjgpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHR8fCFhKHQpJiZvKHQpJiYiW29iamVjdCBTdHJpbmddIj09aSh0KX19LDM4OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM1KSxhPW4oOTcpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmYSh0Lmxlbmd0aCkmJiFpKHQpfX0sMzg3OmZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUudG9wX3dpbmRvdz1lLmlzX2lmcmFtZT12b2lkIDA7dmFyIGk9d2luZG93O2UudG9wX3dpbmRvdz1pO3ZhciBhLG89ITE7ZS5pc19pZnJhbWU9bzt0cnl7YT0hIXdpbmRvdy50b3AuZG9jdW1lbnQmJndpbmRvdy50b3B9Y2F0Y2godCl7YT0hMX1hJiZhLl9fQ3lwcmVzc19fP3dpbmRvdy5wYXJlbnQ9PT1hPyhlLnRvcF93aW5kb3c9aT13aW5kb3csZS5pc19pZnJhbWU9bz0hMSk6KGUudG9wX3dpbmRvdz1pPXdpbmRvdy5wYXJlbnQsZS5pc19pZnJhbWU9bz0hMCk6YSYmKGUudG9wX3dpbmRvdz1pPWEsZS5pc19pZnJhbWU9bz1hIT09d2luZG93LnNlbGYpfSw0MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMDEpLGE9bigyMjIpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciBuPWEodCxlKTtyZXR1cm4gaShuKT9uOnZvaWQgMH19LDQ1OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPS0xLGk9bnVsbD09dD8wOnQubGVuZ3RoLGE9QXJyYXkoaSk7KytuPGk7KWFbbl09ZSh0W25dLG4sdCk7cmV0dXJuIGF9fSw0NTI6ZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5zZXRJbXBvcnRhbnRJbmxpbmVWYWx1ZT1lLnJlZ2lzdGVyRnJvbnRlbmRDb21wb25lbnQ9ZS5tYXliZUluY3JlYXNlRW1pdHRlck1heExpc3RlbmVycz1lLm1heWJlRGVjcmVhc2VFbWl0dGVyTWF4TGlzdGVuZXJzPWUuaXNWQj1lLmlzVEI9ZS5pc0xCUD1lLmlzTEJCPWUuaXNGRT1lLmlzRXh0cmFUaGVtZT1lLmlzRGl2aVRoZW1lPWUuaXNCdWlsZGVyVHlwZT1lLmlzQnVpbGRlcj1lLmlzQmxvY2tFZGl0b3I9ZS5pc0JGQj1lLmlzPWUuZ2V0T2Zmc2V0cz1lLmdldEJ1aWxkZXJVdGlsc1BhcmFtcz1lLmdldEJ1aWxkZXJUeXBlPXZvaWQgMDt2YXIgYT1jKG4oNykpLG89YyhuKDEpKSxyPWMobig4KSkscz1uKDM4Nyk7ZnVuY3Rpb24gYyh0KXtyZXR1cm4gdCYmdC5fX2VzTW9kdWxlP3Q6e2RlZmF1bHQ6dH19ZnVuY3Rpb24gbCh0KXtyZXR1cm4obD0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09aShTeW1ib2wuaXRlcmF0b3IpP2Z1bmN0aW9uKHQpe3JldHVybiBpKHQpfTpmdW5jdGlvbih0KXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmdC5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmdCE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6aSh0KX0pKHQpfXZhciBfPWZ1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5ldF9idWlsZGVyX3V0aWxzX3BhcmFtcz93aW5kb3cuZXRfYnVpbGRlcl91dGlsc19wYXJhbXM6cy50b3Bfd2luZG93LmV0X2J1aWxkZXJfdXRpbHNfcGFyYW1zP3MudG9wX3dpbmRvdy5ldF9idWlsZGVyX3V0aWxzX3BhcmFtczp7fX07ZS5nZXRCdWlsZGVyVXRpbHNQYXJhbXM9Xzt2YXIgZD1mdW5jdGlvbigpe3JldHVybigwLG8uZGVmYXVsdCkoXygpLCJidWlsZGVyVHlwZSIsIiIpfTtlLmdldEJ1aWxkZXJUeXBlPWQ7dmFyIHA9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PT1kKCl9O2UuaXNCdWlsZGVyVHlwZT1wO3ZhciB1PWZ1bmN0aW9uKHQpe3JldHVybigwLG8uZGVmYXVsdCkoXygpLCJjb25kaXRpb24uIi5jb25jYXQodCkpfTtlLmlzPXU7dmFyIGY9cCgiZmUiKTtlLmlzRkU9Zjt2YXIgaD1wKCJ2YiIpO2UuaXNWQj1oO3ZhciBiPXAoImJmYiIpO2UuaXNCRkI9Yjt2YXIgdj1wKCJ0YiIpO2UuaXNUQj12O3ZhciBtPXAoImxiYiIpO2UuaXNMQkI9bTt2YXIgZz11KCJkaXZpVGhlbWUiKTtlLmlzRGl2aVRoZW1lPWc7dmFyIHc9dSgiZXh0cmFUaGVtZSIpO2UuaXNFeHRyYVRoZW1lPXc7dmFyIHk9cCgibGJwIik7ZS5pc0xCUD15O3ZhciB4PTA8KDAsci5kZWZhdWx0KShzLnRvcF93aW5kb3cuZG9jdW1lbnQpLmZpbmQoIi5lZGl0LXBvc3QtbGF5b3V0X19jb250ZW50IikubGVuZ3RoO2UuaXNCbG9ja0VkaXRvcj14O3ZhciBDPSgwLGEuZGVmYXVsdCkoWyJ2YiIsImJmYiIsInRiIiwibGJiIl0sZCgpKTtlLmlzQnVpbGRlcj1DLGUuZ2V0T2Zmc2V0cz1mdW5jdGlvbih0KXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCxuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTowLGk9QyYmdC5oYXNDbGFzcygiZXRfcGJfc3RpY2t5IikmJiJmaXhlZCIhPT10LmNzcygicG9zaXRpb24iKSxhPXQuZGF0YSgiZXQtb2Zmc2V0cyIpLHI9dC5kYXRhKCJldC1vZmZzZXRzLWRldmljZSIpLHM9KDAsby5kZWZhdWx0KSh3aW5kb3cuRVRfRkUsInN0b3Jlcy53aW5kb3cuYnJlYWtwb2ludCIsIiIpO2lmKGkmJnZvaWQgMCE9PWEmJnI9PT1zKXJldHVybiBhO3ZhciBjPXQub2Zmc2V0KCk7aWYodm9pZCAwPT09YylyZXR1cm57fTt2YXIgbD1DP3QuY2hpbGRyZW4oJy5ldC1mYi1jdXN0b20tY3NzLW91dHB1dFtkYXRhLXN0aWNreS1oYXMtdHJhbnNmb3JtPSJvbiJdJykubGVuZ3RoPjA6dC5oYXNDbGFzcygiZXRfcGJfc3RpY2t5LS1oYXMtdHJhbnNmb3JtIiksXz12b2lkIDA9PT1jLnRvcD8wOmMudG9wLGQ9dm9pZCAwPT09Yy5sZWZ0PzA6Yy5sZWZ0O2lmKGwpe3ZhciBwPXQucGFyZW50KCkub2Zmc2V0KCksdT17dG9wOmMudG9wLXAudG9wLGxlZnQ6Yy5sZWZ0LXAubGVmdH0sZj17dG9wOnRbMF0ub2Zmc2V0VG9wLGxlZnQ6dFswXS5vZmZzZXRMZWZ0fTtfKz1mLnRvcC11LnRvcCxjLnRvcD1fLGQrPWYubGVmdC11LmxlZnQsYy5sZWZ0PWR9cmV0dXJuIGMucmlnaHQ9ZCtlLGMuYm90dG9tPV8rbix0LmRhdGEoImV0LW9mZnNldHMiLGMpLCIiIT09cyYmdC5kYXRhKCJldC1vZmZzZXRzLWRldmljZSIsYyksY30sZS5tYXliZUluY3JlYXNlRW1pdHRlck1heExpc3RlbmVycz1mdW5jdGlvbih0LGUpe3ZhciBuPXQubGlzdGVuZXJDb3VudChlKSxpPXQuZ2V0TWF4TGlzdGVuZXJzKCk7bj09PWkmJnQuc2V0TWF4TGlzdGVuZXJzKGkrMSl9LGUubWF5YmVEZWNyZWFzZUVtaXR0ZXJNYXhMaXN0ZW5lcnM9ZnVuY3Rpb24odCxlKXt2YXIgbj10Lmxpc3RlbmVyQ291bnQoZSk7dC5nZXRNYXhMaXN0ZW5lcnMoKT4xMCYmdC5zZXRNYXhMaXN0ZW5lcnMobil9LGUucmVnaXN0ZXJGcm9udGVuZENvbXBvbmVudD1mdW5jdGlvbih0LGUsbil7dm9pZCAwPT09d2luZG93LkVUX0ZFJiYod2luZG93LkVUX0ZFPXt9KSwib2JqZWN0IiE9PWwod2luZG93LkVUX0ZFW3RdKSYmKHdpbmRvdy5FVF9GRVt0XT17fSksd2luZG93LkVUX0ZFW3RdW2VdPW59LGUuc2V0SW1wb3J0YW50SW5saW5lVmFsdWU9ZnVuY3Rpb24odCxlLG4pe3QuY3NzKGUsIiIpO3ZhciBpPXQuYXR0cigic3R5bGUiKTt0LmF0dHIoInN0eWxlIiwiIi5jb25jYXQoaSwiICIpLmNvbmNhdChlLCI6ICIpLmNvbmNhdChuLCIgIWltcG9ydGFudDsiKSl9fSw0OTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdH19LDUyOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDU0KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7aWYoInN0cmluZyI9PXR5cGVvZiB0fHxpKHQpKXJldHVybiB0O3ZhciBlPXQrIiI7cmV0dXJuIjAiPT1lJiYxL3Q9PS0xLzA/Ii0wIjplfX0sNTQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBhPW4oMzYpLG89bigyOCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJzeW1ib2wiPT1pKHQpfHxvKHQpJiYiW29iamVjdCBTeW1ib2xdIj09YSh0KX19LDU1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIxMSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gbnVsbD09dD90OmkodCxlLG4pfX0sNTg6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMjMpLlN5bWJvbDt0LmV4cG9ydHM9aX0sNTk6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD09PWV8fHQhPXQmJmUhPWV9fSw2MjpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09PXR9fSw2NjpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMTgpLGE9big5Niksbz1uKDIyMykscj1uKDE2OSkscz1uKDE3MCksYz1uKDM2KSxsPW4oMTM4KSxfPSJbb2JqZWN0IE1hcF0iLGQ9IltvYmplY3QgUHJvbWlzZV0iLHA9IltvYmplY3QgU2V0XSIsdT0iW29iamVjdCBXZWFrTWFwXSIsZj0iW29iamVjdCBEYXRhVmlld10iLGg9bChpKSxiPWwoYSksdj1sKG8pLG09bChyKSxnPWwocyksdz1jOyhpJiZ3KG5ldyBpKG5ldyBBcnJheUJ1ZmZlcigxKSkpIT1mfHxhJiZ3KG5ldyBhKSE9X3x8byYmdyhvLnJlc29sdmUoKSkhPWR8fHImJncobmV3IHIpIT1wfHxzJiZ3KG5ldyBzKSE9dSkmJih3PWZ1bmN0aW9uKHQpe3ZhciBlPWModCksbj0iW29iamVjdCBPYmplY3RdIj09ZT90LmNvbnN0cnVjdG9yOnZvaWQgMCxpPW4/bChuKToiIjtpZihpKXN3aXRjaChpKXtjYXNlIGg6cmV0dXJuIGY7Y2FzZSBiOnJldHVybiBfO2Nhc2UgdjpyZXR1cm4gZDtjYXNlIG06cmV0dXJuIHA7Y2FzZSBnOnJldHVybiB1fXJldHVybiBlfSksdC5leHBvcnRzPXd9LDY3OmZ1bmN0aW9uKHQsZSl7dmFyIG49L14oPzowfFsxLTldXGQqKSQvO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciBhPWkodCk7cmV0dXJuISEoZT1udWxsPT1lPzkwMDcxOTkyNTQ3NDA5OTE6ZSkmJigibnVtYmVyIj09YXx8InN5bWJvbCIhPWEmJm4udGVzdCh0KSkmJnQ+LTEmJnQlMT09MCYmdDxlfX0sNzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMDEpLGE9bigzOCksbz1uKDM3KSxyPW4oMzMpLHM9big4NCksYz1NYXRoLm1heDt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLG4sbCl7dD1hKHQpP3Q6cyh0KSxuPW4mJiFsP3Iobik6MDt2YXIgXz10Lmxlbmd0aDtyZXR1cm4gbjwwJiYobj1jKF8rbiwwKSksbyh0KT9uPD1fJiZ0LmluZGV4T2YoZSxuKT4tMTohIV8mJmkodCxlLG4pPi0xfX0sNzI6ZnVuY3Rpb24odCxlLG4peyhmdW5jdGlvbih0KXt2YXIgYT1uKDIzKSxvPW4oMTgzKSxyPWUmJiFlLm5vZGVUeXBlJiZlLHM9ciYmIm9iamVjdCI9PWkodCkmJnQmJiF0Lm5vZGVUeXBlJiZ0LGM9cyYmcy5leHBvcnRzPT09cj9hLkJ1ZmZlcjp2b2lkIDAsbD0oYz9jLmlzQnVmZmVyOnZvaWQgMCl8fG87dC5leHBvcnRzPWx9KS5jYWxsKHRoaXMsbig5NSkodCkpfSw3MzpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigzKSxhPW4oMTEyKSxvPW4oMTcxKSxyPW4oMjcpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiBpKHQpP3Q6YSh0LGUpP1t0XTpvKHIodCkpfX0sNzQ6ZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB0KGUpfX19LDc1OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDQzKShPYmplY3QsImNyZWF0ZSIpO3QuZXhwb3J0cz1pfSw3NjpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMzQpLGE9bigyMzUpLG89bigyMzYpLHI9bigyMzcpLHM9bigyMzgpO2Z1bmN0aW9uIGModCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBpPXRbZV07dGhpcy5zZXQoaVswXSxpWzFdKX19Yy5wcm90b3R5cGUuY2xlYXI9aSxjLnByb3RvdHlwZS5kZWxldGU9YSxjLnByb3RvdHlwZS5nZXQ9byxjLnByb3RvdHlwZS5oYXM9cixjLnByb3RvdHlwZS5zZXQ9cyx0LmV4cG9ydHM9Y30sNzc6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTkpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj10Lmxlbmd0aDtuLS07KWlmKGkodFtuXVswXSxlKSlyZXR1cm4gbjtyZXR1cm4tMX19LDc4OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDI0MCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dC5fX2RhdGFfXztyZXR1cm4gaShlKT9uWyJzdHJpbmciPT10eXBlb2YgZT8ic3RyaW5nIjoiaGFzaCJdOm4ubWFwfX0sODpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz13aW5kb3cualF1ZXJ5fSw4MDpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyMjQpLGE9bigyOCksbz1PYmplY3QucHJvdG90eXBlLHI9by5oYXNPd25Qcm9wZXJ0eSxzPW8ucHJvcGVydHlJc0VudW1lcmFibGUsYz1pKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSk/aTpmdW5jdGlvbih0KXtyZXR1cm4gYSh0KSYmci5jYWxsKHQsImNhbGxlZSIpJiYhcy5jYWxsKHQsImNhbGxlZSIpfTt0LmV4cG9ydHM9Y30sODE6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTgpLGE9big0NSksbz1uKDMpLHI9big1NCkscz1pP2kucHJvdG90eXBlOnZvaWQgMCxjPXM/cy50b1N0cmluZzp2b2lkIDA7dC5leHBvcnRzPWZ1bmN0aW9uIHQoZSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiBlO2lmKG8oZSkpcmV0dXJuIGEoZSx0KSsiIjtpZihyKGUpKXJldHVybiBjP2MuY2FsbChlKToiIjt2YXIgbj1lKyIiO3JldHVybiIwIj09biYmMS9lPT0tMS8wPyItMCI6bn19LDgyOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIyNSksYT1uKDc0KSxvPW4oOTgpLHI9byYmby5pc1R5cGVkQXJyYXkscz1yP2Eocik6aTt0LmV4cG9ydHM9c30sODQ6ZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMTg3KSxhPW4oMTQpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD9bXTppKHQsYSh0KSl9fSw4NTpmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMjQpLGE9bigyMDQpKGkpO3QuZXhwb3J0cz1hfSw4NjpmdW5jdGlvbih0LGUsbil7dmFyIGE9big1OSksbz1uKDM4KSxyPW4oNjcpLHM9bigxMik7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtpZighcyhuKSlyZXR1cm4hMTt2YXIgYz1pKGUpO3JldHVybiEhKCJudW1iZXIiPT1jP28obikmJnIoZSxuLmxlbmd0aCk6InN0cmluZyI9PWMmJmUgaW4gbikmJmEobltlXSx0KX19LDg4OmZ1bmN0aW9uKHQsZSl7dmFyIG47bj1mdW5jdGlvbigpe3JldHVybiB0aGlzfSgpO3RyeXtuPW58fG5ldyBGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfWNhdGNoKHQpeyJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3c/InVuZGVmaW5lZCI6aSh3aW5kb3cpKSYmKG49d2luZG93KX10LmV4cG9ydHM9bn0sODk6ZnVuY3Rpb24odCxlKXt2YXIgbj1PYmplY3QucHJvdG90eXBlO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10JiZ0LmNvbnN0cnVjdG9yO3JldHVybiB0PT09KCJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlLnByb3RvdHlwZXx8bil9fSw5OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDk5KSxhPW4oODUpLG89bigxMTEpLHI9bigzKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4ocih0KT9pOmEpKHQsbyhlKSl9fSw5MTpmdW5jdGlvbih0LGUsbil7dmFyIGk9big3MyksYT1uKDUyKTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49MCxvPShlPWkoZSx0KSkubGVuZ3RoO251bGwhPXQmJm48bzspdD10W2EoZVtuKytdKV07cmV0dXJuIG4mJm49PW8/dDp2b2lkIDB9fSw5NTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdC53ZWJwYWNrUG9seWZpbGx8fCh0LmRlcHJlY2F0ZT1mdW5jdGlvbigpe30sdC5wYXRocz1bXSx0LmNoaWxkcmVufHwodC5jaGlsZHJlbj1bXSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsImxvYWRlZCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHQubH19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiaWQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0Lml9fSksdC53ZWJwYWNrUG9seWZpbGw9MSksdH19LDk2OmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDQzKShuKDIzKSwiTWFwIik7dC5leHBvcnRzPWl9LDk3OmZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdCYmdD4tMSYmdCUxPT0wJiZ0PD05MDA3MTk5MjU0NzQwOTkxfX0sOTg6ZnVuY3Rpb24odCxlLG4peyhmdW5jdGlvbih0KXt2YXIgYT1uKDEzNyksbz1lJiYhZS5ub2RlVHlwZSYmZSxyPW8mJiJvYmplY3QiPT1pKHQpJiZ0JiYhdC5ub2RlVHlwZSYmdCxzPXImJnIuZXhwb3J0cz09PW8mJmEucHJvY2VzcyxjPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiByJiZyLnJlcXVpcmUmJnIucmVxdWlyZSgidXRpbCIpLnR5cGVzfHxzJiZzLmJpbmRpbmcmJnMuYmluZGluZygidXRpbCIpfWNhdGNoKHQpe319KCk7dC5leHBvcnRzPWN9KS5jYWxsKHRoaXMsbig5NSkodCkpfSw5OTpmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0tMSxpPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK248aSYmITEhPT1lKHRbbl0sbix0KTspO3JldHVybiB0fX19KSl9LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDI1KSxhPW4oMjYpLG89bigyNyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gZT09ZT9vKHQsZSxuKTppKHQsYSxuKX19LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxuLGkpe2Zvcih2YXIgYT10Lmxlbmd0aCxvPW4rKGk/MTotMSk7aT9vLS06KytvPGE7KWlmKGUodFtvXSxvLHQpKXJldHVybiBvO3JldHVybi0xfX0sZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQhPXR9fSxmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUsbil7Zm9yKHZhciBpPW4tMSxhPXQubGVuZ3RoOysraTxhOylpZih0W2ldPT09ZSlyZXR1cm4gaTtyZXR1cm4tMX19LGZ1bmN0aW9uKHQsZSl7dmFyIG47bj1mdW5jdGlvbigpe3JldHVybiB0aGlzfSgpO3RyeXtuPW58fG5ldyBGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfWNhdGNoKHQpeyJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYobj13aW5kb3cpfXQuZXhwb3J0cz1ufSxmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMCksYT1PYmplY3QucHJvdG90eXBlLG89YS5oYXNPd25Qcm9wZXJ0eSxyPWEudG9TdHJpbmcscz1pP2kudG9TdHJpbmdUYWc6dm9pZCAwO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1vLmNhbGwodCxzKSxuPXRbc107dHJ5e3Rbc109dm9pZCAwO3ZhciBpPSEwfWNhdGNoKHQpe312YXIgYT1yLmNhbGwodCk7cmV0dXJuIGkmJihlP3Rbc109bjpkZWxldGUgdFtzXSksYX19LGZ1bmN0aW9uKHQsZSl7dmFyIG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZzt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG4uY2FsbCh0KX19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEpLGE9bigyKSxvPW4oMyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdHx8IWEodCkmJm8odCkmJiJbb2JqZWN0IFN0cmluZ10iPT1pKHQpfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzMpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT1pKHQpLG49ZSUxO3JldHVybiBlPT1lP24/ZS1uOmU6MH19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM0KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQ/KHQ9aSh0KSk9PT0xLzB8fHQ9PT0tMS8wPzE3OTc2OTMxMzQ4NjIzMTU3ZTI5MioodDwwPy0xOjEpOnQ9PXQ/dDowOjA9PT10P3Q6MH19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM1KSxhPW4oMTEpLG89big1KSxyPS9eWy0rXTB4WzAtOWEtZl0rJC9pLHM9L14wYlswMV0rJC9pLGM9L14wb1swLTddKyQvaSxsPXBhcnNlSW50O3QuZXhwb3J0cz1mdW5jdGlvbih0KXtpZigibnVtYmVyIj09dHlwZW9mIHQpcmV0dXJuIHQ7aWYobyh0KSlyZXR1cm4gTmFOO2lmKGEodCkpe3ZhciBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0LnZhbHVlT2Y/dC52YWx1ZU9mKCk6dDt0PWEoZSk/ZSsiIjplfWlmKCJzdHJpbmciIT10eXBlb2YgdClyZXR1cm4gMD09PXQ/dDordDt0PWkodCk7dmFyIG49cy50ZXN0KHQpO3JldHVybiBufHxjLnRlc3QodCk/bCh0LnNsaWNlKDIpLG4/Mjo4KTpyLnRlc3QodCk/TmFOOit0fX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oMzYpLGE9L15ccysvO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gdD90LnNsaWNlKDAsaSh0KSsxKS5yZXBsYWNlKGEsIiIpOnR9fSxmdW5jdGlvbih0LGUpe3ZhciBuPS9ccy87dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aDtlLS0mJm4udGVzdCh0LmNoYXJBdChlKSk7KTtyZXR1cm4gZX19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDM4KSxhPW4oMzkpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD9bXTppKHQsYSh0KSl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxNik7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGkoZSwoZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV19KSl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MCksYT1uKDUxKSxvPW4oMTIpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbyh0KT9pKHQpOmEodCl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big0MSksYT1uKDQyKSxvPW4oMikscj1uKDQ0KSxzPW4oNDYpLGM9big0NyksbD1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciBuPW8odCksXz0hbiYmYSh0KSxkPSFuJiYhXyYmcih0KSxwPSFuJiYhXyYmIWQmJmModCksdT1ufHxffHxkfHxwLGY9dT9pKHQubGVuZ3RoLFN0cmluZyk6W10saD1mLmxlbmd0aDtmb3IodmFyIGIgaW4gdCkhZSYmIWwuY2FsbCh0LGIpfHx1JiYoImxlbmd0aCI9PWJ8fGQmJigib2Zmc2V0Ij09Ynx8InBhcmVudCI9PWIpfHxwJiYoImJ1ZmZlciI9PWJ8fCJieXRlTGVuZ3RoIj09Ynx8ImJ5dGVPZmZzZXQiPT1iKXx8cyhiLGgpKXx8Zi5wdXNoKGIpO3JldHVybiBmfX0sZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49LTEsaT1BcnJheSh0KTsrK248dDspaVtuXT1lKG4pO3JldHVybiBpfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNDMpLGE9bigzKSxvPU9iamVjdC5wcm90b3R5cGUscj1vLmhhc093blByb3BlcnR5LHM9by5wcm9wZXJ0eUlzRW51bWVyYWJsZSxjPWkoZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzfSgpKT9pOmZ1bmN0aW9uKHQpe3JldHVybiBhKHQpJiZyLmNhbGwodCwiY2FsbGVlIikmJiFzLmNhbGwodCwiY2FsbGVlIil9O3QuZXhwb3J0cz1jfSxmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxKSxhPW4oMyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBhKHQpJiYiW29iamVjdCBBcmd1bWVudHNdIj09aSh0KX19LGZ1bmN0aW9uKHQsZSxuKXsoZnVuY3Rpb24odCl7dmFyIGk9big0KSxhPW4oNDUpLG89ZSYmIWUubm9kZVR5cGUmJmUscj1vJiYib2JqZWN0Ij09dHlwZW9mIHQmJnQmJiF0Lm5vZGVUeXBlJiZ0LHM9ciYmci5leHBvcnRzPT09bz9pLkJ1ZmZlcjp2b2lkIDAsYz0ocz9zLmlzQnVmZmVyOnZvaWQgMCl8fGE7dC5leHBvcnRzPWN9KS5jYWxsKHRoaXMsbigxNykodCkpfSxmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbigpe3JldHVybiExfX0sZnVuY3Rpb24odCxlKXt2YXIgbj0vXig/OjB8WzEtOV1cZCopJC87dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIGk9dHlwZW9mIHQ7cmV0dXJuISEoZT1udWxsPT1lPzkwMDcxOTkyNTQ3NDA5OTE6ZSkmJigibnVtYmVyIj09aXx8InN5bWJvbCIhPWkmJm4udGVzdCh0KSkmJnQ+LTEmJnQlMT09MCYmdDxlfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNDgpLGE9big0OSksbz1uKDUwKSxyPW8mJm8uaXNUeXBlZEFycmF5LHM9cj9hKHIpOmk7dC5leHBvcnRzPXN9LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEpLGE9bigxNSksbz1uKDMpLHI9e307clsiW29iamVjdCBGbG9hdDMyQXJyYXldIl09clsiW29iamVjdCBGbG9hdDY0QXJyYXldIl09clsiW29iamVjdCBJbnQ4QXJyYXldIl09clsiW29iamVjdCBJbnQxNkFycmF5XSJdPXJbIltvYmplY3QgSW50MzJBcnJheV0iXT1yWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09clsiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iXT1yWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPXJbIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsclsiW29iamVjdCBBcmd1bWVudHNdIl09clsiW29iamVjdCBBcnJheV0iXT1yWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPXJbIltvYmplY3QgQm9vbGVhbl0iXT1yWyJbb2JqZWN0IERhdGFWaWV3XSJdPXJbIltvYmplY3QgRGF0ZV0iXT1yWyJbb2JqZWN0IEVycm9yXSJdPXJbIltvYmplY3QgRnVuY3Rpb25dIl09clsiW29iamVjdCBNYXBdIl09clsiW29iamVjdCBOdW1iZXJdIl09clsiW29iamVjdCBPYmplY3RdIl09clsiW29iamVjdCBSZWdFeHBdIl09clsiW29iamVjdCBTZXRdIl09clsiW29iamVjdCBTdHJpbmddIl09clsiW29iamVjdCBXZWFrTWFwXSJdPSExLHQuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gbyh0KSYmYSh0Lmxlbmd0aCkmJiEhcltpKHQpXX19LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gdChlKX19fSxmdW5jdGlvbih0LGUsbil7KGZ1bmN0aW9uKHQpe3ZhciBpPW4oMTQpLGE9ZSYmIWUubm9kZVR5cGUmJmUsbz1hJiYib2JqZWN0Ij09dHlwZW9mIHQmJnQmJiF0Lm5vZGVUeXBlJiZ0LHI9byYmby5leHBvcnRzPT09YSYmaS5wcm9jZXNzLHM9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9byYmby5yZXF1aXJlJiZvLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8ciYmci5iaW5kaW5nJiZyLmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpO3QuZXhwb3J0cz1zfSkuY2FsbCh0aGlzLG4oMTcpKHQpKX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTIpLGE9big1Myksbz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3QuZXhwb3J0cz1mdW5jdGlvbih0KXtpZighaSh0KSlyZXR1cm4gYSh0KTt2YXIgZT1bXTtmb3IodmFyIG4gaW4gT2JqZWN0KHQpKW8uY2FsbCh0LG4pJiYiY29uc3RydWN0b3IiIT1uJiZlLnB1c2gobik7cmV0dXJuIGV9fSxmdW5jdGlvbih0LGUpe3ZhciBuPU9iamVjdC5wcm90b3R5cGU7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUucHJvdG90eXBlfHxuKX19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDU0KShPYmplY3Qua2V5cyxPYmplY3QpO3QuZXhwb3J0cz1pfSxmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gdChlKG4pKX19fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big1NiksYT1uKDg5KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtmb3IodmFyIG49MCxvPShlPWkoZSx0KSkubGVuZ3RoO251bGwhPXQmJm48bzspdD10W2EoZVtuKytdKV07cmV0dXJuIG4mJm49PW8/dDp2b2lkIDB9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9bigyKSxhPW4oNTcpLG89big1OCkscj1uKDg3KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gaSh0KT90OmEodCxlKT9bdF06byhyKHQpKX19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDIpLGE9big1KSxvPS9cLnxcWyg/OlteW1xdXSp8KFsiJ10pKD86KD8hXDEpW15cXF18XFwuKSo/XDEpXF0vLHI9L15cdyokLzt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtpZihpKHQpKXJldHVybiExO3ZhciBuPXR5cGVvZiB0O3JldHVybiEoIm51bWJlciIhPW4mJiJzeW1ib2wiIT1uJiYiYm9vbGVhbiIhPW4mJm51bGwhPXQmJiFhKHQpKXx8KHIudGVzdCh0KXx8IW8udGVzdCh0KXx8bnVsbCE9ZSYmdCBpbiBPYmplY3QoZSkpfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNTkpLGE9L1teLltcXV0rfFxbKD86KC0/XGQrKD86XC5cZCspPyl8KFsiJ10pKCg/Oig/IVwyKVteXFxdfFxcLikqPylcMilcXXwoPz0oPzpcLnxcW1xdKSg/OlwufFxbXF18JCkpL2csbz0vXFwoXFwpPy9nLHI9aSgoZnVuY3Rpb24odCl7dmFyIGU9W107cmV0dXJuIDQ2PT09dC5jaGFyQ29kZUF0KDApJiZlLnB1c2goIiIpLHQucmVwbGFjZShhLChmdW5jdGlvbih0LG4saSxhKXtlLnB1c2goaT9hLnJlcGxhY2UobywiJDEiKTpufHx0KX0pKSxlfSkpO3QuZXhwb3J0cz1yfSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big2MCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPWkodCwoZnVuY3Rpb24odCl7cmV0dXJuIDUwMD09PW4uc2l6ZSYmbi5jbGVhcigpLHR9KSksbj1lLmNhY2hlO3JldHVybiBlfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNjEpO2Z1bmN0aW9uIGEodCxlKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdHx8bnVsbCE9ZSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO3ZhciBuPWZ1bmN0aW9uKCl7dmFyIGk9YXJndW1lbnRzLGE9ZT9lLmFwcGx5KHRoaXMsaSk6aVswXSxvPW4uY2FjaGU7aWYoby5oYXMoYSkpcmV0dXJuIG8uZ2V0KGEpO3ZhciByPXQuYXBwbHkodGhpcyxpKTtyZXR1cm4gbi5jYWNoZT1vLnNldChhLHIpfHxvLHJ9O3JldHVybiBuLmNhY2hlPW5ldyhhLkNhY2hlfHxpKSxufWEuQ2FjaGU9aSx0LmV4cG9ydHM9YX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNjIpLGE9big4Miksbz1uKDg0KSxyPW4oODUpLHM9big4Nik7ZnVuY3Rpb24gYyh0KXt2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrZTxuOyl7dmFyIGk9dFtlXTt0aGlzLnNldChpWzBdLGlbMV0pfX1jLnByb3RvdHlwZS5jbGVhcj1pLGMucHJvdG90eXBlLmRlbGV0ZT1hLGMucHJvdG90eXBlLmdldD1vLGMucHJvdG90eXBlLmhhcz1yLGMucHJvdG90eXBlLnNldD1zLHQuZXhwb3J0cz1jfSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big2MyksYT1uKDc0KSxvPW4oODEpO3QuZXhwb3J0cz1mdW5jdGlvbigpe3RoaXMuc2l6ZT0wLHRoaXMuX19kYXRhX189e2hhc2g6bmV3IGksbWFwOm5ldyhvfHxhKSxzdHJpbmc6bmV3IGl9fX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNjQpLGE9big3MCksbz1uKDcxKSxyPW4oNzIpLHM9big3Myk7ZnVuY3Rpb24gYyh0KXt2YXIgZT0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDtmb3IodGhpcy5jbGVhcigpOysrZTxuOyl7dmFyIGk9dFtlXTt0aGlzLnNldChpWzBdLGlbMV0pfX1jLnByb3RvdHlwZS5jbGVhcj1pLGMucHJvdG90eXBlLmRlbGV0ZT1hLGMucHJvdG90eXBlLmdldD1vLGMucHJvdG90eXBlLmhhcz1yLGMucHJvdG90eXBlLnNldD1zLHQuZXhwb3J0cz1jfSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big2KTt0LmV4cG9ydHM9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPWk/aShudWxsKTp7fSx0aGlzLnNpemU9MH19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDEzKSxhPW4oNjYpLG89bigxMSkscj1uKDY4KSxzPS9eXFtvYmplY3QgLis/Q29uc3RydWN0b3JcXSQvLGM9RnVuY3Rpb24ucHJvdG90eXBlLGw9T2JqZWN0LnByb3RvdHlwZSxfPWMudG9TdHJpbmcsZD1sLmhhc093blByb3BlcnR5LHA9UmVnRXhwKCJeIitfLmNhbGwoZCkucmVwbGFjZSgvW1xcXiQuKis/KClbXF17fXxdL2csIlxcJCYiKS5yZXBsYWNlKC9oYXNPd25Qcm9wZXJ0eXwoZnVuY3Rpb24pLio/KD89XFxcKCl8IGZvciAuKz8oPz1cXFxdKS9nLCIkMS4qPyIpKyIkIik7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiEoIW8odCl8fGEodCkpJiYoaSh0KT9wOnMpLnRlc3Qocih0KSl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGksYT1uKDY3KSxvPShpPS9bXi5dKyQvLmV4ZWMoYSYmYS5rZXlzJiZhLmtleXMuSUVfUFJPVE98fCIiKSk/IlN5bWJvbChzcmMpXzEuIitpOiIiO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4hIW8mJm8gaW4gdH19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDQpWyJfX2NvcmUtanNfc2hhcmVkX18iXTt0LmV4cG9ydHM9aX0sZnVuY3Rpb24odCxlKXt2YXIgbj1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKG51bGwhPXQpe3RyeXtyZXR1cm4gbi5jYWxsKHQpfWNhdGNoKHQpe310cnl7cmV0dXJuIHQrIiJ9Y2F0Y2godCl7fX1yZXR1cm4iIn19LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbZV19fSxmdW5jdGlvbih0LGUpe3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDYpLGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXztpZihpKXt2YXIgbj1lW3RdO3JldHVybiJfX2xvZGFzaF9oYXNoX3VuZGVmaW5lZF9fIj09PW4/dm9pZCAwOm59cmV0dXJuIGEuY2FsbChlLHQpP2VbdF06dm9pZCAwfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNiksYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9fZGF0YV9fO3JldHVybiBpP3ZvaWQgMCE9PWVbdF06YS5jYWxsKGUsdCl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big2KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fO3JldHVybiB0aGlzLnNpemUrPXRoaXMuaGFzKHQpPzA6MSxuW3RdPWkmJnZvaWQgMD09PWU/Il9fbG9kYXNoX2hhc2hfdW5kZWZpbmVkX18iOmUsdGhpc319LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDc1KSxhPW4oNzYpLG89big3OCkscj1uKDc5KSxzPW4oODApO2Z1bmN0aW9uIGModCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBpPXRbZV07dGhpcy5zZXQoaVswXSxpWzFdKX19Yy5wcm90b3R5cGUuY2xlYXI9aSxjLnByb3RvdHlwZS5kZWxldGU9YSxjLnByb3RvdHlwZS5nZXQ9byxjLnByb3RvdHlwZS5oYXM9cixjLnByb3RvdHlwZS5zZXQ9cyx0LmV4cG9ydHM9Y30sZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPVtdLHRoaXMuc2l6ZT0wfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNyksYT1BcnJheS5wcm90b3R5cGUuc3BsaWNlO3QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9fZGF0YV9fLG49aShlLHQpO3JldHVybiEobjwwKSYmKG49PWUubGVuZ3RoLTE/ZS5wb3AoKTphLmNhbGwoZSxuLDEpLC0tdGhpcy5zaXplLCEwKX19LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ9PT1lfHx0IT10JiZlIT1lfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18sbj1pKGUsdCk7cmV0dXJuIG48MD92b2lkIDA6ZVtuXVsxXX19LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDcpO3QuZXhwb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4gaSh0aGlzLl9fZGF0YV9fLHQpPi0xfX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oNyk7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcy5fX2RhdGFfXyxhPWkobix0KTtyZXR1cm4gYTwwPygrK3RoaXMuc2l6ZSxuLnB1c2goW3QsZV0pKTpuW2FdWzFdPWUsdGhpc319LGZ1bmN0aW9uKHQsZSxuKXt2YXIgaT1uKDE4KShuKDQpLCJNYXAiKTt0LmV4cG9ydHM9aX0sZnVuY3Rpb24odCxlLG4pe3ZhciBpPW4oOCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPWkodGhpcyx0KS5kZWxldGUodCk7cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX19LGZ1bmN0aW9uKHQsZSl7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiJzdHJpbmciPT1lfHwibnVtYmVyIj09ZXx8InN5bWJvbCI9PWV8fCJib29sZWFuIj09ZT8iX19wcm90b19fIiE9PXQ6bnVsbD09PXR9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGkodGhpcyx0KS5nZXQodCl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIGkodGhpcyx0KS5oYXModCl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big4KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgbj1pKHRoaXMsdCksYT1uLnNpemU7cmV0dXJuIG4uc2V0KHQsZSksdGhpcy5zaXplKz1uLnNpemU9PWE/MDoxLHRoaXN9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big4OCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsPT10PyIiOmkodCl9fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9bigxMCksYT1uKDE2KSxvPW4oMikscj1uKDUpLHM9aT9pLnByb3RvdHlwZTp2b2lkIDAsYz1zP3MudG9TdHJpbmc6dm9pZCAwO3QuZXhwb3J0cz1mdW5jdGlvbiB0KGUpe2lmKCJzdHJpbmciPT10eXBlb2YgZSlyZXR1cm4gZTtpZihvKGUpKXJldHVybiBhKGUsdCkrIiI7aWYocihlKSlyZXR1cm4gYz9jLmNhbGwoZSk6IiI7dmFyIG49ZSsiIjtyZXR1cm4iMCI9PW4mJjEvZT09LTEvMD8iLTAiOm59fSxmdW5jdGlvbih0LGUsbil7dmFyIGk9big1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7aWYoInN0cmluZyI9PXR5cGVvZiB0fHxpKHQpKXJldHVybiB0O3ZhciBlPXQrIiI7cmV0dXJuIjAiPT1lJiYxL3Q9PS0xLzA/Ii0wIjplfX0sLCwsLCxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO24ucihlKTtuKDIxKSxuKDIyKSxuKDIzKTt2YXIgaT1uKDE5KSxhPW4ubihpKSxvPW4oOSkscj1uLm4obykscz1uKDIwKSxjPW4ubihzKSxsPW4oMCk7dmFyIF89ZnVuY3Rpb24oKXtyZXR1cm4gd2luZG93LmV0X2J1aWxkZXJfdXRpbHNfcGFyYW1zP3dpbmRvdy5ldF9idWlsZGVyX3V0aWxzX3BhcmFtczpsLmEuZXRfYnVpbGRlcl91dGlsc19wYXJhbXM/bC5hLmV0X2J1aWxkZXJfdXRpbHNfcGFyYW1zOnt9fSxkPWZ1bmN0aW9uKCl7cmV0dXJuIHIoKShfKCksImJ1aWxkZXJUeXBlIiwiIil9LHA9ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PT1kKCl9LHU9ZnVuY3Rpb24odCl7cmV0dXJuIHIoKShfKCksImNvbmRpdGlvbi4iLmNvbmNhdCh0KSl9LGY9KHAoImZlIikscCgidmIiKSxwKCJiZmIiKSxwKCJ0YiIpLHAoImxiYiIpLHUoImRpdmlUaGVtZSIpLHUoImV4dHJhVGhlbWUiKSxwKCJsYnAiKSxjKCkobC5hLmRvY3VtZW50KS5maW5kKCIuZWRpdC1wb3N0LWxheW91dF9fY29udGVudCIpLmxlbmd0aCxhKCkoWyJ2YiIsImJmYiIsInRiIiwibGJiIl0sZCgpKSk7IWZ1bmN0aW9uKHQpe3dpbmRvdy5ldF9jYWxjdWxhdGluZ19zY3JvbGxfcG9zaXRpb249ITEsd2luZG93LmV0X3NpZGVfbmF2X2xpbmtzX2luaXRpYWxpemVkPSExO3ZhciBlPWY/RVRfQnVpbGRlci5GcmFtZXMudG9wOndpbmRvdyxuPXt9O2Z1bmN0aW9uIGkoKXtyZXR1cm4gbi5ldF9nZXRfZmlyc3Rfc2VjdGlvbj9uLmV0X2dldF9maXJzdF9zZWN0aW9uOm4uZXRfZ2V0X2ZpcnN0X3NlY3Rpb249dCgiLmV0LWw6bm90KC5ldC1sLS1mb290ZXIpIC5ldF9wYl9zZWN0aW9uOnZpc2libGUiKS5maXJzdCgpfXZhciBhPSJvbnRvdWNoc3RhcnQiaW4gd2luZG93fHxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMsbz10KHdpbmRvdykscj10KCIjbWFpbi1jb250ZW50IC5jb250YWluZXI6Zmlyc3QtY2hpbGQiKTtmdW5jdGlvbiBzKHQsZSxuKXt2YXIgaSxhLG8scixzLGM9RGF0ZS5ub3d8fChuZXcgRGF0ZSkuZ2V0VGltZSgpLGw9ZnVuY3Rpb24gbCgpe3ZhciBfPWMtcjtfPGUmJl8+PTA/aT1zZXRUaW1lb3V0KGwsZS1fKTooaT1udWxsLG58fChzPXQuYXBwbHkobyxhKSxpfHwobz1hPW51bGwpKSl9O3JldHVybiBmdW5jdGlvbigpe289dGhpcyxhPWFyZ3VtZW50cyxyPWM7dmFyIF89biYmIWk7cmV0dXJuIGl8fChpPXNldFRpbWVvdXQobCxlKSksXyYmKHM9dC5hcHBseShvLGEpLG89YT1udWxsKSxzfX1mdW5jdGlvbiBjKGUpe3ZhciBuLGk9dCgiYm9keSIpLGE9dCgiI2xvZ28iKSxvPXBhcnNlSW50KGEuYXR0cigiZGF0YS1hY3R1YWwtd2lkdGgiKSkscj1wYXJzZUludChhLmF0dHIoImRhdGEtYWN0dWFsLWhlaWdodCIpKSxzPXBhcnNlSW50KGEuYXR0cigiZGF0YS1oZWlnaHQtcGVyY2VudGFnZSIpKSxjPXQoIiNldC10b3AtbmF2aWdhdGlvbiIpLGw9cGFyc2VJbnQoYy5hdHRyKCJkYXRhLWhlaWdodCIpKSxfPXBhcnNlSW50KGMuYXR0cigiZGF0YS1maXhlZC1oZWlnaHQiKSksZD10KCIjbWFpbi1oZWFkZXIiKSxwPWkuaGFzQ2xhc3MoImV0X2hlYWRlcl9zdHlsZV9zcGxpdCIpLHU9ZC5oYXNDbGFzcygiZXQtZml4ZWQtaGVhZGVyIiksZj1pLmhhc0NsYXNzKCJldF9oaWRlX3ByaW1hcnlfbG9nbyIpLGg9aS5oYXNDbGFzcygiZXRfaGlkZV9maXhlZF9sb2dvIiksYj11P2w6XztlPXZvaWQgMCE9PWUmJmUscCYmIXdpbmRvdy5ldF9pc192ZXJ0aWNhbF9uYXYmJihlJiYoYj1sKSxuPW8qKChiKihzLzEwMCkrMjIpL3IpLGYmJih1fHxlKSYmKG49MCksIWh8fHV8fGV8fChuPTApLHQoIi5ldF9oZWFkZXJfc3R5bGVfc3BsaXQgLmNlbnRlcmVkLWlubGluZS1sb2dvLXdyYXAiKS5jc3Moe3dpZHRoOm4rInB4In0pKX1mdW5jdGlvbiBsKGUpe3ZhciBuPXQoIi5ldF9oZWFkZXJfc3R5bGVfc2xpZGUgLmV0X3NsaWRlX2luX21lbnVfY29udGFpbmVyIiksaT10KCIuZXRfaGVhZGVyX3N0eWxlX3NsaWRlICNwYWdlLWNvbnRhaW5lciwgLmV0X2hlYWRlcl9zdHlsZV9zbGlkZS5ldF9maXhlZF9uYXYgI21haW4taGVhZGVyIiksYT10KCIuZXRfaGVhZGVyX3N0eWxlX3NsaWRlICNtYWluLWhlYWRlciIpLG89bi5oYXNDbGFzcygiZXRfcGJfc2xpZGVfbWVudV9vcGVuZWQiKSxyPXZvaWQgMCE9PWU/ZToiYXV0byIscz10KCJib2R5IikuaGFzQ2xhc3MoImV0X2JveGVkX2xheW91dCIpLGM9cz9wYXJzZUZsb2F0KHQoIiNwYWdlLWNvbnRhaW5lciIpLmNzcygibWFyZ2luLWxlZnQiKSk6MCxsPW4uaW5uZXJXaWR0aCgpLF89dCgiYm9keSIpLmhhc0NsYXNzKCJydGwiKTsiYXV0byIhPT1yJiYobyYmIm9wZW4iPT09cnx8IW8mJiJjbG9zZSI9PT1yKXx8KG8/KF8/KG4uY3NzKHtsZWZ0OiItIitsKyJweCJ9KSxpLmNzcyh7cmlnaHQ6IjBweCJ9KSk6KG4uY3NzKHtyaWdodDoiLSIrbCsicHgifSksaS5jc3Moe2xlZnQ6IjBweCJ9KSkscyYmZXRfaXNfZml4ZWRfbmF2JiYoXz9hLmNzcyh7cmlnaHQ6YysicHgifSk6YS5jc3Moe2xlZnQ6YysicHgifSkpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7bi5jc3Moe2Rpc3BsYXk6Im5vbmUifSl9KSw3MDApKToobi5jc3Moe2Rpc3BsYXk6ImJsb2NrIn0pLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7aWYoXz8obi5jc3Moe2xlZnQ6IjBweCJ9KSxpLmNzcyh7cmlnaHQ6Ii0iKyhsLWMpKyJweCJ9KSk6KG4uY3NzKHtyaWdodDoiMHB4In0pLGkuY3NzKHtsZWZ0OiItIisobC1jKSsicHgifSkpLHMmJmV0X2lzX2ZpeGVkX25hdil7dmFyIHQ9MD5sLTIqYz9NYXRoLmFicyhsLTIqYyk6Ii0iKyhsLTIqYyk7dDxsJiYoXz9hLmNzcyh7cmlnaHQ6dCsicHgifSk6YS5jc3Moe2xlZnQ6dCsicHgifSkpfX0pLDUwKSksdCgiYm9keSIpLnRvZ2dsZUNsYXNzKCJldF9wYl9zbGlkZV9tZW51X2FjdGl2ZSIpLG4udG9nZ2xlQ2xhc3MoImV0X3BiX3NsaWRlX21lbnVfb3BlbmVkIikpfWZ1bmN0aW9uIF8oKXtpZihldF9pc19maXhlZF9uYXYmJiEoOTgwPj1wYXJzZUludChvLndpZHRoKCkpKSl7dmFyIGU9cGFyc2VJbnQodCgiI21haW4taGVhZGVyIikubGVuZ3RoP3QoIiNtYWluLWhlYWRlciIpLmlubmVySGVpZ2h0KCk6MCk7dCgiaHRtbCwgYm9keSIpLmFuaW1hdGUoe3Njcm9sbFRvcDp0KCJmb3JtLmNoZWNrb3V0Iikub2Zmc2V0KCkudG9wLTEwMC1lfSwxZTMpfX1mdW5jdGlvbiBkKCl7dmFyIGU9dCgiLmV0X2hlYWRlcl9zdHlsZV9mdWxsc2NyZWVuIC5ldF9zbGlkZV9pbl9tZW51X2NvbnRhaW5lciIpLG49ZS5maW5kKCIuZXRfc2xpZGVfbWVudV90b3AiKS5pbm5lckhlaWdodCgpO2UudG9nZ2xlQ2xhc3MoImV0X3BiX2Z1bGxzY3JlZW5fbWVudV9vcGVuZWQiKSx0KCJib2R5IikudG9nZ2xlQ2xhc3MoImV0X3BiX2Z1bGxzY3JlZW5fbWVudV9hY3RpdmUiKSxwKCksZS5oYXNDbGFzcygiZXRfcGJfZnVsbHNjcmVlbl9tZW51X29wZW5lZCIpPyhlLmFkZENsYXNzKCJldF9wYl9mdWxsc2NyZWVuX21lbnVfYW5pbWF0ZWQiKSxlLmNzcyh7InBhZGRpbmctdG9wIjpuKzIwKyJweCJ9KSk6c2V0VGltZW91dCgoZnVuY3Rpb24oKXtlLnJlbW92ZUNsYXNzKCJldF9wYl9mdWxsc2NyZWVuX21lbnVfYW5pbWF0ZWQiKX0pLDFlMyl9ZnVuY3Rpb24gcCh0KXtpZihmKXt2YXIgbj1qUXVlcnkoIi5ldF9oZWFkZXJfc3R5bGVfZnVsbHNjcmVlbiAuZXRfc2xpZGVfaW5fbWVudV9jb250YWluZXIuZXRfcGJfZnVsbHNjcmVlbl9tZW51X29wZW5lZCIpO2lmKG4ubGVuZ3RoPjApe3ZhciBpPWpRdWVyeShlKS5oZWlnaHQoKTtpLT1wYXJzZUludChuLmNzcygicGFkZGluZy10b3AiKSwxMCksbi5jbG9zZXN0KCIuYWRtaW4tYmFyIikubGVuZ3RoPjAmJihpLT0zMiksbi5maW5kKCIuZXRfcGJfZnVsbHNjcmVlbl9uYXZfY29udGFpbmVyIikuY3NzKCJtYXgtaGVpZ2h0IixpKyJweCIpfX19aWYoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKGZ1bmN0aW9uKCl7dmFyIG4sYT10KCJib2R5IikuaGFzQ2xhc3MoImV0X2ZpeGVkX25hdiIpfHx0KCJib2R5IikuaGFzQ2xhc3MoImV0X3ZlcnRpY2FsX2ZpeGVkIiksbD10KCJib2R5IikuaGFzQ2xhc3MoImV0X3ZlcnRpY2FsX2ZpeGVkIiksXz10KCJib2R5IikuaGFzQ2xhc3MoInJ0bCIpLHU9dCgiYm9keSIpLmhhc0NsYXNzKCJldF9oaWRlX25hdiIpLGg9dCgiYm9keSIpLmhhc0NsYXNzKCJldF9oZWFkZXJfc3R5bGVfbGVmdCIpLGI9dCgiI3RvcC1oZWFkZXIiKSx2PXQoIiNtYWluLWhlYWRlciIpLG09dCgiI3BhZ2UtY29udGFpbmVyIiksZz10KCJib2R5LnNpbmdsZSIpLHc9ITEseT0wLHg9dCgiI2V0LXRvcC1uYXZpZ2F0aW9uIiksQz10KCIjbG9nbyIpLGs9dCgidWwubmF2LCB1bC5tZW51Iiksaj10KCIuY29udGFpbmVyIiksVD10KCJib2R5IikuaGFzQ2xhc3MoImV0X2lzX2N1c3RvbWl6ZV9wcmV2aWV3IiksTz10KCIjZXQtc2Vjb25kYXJ5LW1lbnUgYS5ldC1jYXJ0LWluZm8iKTtpZih0KCIud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSIpLmxlbmd0aD4wKXt2YXIgUz10KCIud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IilbMF0sUD1TLm91dGVySFRNTC5yZXBsYWNlKCJkYXRhLWNvbHVtbnMiLCJkYXRhLWNvbHMiKTtTLm91dGVySFRNTD1QfWZ1bmN0aW9uIHooKXt2YXIgZT10KCIjbWFpbi1oZWFkZXIgPiAuY29udGFpbmVyID4gLmxvZ29fY29udGFpbmVyIiksbj10KCIuY2VudGVyZWQtaW5saW5lLWxvZ28td3JhcCA+IC5sb2dvX2NvbnRhaW5lciIpLGk9eC5jaGlsZHJlbigibmF2IikuY2hpbGRyZW4oInVsIikuY2hpbGRyZW4oImxpIikubGVuZ3RoLGE9TWF0aC5yb3VuZChpLzIpLTEscj13aW5kb3cuaW5uZXJXaWR0aHx8by53aWR0aCgpO3I+OTgwJiZlLmxlbmd0aCYmdCgiYm9keSIpLmhhc0NsYXNzKCJldF9oZWFkZXJfc3R5bGVfc3BsaXQiKSYmKHQoJzxsaSBjbGFzcz0iY2VudGVyZWQtaW5saW5lLWxvZ28td3JhcCI+PC9saT4nKS5pbnNlcnRBZnRlcih4LmZpbmQoIm5hdiA+IHVsID5saTpudGgoIithKyIpIikpLGUuYXBwZW5kVG8oeC5maW5kKCIuY2VudGVyZWQtaW5saW5lLWxvZ28td3JhcCIpKSkscjw9OTgwJiZuLmxlbmd0aCYmKG4ucHJlcGVuZFRvKCIjbWFpbi1oZWFkZXIgPiAuY29udGFpbmVyIiksdCgiI21haW4taGVhZGVyIC5jZW50ZXJlZC1pbmxpbmUtbG9nby13cmFwIikucmVtb3ZlKCkpfWZ1bmN0aW9uIEkoKXt2YXIgZT10KCJib2R5Iik7aWYoZS5oYXNDbGFzcygiZXRfYm94ZWRfbGF5b3V0IikmJmUuaGFzQ2xhc3MoImV0X3ZlcnRpY2FsX2ZpeGVkIikmJmUuaGFzQ2xhc3MoImV0X3ZlcnRpY2FsX3JpZ2h0Iikpe3ZhciBuPXBhcnNlRmxvYXQodCgiI3BhZ2UtY29udGFpbmVyIikuY3NzKCJtYXJnaW4tcmlnaHQiKSk7bj0wPihuKz1wYXJzZUZsb2F0KHQoIiNldC1tYWluLWFyZWEiKS5jc3MoIm1hcmdpbi1yaWdodCIpKS0yMjUpPzA6bix0KCIjbWFpbi1oZWFkZXIiKS5hZGRDbGFzcygiZXRfdmVydGljYWxfbWVudV9zZXQiKS5jc3Moe2xlZnQ6IiIscmlnaHQ6bisicHgifSl9fU8ubGVuZ3RoPjAmJnQoIi5zaG9wX3RhYmxlLmNhcnQiKS5sZW5ndGg+MCYmdChkb2N1bWVudC5ib2R5KS5vbigidXBkYXRlZF93Y19kaXYiLChmdW5jdGlvbigpe3ZhciBlLG49MDt0KCIuc2hvcF90YWJsZS5jYXJ0IikuZmluZCgiLnByb2R1Y3QtcXVhbnRpdHkgaW5wdXQiKS5lYWNoKChmdW5jdGlvbigpe24rPXBhcnNlSW50KHQodGhpcykudmFsKCkpfSkpLGU9KGU9MT09PW4/RElWSS5pdGVtX2NvdW50OkRJVkkuaXRlbXNfY291bnQpLnJlcGxhY2UoIiVkIixuKSxPLmZpbmQoInNwYW4iKS50ZXh0KGUpfSkpLHdpbmRvdy5ldF9wYl9pbml0X25hdl9tZW51KGspLCh0KCIuZXRfaGVhZGVyX3N0eWxlX3NwbGl0IikubGVuZ3RoJiYhd2luZG93LmV0X2lzX3ZlcnRpY2FsX25hdnx8VCkmJih6KCksdCh3aW5kb3cpLm9uKCJyZXNpemUiLChmdW5jdGlvbigpe3ooKX0pKSksd2luZG93LmV0X2lzX3ZlcnRpY2FsX25hdiYmKHQoIiNtYWluLWhlYWRlciIpLmhlaWdodCgpPHQoIiNldC10b3AtbmF2aWdhdGlvbiIpLmhlaWdodCgpJiZ0KCIjbWFpbi1oZWFkZXIiKS5oZWlnaHQodCgiI2V0LXRvcC1uYXZpZ2F0aW9uIikuaGVpZ2h0KCkrdCgiI2xvZ28iKS5oZWlnaHQoKSsxMDApLEkoKSksd2luZG93LmV0X2NhbGN1bGF0ZV9oZWFkZXJfdmFsdWVzPWZ1bmN0aW9uKCl7dmFyIGU9Yi5sZW5ndGgmJmIuaXMoIjp2aXNpYmxlIik/cGFyc2VJbnQoYi5pbm5lckhlaWdodCgpKTowLGk9dCgiI3dwYWRtaW5iYXIiKS5sZW5ndGg/cGFyc2VJbnQodCgiI3dwYWRtaW5iYXIiKS5pbm5lckhlaWdodCgpKTowLGE9dCgiLmV0X2hlYWRlcl9zdHlsZV9zbGlkZSAuZXRfc2xpZGVfaW5fbWVudV9jb250YWluZXIiKSxvPXQoImJvZHkiKS5oYXNDbGFzcygicnRsIik7aWYoeT1wYXJzZUludCh0KCIjbWFpbi1oZWFkZXIiKS5sZW5ndGg/dCgiI21haW4taGVhZGVyIikuaW5uZXJIZWlnaHQoKTowKStlLG49KHk8PTkwP3ktMjk6eS01NikraSxhLmxlbmd0aCYmIXQoImJvZHkiKS5oYXNDbGFzcygiZXRfcGJfc2xpZGVfbWVudV9hY3RpdmUiKSYmKG8/YS5jc3Moe2xlZnQ6Ii0iK3BhcnNlSW50KGEuaW5uZXJXaWR0aCgpKSsicHgiLGRpc3BsYXk6Im5vbmUifSk6YS5jc3Moe3JpZ2h0OiItIitwYXJzZUludChhLmlubmVyV2lkdGgoKSkrInB4IixkaXNwbGF5OiJub25lIn0pLHQoImJvZHkiKS5oYXNDbGFzcygiZXRfYm94ZWRfbGF5b3V0IikpKWlmKG8pe3ZhciByPW0uY3NzKCJtYXJnaW4tcmlnaHQiKTt2LmNzcyh7cmlnaHQ6cn0pfWVsc2V7cj1tLmNzcygibWFyZ2luLWxlZnQiKTt2LmNzcyh7bGVmdDpyfSl9fTt2YXIgQT10KCIjY29tbWVudGZvcm0iKTtpZihldF9wYl9mb3JtX3BsYWNlaG9sZGVyc19pbml0KEEpLEEub24oInN1Ym1pdCIsKGZ1bmN0aW9uKCl7ZXRfcGJfcmVtb3ZlX3BsYWNlaG9sZGVyX3RleHQoQSl9KSksZXRfZHVwbGljYXRlX21lbnUodCgiI2V0LXRvcC1uYXZpZ2F0aW9uIHVsLm5hdiIpLHQoIiNldC10b3AtbmF2aWdhdGlvbiAubW9iaWxlX25hdiIpLCJtb2JpbGVfbWVudSIsImV0X21vYmlsZV9tZW51IiksZXRfZHVwbGljYXRlX21lbnUoIiIsdCgiLmV0X3BiX2Z1bGxzY3JlZW5fbmF2X2NvbnRhaW5lciIpLCJtb2JpbGVfbWVudV9zbGlkZSIsImV0X21vYmlsZV9tZW51Iiwibm9fY2xpY2tfZXZlbnQiKSx0KCJ1bC5ldF9kaXNhYmxlX3RvcF90aWVyIikubGVuZ3RoKXt2YXIgRT10KCJ1bC5ldF9kaXNhYmxlX3RvcF90aWVyID4gbGkgPiB1bCIpLnByZXYoImEiKTtFLmF0dHIoImhyZWYiLCIjIiksRS5vbigiY2xpY2siLChmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCl9KSk7dmFyIEI9dCgidWwjbW9iaWxlX21lbnUgPiBsaSA+IHVsIikucHJldigiYSIpO0IuYXR0cigiaHJlZiIsIiMiKSxCLm9uKCJjbGljayIsKGZ1bmN0aW9uKHQpe3QucHJldmVudERlZmF1bHQoKX0pKX1pZih0KCIjZXQtc2Vjb25kYXJ5LW5hdiIpLmxlbmd0aCYmdCgiI2V0LXRvcC1uYXZpZ2F0aW9uICNtb2JpbGVfbWVudSIpLmFwcGVuZCh0KCIjZXQtc2Vjb25kYXJ5LW5hdiIpLmNsb25lKCkuaHRtbCgpKSx0KCIuZXRfc2xpZGVfaW5fbWVudV9jb250YWluZXIiKS5sZW5ndGgpe3ZhciBNPXQoIi5ldF9zbGlkZV9pbl9tZW51X2NvbnRhaW5lciIpLmZpbmQoIi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSIpO00ubGVuZ3RoJiZNLmFwcGVuZCgnPHNwYW4gY2xhc3M9ImV0X21vYmlsZV9tZW51X2Fycm93Ij48L3NwYW4+Jyl9ZnVuY3Rpb24gSChuKXtzZXRUaW1lb3V0KChmdW5jdGlvbigpe3ZhciBuPTAsaT10KCJib2R5IiksYT1mP2UualF1ZXJ5KCIjd3BhZG1pbmJhciIpOnQoIiN3cGFkbWluYmFyIiksbz1lLmpRdWVyeSgiaHRtbCIpLHI9dCgiI3RvcC1oZWFkZXIiKSxzPW8uaXMoIi5ldC1mYi1wcmV2aWV3LS16b29tOm5vdCguZXQtZmItcHJldmlldy0tZGVza3RvcCkiKTtpZihzPShzPXN8fG8uaXMoIi5ldC1mYi1wcmV2aWV3LS10YWJsZXQiKSl8fG8uaXMoIi5ldC1mYi1wcmV2aWV3LS1waG9uZSIpLGEubGVuZ3RoJiYhTnVtYmVyLmlzTmFOKGEuaW5uZXJIZWlnaHQoKSkpe3ZhciBjPXBhcnNlRmxvYXQoYS5pbm5lckhlaWdodCgpKTtuKz1mJiZzPzA6Y31yLmxlbmd0aCYmci5pcygiOnZpc2libGUiKSYmKG4rPXIuaW5uZXJIZWlnaHQoKSk7dmFyIGw9aS5oYXNDbGFzcygiZXRfZml4ZWRfbmF2IiksXz0hbCYmaS5oYXNDbGFzcygiZXRfdHJhbnNwYXJlbnRfbmF2IikmJmkuaGFzQ2xhc3MoImV0X3NlY29uZGFyeV9uYXZfZW5hYmxlZCIpO3dpbmRvdy5ldF9pc192ZXJ0aWNhbF9uYXZ8fCFsJiYhX3x8dCgiI21haW4taGVhZGVyIikuY3NzKCJ0b3AiLG4rInB4Iil9KSxuKX1mdW5jdGlvbiBGKCl7dmFyIGU9dCgiYm9keSIpLG49dChkb2N1bWVudCkuaGVpZ2h0KCksaT10KHdpbmRvdykuaGVpZ2h0KCkreSsyMDA7ZS5oYXNDbGFzcygiZXRfdmVydGljYWxfbmF2Iil8fChlLmhhc0NsYXNzKCJldF9oaWRlX25hdiIpfHxlLmhhc0NsYXNzKCJldF9oaWRlX25hdl9kaXNhYmxlZCIpJiZlLmhhc0NsYXNzKCJldF9maXhlZF9uYXYiKSkmJihuPmk/KGUuaGFzQ2xhc3MoImV0X2hpZGVfbmF2X2Rpc2FibGVkIikmJihlLmFkZENsYXNzKCJldF9oaWRlX25hdiIpLGUucmVtb3ZlQ2xhc3MoImV0X2hpZGVfbmF2X2Rpc2FibGVkIikpLHQoIiNtYWluLWhlYWRlciIpLmNzcygidHJhbnNmb3JtIiwidHJhbnNsYXRlWSgtIit5KyJweCkiKSx0KCIjdG9wLWhlYWRlciIpLmNzcygidHJhbnNmb3JtIiwidHJhbnNsYXRlWSgtIit5KyJweCkiKSk6KHQoIiNtYWluLWhlYWRlciIpLmNzcyh7dHJhbnNmb3JtOiJ0cmFuc2xhdGVZKDApIixvcGFjaXR5OiIxIn0pLHQoIiN0b3AtaGVhZGVyIikuY3NzKHt0cmFuc2Zvcm06InRyYW5zbGF0ZVkoMCkiLG9wYWNpdHk6IjEifSksZS5yZW1vdmVDbGFzcygiZXRfaGlkZV9uYXYiKSxlLmFkZENsYXNzKCJldF9oaWRlX25hdl9kaXNhYmxlZCIpKSxXKCkpfWZ1bmN0aW9uIEwodCxlKXt2YXIgbj17fTtuW2VdPXQuY3NzKGUpLHQuYXR0cih7ImRhdGEtZml4LXBhZ2UtY29udGFpbmVyIjoib24ifSkuZGF0YSh7Zml4X3BhZ2VfY29udGFpbmVyX3N0eWxlOm59KX1mdW5jdGlvbiBEKHQsZSl7aWYodm9pZCAwPT09dClyZXR1cm4hMTt2YXIgbj10LnNwbGl0KCJ8Iik7cmV0dXJuIHZvaWQgMCE9PW5bZV0mJm5bZV19ZnVuY3Rpb24gVygpe3ZhciBlLG4scz1wYXJzZUludChvLndpZHRoKCkpLGM9Yi5sZW5ndGgmJmIuaXMoIjp2aXNpYmxlIik/cGFyc2VJbnQoYi5pbm5lckhlaWdodCgpKTowLGw9MCxfPXYuY2xvbmUoKS5hZGRDbGFzcygiZXQtZGlzYWJsZWQtYW5pbWF0aW9ucyBtYWluLWhlYWRlci1jbG9uZSIpLmNzcyh7b3BhY2l0eToiMHB4Iixwb3NpdGlvbjoiZml4ZWQiLHRvcDoiYXV0byIscmlnaHQ6IjBweCIsYm90dG9tOiIwcHgiLGxlZnQ6IjBweCJ9KS5hcHBlbmRUbyh0KCJib2R5IikpO2lmKHQoImJvZHkiKS5oYXNDbGFzcygiZXQtYmZiIil8fHQoJypbZGF0YS1maXgtcGFnZS1jb250YWluZXI9Im9uIl0nKS5lYWNoKChmdW5jdGlvbigpe3ZhciBlPXQodGhpcyksbj1lLmRhdGEoKTtuJiZuLmZpeF9wYWdlX2NvbnRhaW5lcl9zdHlsZSYmZS5jc3Mobi5maXhfcGFnZV9jb250YWluZXJfc3R5bGUpfSkpLHM+OTgwJiYoIXYuYXR0cigiZGF0YS1oZWlnaHQtbG9hZGVkIil8fHQoImJvZHkiKS5pcygiLmV0LWZiIikpKXt2YXIgZD0wO3YuaGFzQ2xhc3MoImV0LWZpeGVkLWhlYWRlciIpPyhfLnJlbW92ZUNsYXNzKCJldC1maXhlZC1oZWFkZXIiKSxkPV8uaGVpZ2h0KCksXy5hZGRDbGFzcygiZXQtZml4ZWQtaGVhZGVyIikpOmQ9di5oZWlnaHQoKSx2LmF0dHIoeyJkYXRhLWhlaWdodC1vbmxvYWQiOnBhcnNlSW50KGQpLCJkYXRhLWhlaWdodC1sb2FkZWQiOiEwfSl9aWYoczw9OTgwPyhlPXBhcnNlSW50KHYubGVuZ3RoP3YuaW5uZXJIZWlnaHQoKTowKStjLSh0KCJib2R5IikuaGFzQ2xhc3MoImV0LWZiIik/MDoxKSx3aW5kb3cuZXRfaXNfdHJhbnNwYXJlbnRfbmF2JiYhaSgpLmxlbmd0aCYmKGUrPTU4KSk6KGU9cGFyc2VJbnQodi5hdHRyKCJkYXRhLWhlaWdodC1vbmxvYWQiKSkrYyx3aW5kb3cuZXRfaXNfdHJhbnNwYXJlbnRfbmF2JiYhd2luZG93LmV0X2lzX3ZlcnRpY2FsX25hdiYmci5sZW5ndGgmJihlKz01OCksbD1fLmhlaWdodCgpKSx1KXt2YXIgcD1wYXJzZUludCh4LmRhdGEoImhlaWdodCIpKS1wYXJzZUludCh4LmRhdGEoImZpeGVkLWhlaWdodCIpKTtsPXBhcnNlSW50KHYuZGF0YSgiaGVpZ2h0LW9ubG9hZCIpKS1wfXYuYXR0cih7ImRhdGEtZml4ZWQtaGVpZ2h0LW9ubG9hZCI6bH0pO3ZhciBmPXQoIi5ldF9maXhlZF9uYXYuZXRfdHJhbnNwYXJlbnRfbmF2LmV0LWRiLmV0X2Z1bGxfd2lkdGhfcGFnZSAjbGVmdC1hcmVhID4gLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciIpO2lmKGYubGVuZ3RoPjAmJiJ5ZXMiIT09Zi5hdHRyKCJkYXRhLXBvc2l0aW9uLXNldCIpKXt2YXIgaD1sOzA9PT1oJiZ2LmF0dHIoImRhdGEtaGVpZ2h0LW9ubG9hZCIpJiYoaD12LmF0dHIoImRhdGEtaGVpZ2h0LW9ubG9hZCIpKSxmLmNzcygibWFyZ2luVG9wIixwYXJzZUZsb2F0KGgpKyJweCIpLGYuYW5pbWF0ZSh7b3BhY2l0eToiMSJ9KSxmLmF0dHIoImRhdGEtcG9zaXRpb24tc2V0IiwieWVzIil9dmFyIHc9dChkb2N1bWVudCkuaGVpZ2h0KCksQz10KHdpbmRvdykuaGVpZ2h0KCkreSsyMDA+dyxrPXBhcnNlSW50KHQod2luZG93KS53aWR0aCgpKT45ODAmJnU7aWYoIXdpbmRvdy5ldF9pc190cmFuc3BhcmVudF9uYXZ8fHdpbmRvdy5ldF9pc192ZXJ0aWNhbF9uYXZ8fGsmJiFDKWEmJm0uY3NzKCJwYWRkaW5nVG9wIixlKyJweCIpO2Vsc2V7dCgiYm9keSIpLmhhc0NsYXNzKCJldC1iZmIiKXx8aSgpLmFkZENsYXNzKCJldF9wYl9zZWN0aW9uX2ZpcnN0Iik7dmFyIGo9aSgpLmxlbmd0aCxUPWomJmcubGVuZ3RoLE89ci5maW5kKCIuZXRfcG9zdF9tZXRhX3dyYXBwZXIiKS5maXJzdCgpLFM9Ty5maW5kKCJoMS5lbnRyeS10aXRsZSIpLFA9dCgiLnNpbmdsZS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQuZXRfZnVsbF93aWR0aF9wYWdlIiksej1QLmxlbmd0aCYmUy5sZW5ndGgsST1QLmxlbmd0aCYmMD09PVMubGVuZ3RoLEE9VCYmdCgiLmV0LWwtLWJvZHkiKS5sZW5ndGgsRT1pKCkuaXMoIi5ldF9wYl9mdWxsd2lkdGhfc2VjdGlvbiIpLEI9czw9OTgwJiZyLmxlbmd0aCxNPXQoImJvZHkiKS5oYXNDbGFzcygic2luZ2xlLXByb2plY3QiKTtpZihBfHwhVHx8SSYmRXx8TSlpZihFKXt2YXIgRj1pKCkuY2hpbGRyZW4oIi5ldF9wYl9tb2R1bGU6dmlzaWJsZSIpLmZpcnN0KCk7aWYoSSYmRSYmcz45ODAmJihlLT01OCksRi5pcygiLmV0X3BiX3NsaWRlciIpKXt2YXIgVz1GLmZpbmQoIi5ldF9wYl9zbGlkZV9pbWFnZSIpLHE9Ri5maW5kKCIuZXRfcGJfc2xpZGUiKSxOPUYuZmluZCgiLmV0X3BiX3NsaWRlIC5ldF9wYl9jb250YWluZXIiKSwkPTAtcGFyc2VJbnQoVy5oZWlnaHQoKSkvMixWPUYuZmluZCgiLmV0LXBiLXNsaWRlci1hcnJvd3MgYSIpLFI9Vi5oZWlnaHQoKTtMKHEsInBhZGRpbmdUb3AiKSxxLmNzcyh7cGFkZGluZ1RvcDplKyJweCJ9KSxOLmNzcyh7Im1pbi1oZWlnaHQiOiIifSksTChXLCJtYXJnaW5Ub3AiKSxXLmNzcyh7bWFyZ2luVG9wOiQrInB4In0pLEwoViwibWFyZ2luVG9wIiksVi5jc3Moe21hcmdpblRvcDplLzItUi8yKyJweCJ9KTt2YXIgUT0wO0YuZmluZCgiLmV0X3BiX3NsaWRlIikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLG49ZS5maW5kKCIuZXRfcGJfY29udGFpbmVyIik7ZS5zaG93KCksbi5jc3MoeyJtaW4taGVpZ2h0IjoiIn0pO3ZhciBpPW4uaW5uZXJIZWlnaHQoKTtRPGkmJihRPWkpLGUuaXMoJzpub3QoIi5ldC1wYi1hY3RpdmUtc2xpZGUiKScpJiZlLmhpZGUoKX0pKSxMKE4sIm1pbi1oZWlnaHQiKSxOLmNzcyh7Im1pbi1oZWlnaHQiOlErInB4In0pfWVsc2UgaWYoRi5pcygiLmV0X3BiX2Z1bGx3aWR0aF9oZWFkZXIiKSl7Ri5yZW1vdmVBdHRyKCJzdHlsZSIpO3ZhciBVPXBhcnNlSW50KEYuY3NzKCJwYWRkaW5nVG9wIikpO0woRiwicGFkZGluZ1RvcCIpLEYuY3NzKHtwYWRkaW5nVG9wOmUrVSsicHgifSl9ZWxzZSBpZihGLmlzKCIuZXRfcGJfZnVsbHdpZHRoX3BvcnRmb2xpbyIpKUwoRiwicGFkZGluZ1RvcCIpLEYuY3NzKHtwYWRkaW5nVG9wOmUrInB4In0pO2Vsc2UgaWYoRi5pcygiLmV0X3BiX21hcF9jb250YWluZXIiKSl7dmFyIFo9Ri5maW5kKCIuZXRfcGJfbWFwIik7Wi5jc3Moe2hlaWdodDoiIn0pLEYuZmluZCgiLmV0X3BiX21hcCIpLmNzcyh7aGVpZ2h0OmUrcGFyc2VJbnQoWi5jc3MoImhlaWdodCIpKSsicHgifSksRi5hZGRDbGFzcygiZXRfYmVuZWF0aF90cmFuc3BhcmVudF9uYXYiKX1lbHNlIGlmKEYuaXMoIi5ldF9wYl9tZW51Iil8fEYuaXMoIi5ldF9wYl9mdWxsd2lkdGhfbWVudSIpKUwoRiwibWFyZ2luVG9wIiksRi5jc3Moe21hcmdpblRvcDplKyJweCJ9KTtlbHNlIGlmKEYuaXMoIi5ldF9wYl9mdWxsd2lkdGhfY29kZSIpKXt2YXIgWT1GO1kuY3NzKHtwYWRkaW5nVG9wOiIifSk7dmFyIEc9cGFyc2VJbnQoWS5jc3MoInBhZGRpbmdUb3AiKSk7TChZLCJwYWRkaW5nVG9wIiksWS5jc3Moe3BhZGRpbmdUb3A6ZStHKyJweCJ9KX1lbHNlIGlmKEYuaXMoIi5ldF9wYl9wb3N0X3RpdGxlIikpe0woRiwicGFkZGluZ1RvcCIpLEYuY3NzKHtwYWRkaW5nVG9wOmUrNTArInB4In0pfWVsc2UgRi5sZW5ndGh8fChuPXBhcnNlRmxvYXQoaSgpLmNzcygicGFkZGluZ1RvcCIpKSxMKGkoKSwicGFkZGluZ1RvcCIpLGkoKS5kYXRhKCJpc19oaWRlX25hdiIpfHxpKCkuY3NzKHtwYWRkaW5nVG9wOm4rZSsicHgifSksY2xlYXJUaW1lb3V0KHdpbmRvdy5ldF9mYWxsYmFja190cmFuc3BhcmVudF9hZGp1c3RtZW50X3RpbWVvdXQpLHdpbmRvdy5ldF9mYWxsYmFja190cmFuc3BhcmVudF9hZGp1c3RtZW50X3RpbWVvdXQ9c2V0VGltZW91dCgoZnVuY3Rpb24oKXt2YXIgYT10KCJib2R5IikuaGFzQ2xhc3MoImV0X2hpZGVfbmF2IikmJiJtYXRyaXgoMSwgMCwgMCwgMSwgMCwgMCkiIT09dCgiI21haW4taGVhZGVyIikuY3NzKCJ0cmFuc2Zvcm0iKTthP2koKS5jc3Moe3BhZGRpbmdUb3A6IiJ9KTppKCkuY3NzKHtwYWRkaW5nVG9wOm4rZSsicHgifSksaSgpLmRhdGEoImlzX2hpZGVfbmF2IixhKX0pLDMwMCkpfWVsc2UgaWYoail7aSgpLmNzcyh7cGFkZGluZ1RvcDoiIn0pO3ZhciBYLEo9RChpKCkuYXR0cigiZGF0YS1wYWRkaW5nIiksMCksSz1EKGkoKS5hdHRyKCJkYXRhLXBhZGRpbmctdGFibGV0IiksMCksdHQ9RChpKCkuYXR0cigiZGF0YS1wYWRkaW5nLXBob25lIiksMCk7Snx8S3x8dHQ/KHM+OTgwJiZKP2koKS5jc3Moe3BhZGRpbmdUb3A6Im51bWJlciI9PXR5cGVvZiBKP0orInB4IjpKfSk6cz43NjcmJks/aSgpLmNzcyh7cGFkZGluZ1RvcDoibnVtYmVyIj09dHlwZW9mIEs/SysicHgiOkt9KTp0dCYmaSgpLmNzcyh7cGFkZGluZ1RvcDoibnVtYmVyIj09dHlwZW9mIHR0P3R0KyJweCI6dHR9KSxYPXBhcnNlSW50KGkoKS5jc3MoInBhZGRpbmdUb3AiKSksaSgpLmNzcyh7cGFkZGluZ1RvcDplK1grInB4In0pKToobj1lK3BhcnNlSW50KGkoKS5jc3MoInBhZGRpbmdUb3AiKSksTChpKCksInBhZGRpbmdUb3AiKSxpKCkuY3NzKHtwYWRkaW5nVG9wOm4rInB4In0pKX1lbHNlIEI/ci5jc3Moe3BhZGRpbmdUb3A6ZSsicHgifSk6dCgiI21haW4tY29udGVudCAuY29udGFpbmVyOmZpcnN0LWNoaWxkIikuY3NzKHtwYWRkaW5nVG9wOmUrInB4In0pO2Vsc2Ugci5jc3Moe3BhZGRpbmdUb3A6IiJ9KSxzPDk4MCYmKGUrPTQwKSxFJiZpKCkuY3NzKHtwYWRkaW5nVG9wOiIwcHgifSksej9PLmNzcyh7cGFkZGluZ1RvcDplKyJweCJ9KTpJPyhMKGkoKSwicGFkZGluZ1RvcCIpLGkoKS5jc3Moe3BhZGRpbmdUb3A6IiJ9KSxpKCkuY3NzKHtwYWRkaW5nVG9wOiJjYWxjKCIrKGUtNTgpKyJweCArICIraSgpLmNzcygicGFkZGluZ1RvcCIpKyIpIn0pKTooTChyLCJwYWRkaW5nVG9wIiksci5jc3Moe3BhZGRpbmdUb3A6ZSsicHgifSkpO3QoIiNldF9maXhfcGFnZV9jb250YWluZXJfcG9zaXRpb24iKS5sZW5ndGh8fHQoIjxzdHlsZSAvPiIse2lkOiJldF9maXhfcGFnZV9jb250YWluZXJfcG9zaXRpb24iLHRleHQ6IiNwYWdlLWNvbnRhaW5lcnsgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDt9In0pLmFwcGVuZFRvKCJoZWFkIik7dmFyIGV0PXQoIi5ldF9wYl9zZWN0aW9uOnZpc2libGUiKS5maXJzdCgpLG50PWV0LmZpbmQoIi5ldF9wYl9yb3c6dmlzaWJsZSIpLmZpcnN0KCksaXQ9ZXQuZmluZCgiLmV0X3BiX21vZHVsZTp2aXNpYmxlIikuZmlyc3QoKSxhdD1ldC5oYXNDbGFzcygiZXRfcGJfc2VjdGlvbl9wYXJhbGxheCIpLG90PW50Lmhhc0NsYXNzKCJldF9wYl9zZWN0aW9uX3BhcmFsbGF4IikscnQ9aXQuaGFzQ2xhc3MoImV0X3BiX3NlY3Rpb25fcGFyYWxsYXgiKTsoYXR8fG90fHxydCkmJnQod2luZG93KS50cmlnZ2VyKCJyZXNpemUuZXRUcnVlUGFyYWxsYXhCYWNrZ3JvdW5kIil9Xy5yZW1vdmUoKSxIKDApLHQoZG9jdW1lbnQpLnRyaWdnZXIoImV0LXBiLWhlYWRlci1oZWlnaHQtY2FsY3VsYXRlZCIpfXdpbmRvdy5ldF9jaGFuZ2VfcHJpbWFyeV9uYXZfcG9zaXRpb249SCx3aW5kb3cuZXRfZml4X3BhZ2VfY29udGFpbmVyX3Bvc2l0aW9uPVcsai5kYXRhKCJwcmV2aW91cy13aWR0aCIscGFyc2VJbnQoai53aWR0aCgpKSk7dmFyIHE9cygoZnVuY3Rpb24oKXtXKCksImZ1bmN0aW9uIj09dHlwZW9mIGV0X2ZpeF9mdWxsc2NyZWVuX3NlY3Rpb24mJmV0X2ZpeF9mdWxsc2NyZWVuX3NlY3Rpb24oKX0pLDIwMCk7ZnVuY3Rpb24gTigpe2lmKGEmJmV0X2NhbGN1bGF0ZV9oZWFkZXJfdmFsdWVzKCksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtXKCl9KSwwKSx3aW5kb3cuZXRfaXNfbWluaWZpZWRfanMmJndpbmRvdy5ldF9pc190cmFuc3BhcmVudF9uYXYmJiF3aW5kb3cuZXRfaXNfdmVydGljYWxfbmF2JiZ0KHdpbmRvdykudHJpZ2dlcigicmVzaXplIiksd2luZG93Lmhhc093blByb3BlcnR5KCJldF9sb2NhdGlvbl9oYXNoIikmJiIiIT09d2luZG93LmV0X2xvY2F0aW9uX2hhc2gmJmZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LmV0X2xvY2F0aW9uX2hhc2gucmVwbGFjZSgvKFx8KS9nLCJcXCQxIik7aWYoMCE9PXQoZSkubGVuZ3RoKXt2YXIgbj10KGUrIiAuZXRfcGJfbWFwX2NvbnRhaW5lciIpLGk9bi5jaGlsZHJlbigiLmV0X3BiX21hcCIpLGE9dChlKTt2b2lkIDAhPT13aW5kb3cuZXRfbG9jYXRpb25faGFzaF9zdHlsZSYmYS5jc3MoImRpc3BsYXkiLHdpbmRvdy5ldF9sb2NhdGlvbl9oYXNoX3N0eWxlKTt2YXIgbz0odm9pZCAwIT09YS5vZmZzZXQoKS50b3A/YS5vZmZzZXQoKS50b3A6MCk+NGUzPzE2MDA6ODAwO24ubGVuZ3RoJiZnb29nbGUubWFwcy5ldmVudC50cmlnZ2VyKGlbMF0sInJlc2l6ZSIpLGEucGFyZW50cygpLmhhc0NsYXNzKCJjb21tZW50bGlzdCIpJiZ0KCIucmV2aWV3c190YWIiKS50cmlnZ2VyKCJjbGljayIpLmFuaW1hdGUoe3Njcm9sbFRvcDphLm9mZnNldCgpLnRvcH0sNzAwKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2V0X3BiX3Ntb290aF9zY3JvbGwoYSwhMSxvLCJzd2luZyIpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZXRfcGJfc21vb3RoX3Njcm9sbChhLCExLDE1MCwibGluZWFyIil9KSxvKzI1KX0pLDcwMCl9fSgpLGgmJiF3aW5kb3cuZXRfaXNfdmVydGljYWxfbmF2KXt2YXIgZT1wYXJzZUludCh0KCIjbG9nbyIpLndpZHRoKCkpO18/eC5jc3MoInBhZGRpbmctcmlnaHQiLGUrMzArInB4Iik6eC5jc3MoInBhZGRpbmctbGVmdCIsZSszMCsicHgiKX1pZih0KCJwLmRlbW9fc3RvcmUiKS5sZW5ndGgmJnQoInAuZGVtb19zdG9yZSIpLmlzKCI6dmlzaWJsZSIpJiYodCgiI2Zvb3Rlci1ib3R0b20iKS5jc3MoIm1hcmdpbi1ib3R0b20iLHQoInAuZGVtb19zdG9yZSIpLmlubmVySGVpZ2h0KCkrInB4IiksdCgiLndvb2NvbW1lcmNlLXN0b3JlLW5vdGljZV9fZGlzbWlzcy1saW5rIikub24oImNsaWNrIiwoZnVuY3Rpb24oKXt0KCIjZm9vdGVyLWJvdHRvbSIpLmNzcygibWFyZ2luLWJvdHRvbSIsIiIpfSkpKSx0LmZuLndheXBvaW50KXt2YXIgcztpZihsJiYocz10KCIjbWFpbi1jb250ZW50IikpLndheXBvaW50KHtoYW5kbGVyOmZ1bmN0aW9uKGUpe2MoKSwiZG93biI9PT1lP3QoIiNtYWluLWhlYWRlciIpLmFkZENsYXNzKCJldC1maXhlZC1oZWFkZXIiKTp0KCIjbWFpbi1oZWFkZXIiKS5yZW1vdmVDbGFzcygiZXQtZml4ZWQtaGVhZGVyIil9fSksYSl7dmFyIGQ9KGkoKS5sZW5ndGg+MD9pKCkub2Zmc2V0KCkudG9wOjApPD0odCgiI3dwYWRtaW5iYXIiKS5sZW5ndGg/dCgiI3dwYWRtaW5iYXIiKS5oZWlnaHQoKTowKTtkJiZ3aW5kb3cuZXRfaXNfdHJhbnNwYXJlbnRfbmF2JiYhd2luZG93LmV0X2lzX3ZlcnRpY2FsX25hdiYmaSgpLmxlbmd0aD8ocz1pKCkuaXMoIi5ldF9wYl9mdWxsd2lkdGhfc2VjdGlvbiIpP2koKS5jaGlsZHJlbigiLmV0X3BiX21vZHVsZTp2aXNpYmxlIikuZmlyc3QoKTppKCkuZmluZCgiLmV0X3BiX3Jvdzp2aXNpYmxlIikuZmlyc3QoKSkubGVuZ3RofHwocz10KCIuZXQtbCAuZXRfcGJfbW9kdWxlOnZpc2libGUiKS5maXJzdCgpKTpzPWQmJndpbmRvdy5ldF9pc190cmFuc3BhcmVudF9uYXYmJiF3aW5kb3cuZXRfaXNfdmVydGljYWxfbmF2JiZyLmxlbmd0aD90KCIjY29udGVudC1hcmVhIik6dCgiI21haW4tY29udGVudCIpO3ZhciBwPSEwO3NldFRpbWVvdXQoKGZ1bmN0aW9uKCl7cD0hMX0pLDApLHMud2F5cG9pbnQoe29mZnNldDpmdW5jdGlvbigpe2lmKHcmJihzZXRUaW1lb3V0KChmdW5jdGlvbigpe2V0X2NhbGN1bGF0ZV9oZWFkZXJfdmFsdWVzKCl9KSwyMDApLHc9ITEpLHUpcmV0dXJuIG4teS0yMDA7dmFyIHQ9cy5vZmZzZXQoKTtyZXR1cm4gdC50b3A8biYmKG49MC0obi10LnRvcCkpLG59LGhhbmRsZXI6ZnVuY3Rpb24oZSl7aWYoYygpLCJkb3duIj09PWUpe2lmKHAmJjA9PT1vLnNjcm9sbFRvcCgpKXJldHVybjtpZih2LmFkZENsYXNzKCJldC1maXhlZC1oZWFkZXIiKSxtLmFkZENsYXNzKCJldC1hbmltYXRlZC1jb250ZW50IiksYi5hZGRDbGFzcygiZXQtZml4ZWQtaGVhZGVyIiksIXUmJiF3aW5kb3cuZXRfaXNfdHJhbnNwYXJlbnRfbmF2JiYhdCgiLm1vYmlsZV9tZW51X2Jhcl90b2dnbGUiKS5pcygiOnZpc2libGUiKSl7dmFyIG4saSxhLHI9Yi5sZW5ndGg/cGFyc2VJbnQoYi5oZWlnaHQoKSk6MDtuPXYuY2xvbmUoKS5hZGRDbGFzcygiZXQtZml4ZWQtaGVhZGVyLCBldF9oZWFkZXJfY2xvbmUiKS5jc3Moe3RyYW5zaXRpb246Im5vbmUiLGRpc3BsYXk6Im5vbmUifSksaT1wYXJzZUludChuLnByZXBlbmRUbygiYm9keSIpLmhlaWdodCgpKSx3aW5kb3cuZXRfaXNfdmVydGljYWxfbmF2fHwoYT1wYXJzZUludChtLmNzcygicGFkZGluZy10b3AiKSktaS1yKzEsbS5jc3MoIm1hcmdpbi10b3AiLC1hKyJweCIpKSx0KCIuZXRfaGVhZGVyX2Nsb25lIikucmVtb3ZlKCl9fWVsc2UgYT0xLHYucmVtb3ZlQ2xhc3MoImV0LWZpeGVkLWhlYWRlciIpLGIucmVtb3ZlQ2xhc3MoImV0LWZpeGVkLWhlYWRlciIpLG0uY3NzKCJtYXJnaW4tdG9wIiwtYSsicHgiKTt3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoIkVURGl2aUZpeGVkSGVhZGVyVHJhbnNpdGlvblN0YXJ0Iix7ZGV0YWlsOnttYXJnaW5Ub3A6LWF9fSkpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7WigpLHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiRVREaXZpRml4ZWRIZWFkZXJUcmFuc2l0aW9uRW5kIix7ZGV0YWlsOnttYXJnaW5Ub3A6LWF9fSkpfSksNDAwKX19KX11JiZGKCl9fXQod2luZG93KS5vbigicmVzaXplIiwoZnVuY3Rpb24oKXt2YXIgbixpLHI9cGFyc2VJbnQoby53aWR0aCgpKSxzPWoubGVuZ3RoPjAsYz1zJiZwYXJzZUludChqLmRhdGEoInByZXZpb3VzLXdpZHRoIikpfHwwLGw9ai5jc3MoIndpZHRoIiksXz12b2lkIDAhPT1sPyIlIiE9PWwuc3Vic3RyKC0xLDEpOiIiLGQ9cz9fP3BhcnNlSW50KGoud2lkdGgoKSk6cGFyc2VJbnQoKHBhcnNlSW50KGoud2lkdGgoKSkvMTAwKS50b0ZpeGVkKDApKSpyOjAscD1qLmxlbmd0aCYmYyE9PWQsaD10KCIuZXRfc2xpZGVfaW5fbWVudV9jb250YWluZXIiKSxiPWY/ZS5qUXVlcnkoIiN3cGFkbWluYmFyIik6dCgiI3dwYWRtaW5iYXIiKSxnPXQoImJvZHkiKS5oYXNDbGFzcygicnRsIik7KGEmJnAmJihxKCksai5kYXRhKCJwcmV2aW91cy13aWR0aCIsZCkpLHUmJkYoKSwoYi5sZW5ndGgmJmEmJnI+PTc0MCYmcjw9NzgyfHxmKSYmKGV0X2NhbGN1bGF0ZV9oZWFkZXJfdmFsdWVzKCksSCgwKSksWigpLGgubGVuZ3RoJiYhdCgiYm9keSIpLmhhc0NsYXNzKCJldF9wYl9zbGlkZV9tZW51X2FjdGl2ZSIpJiYoZz9oLmNzcyh7bGVmdDoiLSIrcGFyc2VJbnQoaC5pbm5lcldpZHRoKCkpKyJweCIscmlnaHQ6InVuc2V0In0pOmguY3NzKHtyaWdodDoiLSIrcGFyc2VJbnQoaC5pbm5lcldpZHRoKCkpKyJweCJ9KSx0KCJib2R5IikuaGFzQ2xhc3MoImV0X2JveGVkX2xheW91dCIpJiZhJiYoZz8obj1tLmNzcygibWFyZ2luLXJpZ2h0Iiksdi5jc3Moe3JpZ2h0Om59KSk6KG49bS5jc3MoIm1hcmdpbi1sZWZ0Iiksdi5jc3Moe2xlZnQ6bn0pKSkpLGgubGVuZ3RoJiZ0KCJib2R5IikuaGFzQ2xhc3MoImV0X3BiX3NsaWRlX21lbnVfYWN0aXZlIikpJiYodCgiYm9keSIpLmhhc0NsYXNzKCJldF9ib3hlZF9sYXlvdXQiKT8obj1wYXJzZUZsb2F0KG0uY3NzKCJtYXJnaW4tbGVmdCIpKSxtLmNzcyh7bGVmdDoiLSIrKHBhcnNlSW50KGguaW5uZXJXaWR0aCgpKS1uKSsicHgifSksYSYmKGk9MD5wYXJzZUludChoLmlubmVyV2lkdGgoKSktMipuP01hdGguYWJzKGguaW5uZXJXaWR0aCgpLTIqbik6Ii0iKyhoLmlubmVyV2lkdGgoKS0yKm4pKTxwYXJzZUludChoLmlubmVyV2lkdGgoKSkmJnYuY3NzKHtsZWZ0OmkrInB4In0pKTpnP3QoIiNwYWdlLWNvbnRhaW5lciwgLmV0X2ZpeGVkX25hdiAjbWFpbi1oZWFkZXIiKS5jc3Moe3JpZ2h0OiItIitwYXJzZUludChoLmlubmVyV2lkdGgoKSkrInB4In0pOnQoIiNwYWdlLWNvbnRhaW5lciwgLmV0X2ZpeGVkX25hdiAjbWFpbi1oZWFkZXIiKS5jc3Moe2xlZnQ6Ii0iK3BhcnNlSW50KGguaW5uZXJXaWR0aCgpKSsicHgifSkpO2lmKGgubGVuZ3RoJiZ0KCJib2R5IikuaGFzQ2xhc3MoImV0X2hlYWRlcl9zdHlsZV9mdWxsc2NyZWVuIikpe3ZhciB3PXBhcnNlSW50KGguZmluZCgiLmV0X3NsaWRlX21lbnVfdG9wIikuaW5uZXJIZWlnaHQoKSk7aC5jc3MoeyJwYWRkaW5nLXRvcCI6dysyMCsicHgifSl9SSgpfSkpLGYmJmpRdWVyeSgiLmV0X2hlYWRlcl9zdHlsZV9mdWxsc2NyZWVuIC5ldF9zbGlkZV9pbl9tZW51X2NvbnRhaW5lciIpLmxlbmd0aD4wJiZqUXVlcnkod2luZG93KS5vbigicmVzaXplIixwKSx0KChmdW5jdGlvbigpe3QuZm4uZml0VmlkcyYmdCgiI21haW4tY29udGVudCIpLmZpdFZpZHMoe2N1c3RvbVNlbGVjdG9yOiJpZnJhbWVbc3JjXj0naHR0cDovL3d3dy5odWx1LmNvbSddLCBpZnJhbWVbc3JjXj0naHR0cDovL3d3dy5kYWlseW1vdGlvbi5jb20nXSwgaWZyYW1lW3NyY149J2h0dHA6Ly93d3cuZnVubnlvcmRpZS5jb20nXSwgaWZyYW1lW3NyY149J2h0dHBzOi8vZW1iZWQtc3NsLnRlZC5jb20nXSwgaWZyYW1lW3NyY149J2h0dHA6Ly9lbWJlZC5yZXZpc2lvbjMuY29tJ10sIGlmcmFtZVtzcmNePSdodHRwczovL2ZsaWNrci5jb20nXSwgaWZyYW1lW3NyY149J2h0dHA6Ly9ibGlwLnR2J10sIGlmcmFtZVtzcmNePSdodHRwOi8vd3d3LmNvbGxlZ2VodW1vci5jb20nXSJ9KX0pKSx0KCdhW2hyZWYqPSIjIl06bm90KFtocmVmPSIjIl0pLCAubW9iaWxlX25hdicpLm9uKCJjbGljayIsKGZ1bmN0aW9uKGUpe3ZhciBuPXQodGhpcyksaT1uLmNsb3Nlc3QoIi5ldF9zbW9vdGhfc2Nyb2xsX2Rpc2FibGVkIikubGVuZ3RoLGE9bi5jbG9zZXN0KCIud29vY29tbWVyY2UtdGFicyIpLmxlbmd0aCYmbi5jbG9zZXN0KCIudGFicyIpLmxlbmd0aCxvPW4uY2xvc2VzdCgiLnR0X3RhYnNfbmF2aWdhdGlvbiIpLmxlbmd0aCxyPW4uY2xvc2VzdCgiLmVhYi1zaG9ydGNvZGVfY2FsZW5kYXItbmF2aWdhdGlvbi1saW5rIikubGVuZ3RoLHM9bi5jbG9zZXN0KCIudmlldy1jYXJ0LWxuayIpLmxlbmd0aCxjPW4uaGFzQ2xhc3MoImFjb21tZW50LXJlcGx5IiksbD1uLmhhc0NsYXNzKCJ3b29jb21tZXJjZS1yZXZpZXctbGluayIpLF89aXx8c3x8YXx8cnx8Y3x8bHx8bztpZigobi5oYXNDbGFzcygibW9iaWxlX25hdiIpfHxsb2NhdGlvbi5wYXRobmFtZS5yZXBsYWNlKC9eXC8vLCIiKT09dGhpcy5wYXRobmFtZS5yZXBsYWNlKC9eXC8vLCIiKSYmbG9jYXRpb24uaG9zdG5hbWU9PXRoaXMuaG9zdG5hbWUpJiYhXyl7dmFyIHA9dCh0aGlzLmhhc2gpO2lmKG4uaGFzQ2xhc3MoIm1vYmlsZV9uYXYiKSYmKHA9dCgiIyIrZS50YXJnZXQuaGFzaC5zbGljZSgxKSksdChlLnRhcmdldCkucGFyZW50KCkuaGFzQ2xhc3MoInB1bS10cmlnZ2VyIikpKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIHU9dChlLnRhcmdldCkucGFyZW50KCkuYXR0cigiY2xhc3MiKS5zcGxpdCgiICIpLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIHQuaW5jbHVkZXMoInBvcG1ha2UiKX0pKVswXS5zcGxpdCgiLSIpWzFdO3QoIiNwdW0tIi5jb25jYXQodSkpLmNzcyh7b3BhY2l0eToiMSIsZGlzcGxheToiYmxvY2sifSksdCgiI3BvcG1ha2UtIi5jb25jYXQodSkpLmNzcyh7b3BhY2l0eToiMSIsZGlzcGxheToiYmxvY2sifSl9aWYoIXAubGVuZ3RoJiZ0aGlzLmhhc2gmJihwPXQoIltuYW1lPSIrdGhpcy5oYXNoLnNsaWNlKDEpKyJdIikpLHAubGVuZ3RoKXJldHVybiB0KHRoaXMpLnBhcmVudHMoKS5oYXNDbGFzcygid2lkZ2V0X3JlY2VudF9yZXZpZXdzIikmJnQoIi5yZXZpZXdzX3RhYiIpLnRyaWdnZXIoImNsaWNrIikuYW5pbWF0ZSh7c2Nyb2xsVG9wOnAub2Zmc2V0KCkudG9wfSw3MDApLG4uY2xvc2VzdCgiLmV0X3BiX2Z1bGxzY3JlZW5fbWVudV9vcGVuZWQiKS5sZW5ndGg+MCYmZCgpLHNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZXRfcGJfc21vb3RoX3Njcm9sbChwLCExLDgwMCl9KSwwKSwhdCgiI21haW4taGVhZGVyIikuaGFzQ2xhc3MoImV0LWZpeGVkLWhlYWRlciIpJiZ0KCJib2R5IikuaGFzQ2xhc3MoImV0X2ZpeGVkX25hdiIpJiZ0KHdpbmRvdykud2lkdGgoKT45ODAmJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7ZXRfcGJfc21vb3RoX3Njcm9sbChwLCExLDQwLCJsaW5lYXIiKX0pLDc4MCksITF9fSkpO3ZhciAkLFYsUixRPWZ1bmN0aW9uKCl7dmFyIGUsbj10KCIuZXQtbC0tcG9zdCIpLGk9dCgiLmV0LWwtLWJvZHkgLmV0X3BiX3NlY3Rpb246dmlzaWJsZSIpLm5vdCgiLmV0LWwtLXBvc3QgLmV0X3BiX3NlY3Rpb24iKTtyZXR1cm4gZT1mP24uZmluZCgiLmV0LWZiLXBvc3QtY29udGVudCA+IC5ldF9wYl9zZWN0aW9uIik6bi5maW5kKCIuZXRfYnVpbGRlcl9pbm5lcl9jb250ZW50ID4gLmV0X3BiX3NlY3Rpb246dmlzaWJsZSIpLDA9PT1pLmxlbmd0aHx8ZS5sZW5ndGg+MT9lOml9O2Z1bmN0aW9uIFUoKXt0KCIuZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyIikuaGFzQ2xhc3MoImV0X3BiX2lzX2FuaW1hdGluZyIpfHwodCgiLmV0X21lbnVfY29udGFpbmVyIikucmVtb3ZlQ2xhc3MoImV0X3BiX21lbnVfaGlkZGVuIGV0X3BiX25vX2FuaW1hdGlvbiIpLmFkZENsYXNzKCJldF9wYl9tZW51X3Zpc2libGUiKSx0KCIuZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyIikucmVtb3ZlQ2xhc3MoImV0X3BiX3NlYXJjaF92aXNpYmxlIGV0X3BiX25vX2FuaW1hdGlvbiIpLmFkZENsYXNzKCJldF9wYl9zZWFyY2hfZm9ybV9oaWRkZW4gZXRfcGJfaXNfYW5pbWF0aW5nIiksc2V0VGltZW91dCgoZnVuY3Rpb24oKXt0KCIuZXRfbWVudV9jb250YWluZXIiKS5hZGRDbGFzcygiZXRfcGJfbm9fYW5pbWF0aW9uIiksdCgiLmV0X3NlYXJjaF9mb3JtX2NvbnRhaW5lciIpLmFkZENsYXNzKCJldF9wYl9ub19hbmltYXRpb24iKS5yZW1vdmVDbGFzcygiZXRfcGJfaXNfYW5pbWF0aW5nIil9KSwxZTMpKX1mdW5jdGlvbiBaKCl7dmFyIGU9dCgiLmV0X3NlYXJjaF9mb3JtX2NvbnRhaW5lciIpO2lmKGUuaGFzQ2xhc3MoImV0X3BiX3NlYXJjaF92aXNpYmxlIikpe3ZhciBuPXQoImJvZHkiKSxpPXQoIiNtYWluLWhlYWRlciIpLmlubmVySGVpZ2h0KCksYT10KCIjdG9wLW1lbnUiKS53aWR0aCgpLG89dCgiI3RvcC1tZW51IGxpIGEiKS5jc3MoImZvbnQtc2l6ZSIpO2UuY3NzKHtoZWlnaHQ6aSsicHgifSksZS5maW5kKCJpbnB1dCIpLmNzcygiZm9udC1zaXplIixvKSxuLmhhc0NsYXNzKCJldF9oZWFkZXJfc3R5bGVfbGVmdCIpP2UuZmluZCgiZm9ybSIpLmNzcygibWF4LXdpZHRoIixhKzYwKyJweCIpOmUuY3NzKCJtYXgtd2lkdGgiLGErNjArInB4Iil9fWlmKHdpbmRvdy5ldF9wYl93aW5kb3dfc2lkZV9uYXZfc2Nyb2xsX2luaXQ9ZnVuY3Rpb24oKXtpZighMCE9PXdpbmRvdy5ldF9jYWxjdWxhdGluZ19zY3JvbGxfcG9zaXRpb24mJiExIT09d2luZG93LmV0X3NpZGVfbmF2X2xpbmtzX2luaXRpYWxpemVkKXt2YXIgZT1RKCk7d2luZG93LmV0X2NhbGN1bGF0aW5nX3Njcm9sbF9wb3NpdGlvbj0hMDt2YXIgbixpPXQoIi5ldC1sLS1oZWFkZXIiKS5sZW5ndGh8fHQoIi5ldC1sLS1ib2R5IikubGVuZ3RofHwhdCgiI21haW4taGVhZGVyIikubGVuZ3RoPzA6LTkwLGE9dCgiYm9keSIpLmhhc0NsYXNzKCJldF9maXhlZF9uYXYiKT8yMDppLG89dCgiI3RvcC1oZWFkZXIiKS5sZW5ndGg+MD9wYXJzZUludCh0KCIjdG9wLWhlYWRlciIpLmhlaWdodCgpKTowLHI9dCgiI21haW4taGVhZGVyIikubGVuZ3RoPjA/cGFyc2VJbnQodCgiI21haW4taGVhZGVyIikuaGVpZ2h0KCkpOjA7dCgiI3dwYWRtaW5iYXIiKS5sZW5ndGg+MCYmcGFyc2VJbnQodCh3aW5kb3cpLndpZHRoKCkpPjYwMCYmKGErPXBhcnNlSW50KHQoIiN3cGFkbWluYmFyIikub3V0ZXJIZWlnaHQoKSkpLG49d2luZG93LmV0X2lzX3ZlcnRpY2FsX25hdj9vK2ErNjA6bytyK2E7Zm9yKHZhciBzPXBhcnNlSW50KHQod2luZG93KS5oZWlnaHQoKSksYz1wYXJzZUludCh0KHdpbmRvdykuc2Nyb2xsVG9wKCkpLGw9cytjPT09cGFyc2VJbnQodChkb2N1bWVudCkuaGVpZ2h0KCkpLF89dCgiLnNpZGVfbmF2X2l0ZW0gYSIpLmxlbmd0aC0xLGQ9MDtkPD1fO2QrKyl7dmFyIHA9ZS5lcShkKSx1PXZvaWQgMD09PXAub2Zmc2V0KCksZj10KCIuc2lkZV9uYXZfaXRlbSBhLmFjdGl2ZSIpLnBhcmVudCgpLmluZGV4KCksaD1udWxsLGI9ITE9PT11P3Aub2Zmc2V0KCkudG9wLW46MDt1P2g9MDpsP2g9XzpjPj1iJiYoaD1kKSxudWxsIT09aCYmaCE9PWYmJih0KCIuc2lkZV9uYXZfaXRlbSBhIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLHQoImEjc2lkZV9uYXZfaXRlbV9pZF8iK2gpLmFkZENsYXNzKCJhY3RpdmUiKSl9d2luZG93LmV0X2NhbGN1bGF0aW5nX3Njcm9sbF9wb3NpdGlvbj0hMX19LHdpbmRvdy5ldF9wYl9zaWRlX25hdl9wYWdlX2luaXQ9ZnVuY3Rpb24oZSl7aWYodCgiLmV0X3BiX3NpZGVfbmF2X3BhZ2UiKS5sZW5ndGgpe3ZhciBuPVEoKSxpPW4ubGVuZ3RoLGE9cGFyc2VJbnQoKDIwKmkrNDApLzIpO3dpbmRvdy5ldF9zaWRlX25hdl9saW5rc19pbml0aWFsaXplZD0hMSx3aW5kb3cuZXRfY2FsY3VsYXRpbmdfc2Nyb2xsX3Bvc2l0aW9uPSExLGk+MSYmdCgiLmV0X3BiX3NpZGVfbmF2X3BhZ2UiKS5sZW5ndGgmJihlP3QoIi5ldF9wYl9zaWRlX25hdiIpLmVtcHR5KCk6dCgiI21haW4tY29udGVudCIpLmFwcGVuZCgnPHVsIGNsYXNzPSJldF9wYl9zaWRlX25hdiI+PC91bD4nKSxuLmVhY2goKGZ1bmN0aW9uKGUsbil7dmFyIGE9MD09PWU/ImFjdGl2ZSI6IiI7dCgiLmV0X3BiX3NpZGVfbmF2IikuYXBwZW5kKCc8bGkgY2xhc3M9InNpZGVfbmF2X2l0ZW0iPjxhIGhyZWY9IiMiIGlkPSJzaWRlX25hdl9pdGVtX2lkXycrZSsnIiBjbGFzcz0gIicrYSsnIj4nK2UrIjwvYT48L2xpPiIpLGktMT09PWUmJih3aW5kb3cuZXRfc2lkZV9uYXZfbGlua3NfaW5pdGlhbGl6ZWQ9ITApfSkpLHQoInVsLmV0X3BiX3NpZGVfbmF2IikuY3NzKCJtYXJnaW5Ub3AiLCItIithKyJweCIpLHQoIi5ldF9wYl9zaWRlX25hdiIpLmFkZENsYXNzKCJldC12aXNpYmxlIiksdCgiLmV0X3BiX3NpZGVfbmF2IGEiKS5vbigiY2xpY2siLChmdW5jdGlvbigpe3ZhciBlPXBhcnNlSW50KHQodGhpcykudGV4dCgpKSxpPW4uZXEoZSksYT0iMCI9PXQodGhpcykudGV4dCgpJiYhdCgiLmV0LWwtLWJvZHkiKS5sZW5ndGg7cmV0dXJuIGV0X3BiX3Ntb290aF9zY3JvbGwoaSxhLDgwMCksIXQoIiNtYWluLWhlYWRlciIpLmhhc0NsYXNzKCJldC1maXhlZC1oZWFkZXIiKSYmdCgiYm9keSIpLmhhc0NsYXNzKCJldF9maXhlZF9uYXYiKSYmcGFyc2VJbnQodCh3aW5kb3cpLndpZHRoKCkpPjk4MCYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtldF9wYl9zbW9vdGhfc2Nyb2xsKGksYSwyMDApfSksNTAwKSwhMX0pKSx0KHdpbmRvdykub24oInNjcm9sbCIsZXRfcGJfd2luZG93X3NpZGVfbmF2X3Njcm9sbF9pbml0KSl9fSx0KHdpbmRvdykub24oInJlc2l6ZSIsKGZ1bmN0aW9uKCl7ZXRfcGJfc2lkZV9uYXZfcGFnZV9pbml0KCEwKX0pKSx0KCJib2R5IikuaXMoIi5ldC1mYiwgLmV0LWJmYiIpJiYod2luZG93LmV0X3BiX3NpZGVfbmF2X3BhZ2VfaW5pdD1zKHdpbmRvdy5ldF9wYl9zaWRlX25hdl9wYWdlX2luaXQsMjAwKSksZXRfcGJfc2lkZV9uYXZfcGFnZV9pbml0KCksdCgiLmV0X3BiX3Njcm9sbF90b3AiKS5sZW5ndGgmJih0KHdpbmRvdykub24oInNjcm9sbCIsKGZ1bmN0aW9uKCl7dCh0aGlzKS5zY3JvbGxUb3AoKT44MDA/dCgiLmV0X3BiX3Njcm9sbF90b3AiKS5zaG93KCkucmVtb3ZlQ2xhc3MoImV0LWhpZGRlbiIpLmFkZENsYXNzKCJldC12aXNpYmxlIik6dCgiLmV0X3BiX3Njcm9sbF90b3AiKS5yZW1vdmVDbGFzcygiZXQtdmlzaWJsZSIpLmFkZENsYXNzKCJldC1oaWRkZW4iKX0pKSx0KCIuZXRfcGJfc2Nyb2xsX3RvcCIpLm9uKCJjbGljayIsKGZ1bmN0aW9uKCl7dCgiaHRtbCwgYm9keSIpLmFuaW1hdGUoe3Njcm9sbFRvcDowfSw4MDApfSkpKSx0KCIuY29tbWVudC1yZXBseS1saW5rIikubGVuZ3RoJiZ0KCIuY29tbWVudC1yZXBseS1saW5rIikuYWRkQ2xhc3MoImV0X3BiX2J1dHRvbiIpLHQoIiNldF90b3Bfc2VhcmNoIikub24oImNsaWNrIiwoZnVuY3Rpb24oKXt2YXIgZT10KCIuZXRfc2VhcmNoX2Zvcm1fY29udGFpbmVyIik7ZS5oYXNDbGFzcygiZXRfcGJfaXNfYW5pbWF0aW5nIil8fCh0KCIuZXRfbWVudV9jb250YWluZXIiKS5yZW1vdmVDbGFzcygiZXRfcGJfbWVudV92aXNpYmxlIGV0X3BiX25vX2FuaW1hdGlvbiIpLmFkZENsYXNzKCJldF9wYl9tZW51X2hpZGRlbiIpLGUucmVtb3ZlQ2xhc3MoImV0X3BiX3NlYXJjaF9mb3JtX2hpZGRlbiBldF9wYl9ub19hbmltYXRpb24iKS5hZGRDbGFzcygiZXRfcGJfc2VhcmNoX3Zpc2libGUgZXRfcGJfaXNfYW5pbWF0aW5nIiksc2V0VGltZW91dCgoZnVuY3Rpb24oKXt0KCIuZXRfbWVudV9jb250YWluZXIiKS5hZGRDbGFzcygiZXRfcGJfbm9fYW5pbWF0aW9uIiksZS5hZGRDbGFzcygiZXRfcGJfbm9fYW5pbWF0aW9uIikucmVtb3ZlQ2xhc3MoImV0X3BiX2lzX2FuaW1hdGluZyIpfSksMWUzKSxlLmZpbmQoImlucHV0IikudHJpZ2dlcigiZm9jdXMiKSxaKCkpfSkpLHQoIi5ldF9jbG9zZV9zZWFyY2hfZmllbGQiKS5vbigiY2xpY2siLChmdW5jdGlvbigpe1UoKX0pKSx0KGRvY3VtZW50KS5vbigibW91c2V1cCIsKGZ1bmN0aW9uKGUpe3ZhciBuPXQoIiNtYWluLWhlYWRlciIpO3QoIi5ldF9tZW51X2NvbnRhaW5lciIpLmhhc0NsYXNzKCJldF9wYl9tZW51X2hpZGRlbiIpJiYobi5pcyhlLnRhcmdldCl8fDAhPT1uLmhhcyhlLnRhcmdldCkubGVuZ3RofHxVKCkpfSkpLEMubGVuZ3RoKXt2YXIgWT1DLmlzKCJpbWciKT9DLmF0dHIoInNyYyIpOkMuZmluZCgiaW1nIikuYXR0cigic3JjIik7JD1ZLFY9ZnVuY3Rpb24oKXt2YXIgZSxuLGksYT0ic3ZnIj09PShDLmlzKCJpbWciKT9DLmF0dHIoInNyYyIpOkMuZmluZCgiaW1nIikuYXR0cigic3JjIikpLnN1YnN0cigtMywzKTt0KCJib2R5IikuYXBwZW5kKHQoIjxkaXYgLz4iLHtpZDoiZXQtZGVmaW5lLWxvZ28td3JhcCIsc3R5bGU6InBvc2l0aW9uOiBmaXhlZDsgYm90dG9tOiAwOyBvcGFjaXR5OiAwOyJ9KSksZT10KCIjZXQtZGVmaW5lLWxvZ28td3JhcCIpLGEmJmUuYWRkQ2xhc3MoInN2Zy1sb2dvIiksZS5odG1sKEMuY2xvbmUoKS5jc3Moe2Rpc3BsYXk6ImJsb2NrIn0pLnJlbW92ZUF0dHIoImlkIikpLG49ZS5maW5kKCJpbWciKS53aWR0aCgpLGk9ZS5maW5kKCJpbWciKS5oZWlnaHQoKSxDLmF0dHIoeyJkYXRhLWFjdHVhbC13aWR0aCI6biwiZGF0YS1hY3R1YWwtaGVpZ2h0IjppfSksZS5yZW1vdmUoKSxjKCEwKX0sKFI9bmV3IEltYWdlKS5vbkxvYWQ9VixSLm9ubG9hZD1WLFIuc3JjPSR9ZnVuY3Rpb24gRygpe3Qod2luZG93KS5vZmYoInNjcm9sbCIsd2luZG93LmV0X3BiX3dpbmRvd19zaWRlX25hdl9zY3JvbGxfaW5pdCksdCgiI21haW4tY29udGVudCAuZXRfcGJfc2lkZV9uYXYiKS5vZmYoImNsaWNrIiwiLmV0X3BiX3NpZGVfbmF2IGEiKSx0KCIjbWFpbi1jb250ZW50IC5ldF9wYl9zaWRlX25hdiIpLnJlbW92ZSgpLGV0X3BiX3NpZGVfbmF2X3BhZ2VfaW5pdCgpfXQoIi5mb290ZXItd2lkZ2V0IikuZWFjaCgoZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLG49ZS53aWR0aCgpLGk9ZS5maW5kKCIud2lkZ2V0X2Fkc2Vuc2V3aWRnZXQgaW5zIik7aS5sZW5ndGgmJmkud2lkdGgobil9KSksdCgiYm9keSIpLmlzKCIuZXQtZmIiKT8odCh3aW5kb3cpLm9uKCJldF9mYl9yb290X2RpZF9tb3VudCIsKGZ1bmN0aW9uKCl7RygpLE4oKX0pKSx0KHdpbmRvdykub24oImV0X2ZiX3NlY3Rpb25fY29udGVudF9jaGFuZ2UiLEcpKTp3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsTil9KSksdCgiI21haW4taGVhZGVyIikub24oImNsaWNrIiwiLmV0X3RvZ2dsZV9zbGlkZV9tZW51IiwoZnVuY3Rpb24oKXtsKCl9KSksYSYmKG8ub24oInN3aXBlbGVmdCIsKGZ1bmN0aW9uKHQpezMwPj1wYXJzZUludChvLndpZHRoKCkpLXBhcnNlSW50KHQuc3dpcGVzdGFydC5jb29yZHNbMF0pJiZsKCJvcGVuIil9KSksby5vbigic3dpcGVyaWdodCIsKGZ1bmN0aW9uKGUpe3QoImJvZHkiKS5oYXNDbGFzcygiZXRfcGJfc2xpZGVfbWVudV9hY3RpdmUiKSYmbCgiY2xvc2UiKX0pKSksdCgiI3BhZ2UtY29udGFpbmVyIikub24oImNsaWNrIiwiLmV0X3RvZ2dsZV9mdWxsc2NyZWVuX21lbnUiLChmdW5jdGlvbigpe2QoKX0pKSx0KHdpbmRvdykub24oInZpc2liaWxpdHljaGFuZ2UiLChmdW5jdGlvbigpe3QoImJvZHkiKS5oYXNDbGFzcygiZXRfcGJfZnVsbHNjcmVlbl9tZW51X2FjdGl2ZSIpJiZ0KCIuZXRfdG9nZ2xlX2Z1bGxzY3JlZW5fbWVudSIpLnRyaWdnZXIoImNsaWNrIil9KSksdCgiLmV0X3BiX2Z1bGxzY3JlZW5fbmF2X2NvbnRhaW5lciIpLm9uKCJjbGljayIsImxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhIiwoZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLmNsb3Nlc3QoImxpIiksbj1lLmZpbmQoIj5hIC5ldF9tb2JpbGVfbWVudV9hcnJvdyIpLGk9ZS5maW5kKCI+dWwiKSxhPW4uaGFzQ2xhc3MoImV0X3BiX3N1Ym1lbnVfb3BlbmVkIik7cmV0dXJuIG4udG9nZ2xlQ2xhc3MoImV0X3BiX3N1Ym1lbnVfb3BlbmVkIiksYT8oaS5yZW1vdmVDbGFzcygiZXRfcGJfc2xpZGVfZHJvcGRvd25fb3BlbmVkIiksaS5zbGlkZVRvZ2dsZSg3MDAsImVhc2VJbk91dEN1YmljIikpOihpLnNsaWRlVG9nZ2xlKDcwMCwiZWFzZUluT3V0Q3ViaWMiKSxpLmFkZENsYXNzKCJldF9wYl9zbGlkZV9kcm9wZG93bl9vcGVuZWQiKSksITF9KSksdCgiYm9keSIpLmhhc0NsYXNzKCJldF9oZWFkZXJfc3R5bGVfZnVsbHNjcmVlbiIpKXt2YXIgdT10KCIuZXRfaGVhZGVyX3N0eWxlX2Z1bGxzY3JlZW4gLmV0X3NsaWRlX2luX21lbnVfY29udGFpbmVyIik7aWYodS5sZW5ndGgpe3ZhciBoPXUuZmluZCgiLmV0X3NsaWRlX21lbnVfdG9wIikuaW5uZXJIZWlnaHQoKTt1LmNzcyh7InBhZGRpbmctdG9wIjpoKzIwKyJweCJ9KX19dChkb2N1bWVudC5ib2R5KS5vbigiY2hlY2tvdXRfZXJyb3IiLChmdW5jdGlvbigpe18oKX0pKSx0KGRvY3VtZW50LmJvZHkpLm9uKCJ1cGRhdGVkX2NoZWNrb3V0IiwoZnVuY3Rpb24odCl7ImZhaWx1cmUiPT09dC5yZXN1bHQmJl8oKX0pKSxvLm9uKCJldF9mYl9pbml0IiwoZnVuY3Rpb24oKXt2YXIgdD1lLndwO2lmKHQmJnQuaG9va3MmJnQuaG9va3MuYWRkRmlsdGVyKXt2YXIgbj13aW5kb3cuRElWSS5yb3dfc2VsZWN0b3I7dC5ob29rcy5hZGRGaWx0ZXIoImV0LnBiLnJvdy5jc3Muc2VsZWN0b3IiLCJkaXZpLmV0LnBiLnJvdy5jc3Muc2VsZWN0b3IiLChmdW5jdGlvbih0KXtyZXR1cm4gdC5yZXBsYWNlKCIlJXJvd19zZWxlY3RvciUlIixuKX0pKX19KSl9KGpRdWVyeSl9XSk7"}},"time_used":439,"timings":{"blocked":252,"dns":0,"connect":0,"send":0,"wait":95,"receive":92,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"static.getbutton.io/widget-send-button/js/init.js","fqdn":"static.getbutton.io","domain":"getbutton.io","tld":"io"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.389Z","timestamp":1785148619389,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /widget-send-button/js/init.js HTTP/1.1\r\nHost: static.getbutton.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/themes/Divi/core/admin/fonts/modules/all/modules.ttf","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.467Z","timestamp":1785148619467,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /wp-content/themes/Divi/core/admin/fonts/modules/all/modules.ttf HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-includes/js/mediaelement/mediaelementplayer-legacy.min.css?ver=4.2.16","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.589Z","timestamp":1785148618589,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-includes/js/mediaelement/mediaelementplayer-legacy.min.css?ver=4.2.16 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 11256\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:10 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":11256,"size_decoded":11466,"mime_type":"text/css","magic":"ASCII text, with very long lines (11256), with no line terminators","md5":"2b0dd7eecea03b4bdedb94ba622fdb03","sha1":"703becba85161118dd6fc66af465428ef43f561c","sha256":"b7908a015a567ec2363011df2475368dbff34360e9da3fdff50604d6395fb646","sha512":"fe64cff950921bdf83ec09fe79ca5ce52de40f5b8788697eb1d7b28055f2817778347d5d3c81a324801c7ec7151b3ee0eee99b2882c3c3b10bd760342d3bf3e7","ssdeep":"192:xthsVmeDXDanvgZenjAJKdXSMpNO96hDIzL79V1QVSD1CNxn6fR31r:czDanvuenjAkNBhDInSwh31r","tlshash":"713223929c88212cf43795645ac107ec923fc303fd62ededb73c7679caca58a516a943","first_seen":"2023-04-05T04:06:46Z","last_seen":"2026-08-12T08:45:13.500889Z","times_seen":91607,"resource_available":false,"data":"Lm1lanMtb2Zmc2NyZWVue2JvcmRlcjowO2NsaXA6cmVjdCgxcHgsMXB4LDFweCwxcHgpOy13ZWJraXQtY2xpcC1wYXRoOmluc2V0KDUwJSk7Y2xpcC1wYXRoOmluc2V0KDUwJSk7aGVpZ2h0OjFweDttYXJnaW46LTFweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFweDt3b3JkLXdyYXA6bm9ybWFsfS5tZWpzLWNvbnRhaW5lcntiYWNrZ3JvdW5kOiMwMDA7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLEFyaWFsLHNlcmlmO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246bGVmdDt0ZXh0LWluZGVudDowO3ZlcnRpY2FsLWFsaWduOnRvcH0ubWVqcy1jb250YWluZXIsLm1lanMtY29udGFpbmVyICp7Ym94LXNpemluZzpib3JkZXItYm94fS5tZWpzLWNvbnRhaW5lciB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scywubWVqcy1jb250YWluZXIgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwsLm1lanMtY29udGFpbmVyIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsLWNvbnRhaW5lciwubWVqcy1jb250YWluZXIgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhcnQtcGxheWJhY2stYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lO2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9Lm1lanMtZmlsbC1jb250YWluZXIsLm1lanMtZmlsbC1jb250YWluZXIgLm1lanMtY29udGFpbmVye2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lm1lanMtZmlsbC1jb250YWluZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDttYXJnaW46MCBhdXRvO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0ubWVqcy1jb250YWluZXI6Zm9jdXN7b3V0bGluZTpub25lfS5tZWpzLWlmcmFtZS1vdmVybGF5e2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9Lm1lanMtZW1iZWQsLm1lanMtZW1iZWQgYm9keXtiYWNrZ3JvdW5kOiMwMDA7aGVpZ2h0OjEwMCU7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDt3aWR0aDoxMDAlfS5tZWpzLWZ1bGxzY3JlZW57b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudH0ubWVqcy1jb250YWluZXItZnVsbHNjcmVlbntib3R0b206MDtsZWZ0OjA7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjA7dG9wOjA7ei1pbmRleDoxMDAwfS5tZWpzLWNvbnRhaW5lci1mdWxsc2NyZWVuIC5tZWpzLW1lZGlhZWxlbWVudCwubWVqcy1jb250YWluZXItZnVsbHNjcmVlbiB2aWRlb3toZWlnaHQ6MTAwJSFpbXBvcnRhbnQ7d2lkdGg6MTAwJSFpbXBvcnRhbnR9Lm1lanMtYmFja2dyb3VuZCwubWVqcy1tZWRpYWVsZW1lbnR7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS5tZWpzLW1lZGlhZWxlbWVudHtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3otaW5kZXg6MH0ubWVqcy1wb3N0ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCUgNTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6MX06cm9vdCAubWVqcy1wb3N0ZXItaW1ne2Rpc3BsYXk6bm9uZX0ubWVqcy1wb3N0ZXItaW1ne2JvcmRlcjowO3BhZGRpbmc6MH0ubWVqcy1vdmVybGF5ey13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6LXdlYmtpdC1ib3g7ZGlzcGxheTotd2Via2l0LWZsZXg7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS5tZWpzLWxheWVye3otaW5kZXg6MX0ubWVqcy1vdmVybGF5LXBsYXl7Y3Vyc29yOnBvaW50ZXJ9Lm1lanMtb3ZlcmxheS1idXR0b257YmFja2dyb3VuZDp1cmwobWVqcy1jb250cm9scy5zdmcpIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM5cHg7aGVpZ2h0OjgwcHg7d2lkdGg6ODBweH0ubWVqcy1vdmVybGF5OmhvdmVyPi5tZWpzLW92ZXJsYXktYnV0dG9ue2JhY2tncm91bmQtcG9zaXRpb246LTgwcHggLTM5cHh9Lm1lanMtb3ZlcmxheS1sb2FkaW5ne2hlaWdodDo4MHB4O3dpZHRoOjgwcHh9Lm1lanMtb3ZlcmxheS1sb2FkaW5nLWJnLWltZ3std2Via2l0LWFuaW1hdGlvbjphIDFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246YSAxcyBsaW5lYXIgaW5maW5pdGU7YmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwobWVqcy1jb250cm9scy5zdmcpIC0xNjBweCAtNDBweCBuby1yZXBlYXQ7ZGlzcGxheTpibG9jaztoZWlnaHQ6ODBweDt3aWR0aDo4MHB4O3otaW5kZXg6MX1ALXdlYmtpdC1rZXlmcmFtZXMgYXt0b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMXR1cm4pO3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX1Aa2V5ZnJhbWVzIGF7dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDF0dXJuKTt0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19Lm1lanMtY29udHJvbHN7Ym90dG9tOjA7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NDBweDtsZWZ0OjA7bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowIDEwcHg7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTt6LWluZGV4OjN9Lm1lanMtY29udHJvbHM6bm90KFtzdHlsZSo9ImRpc3BsYXk6IG5vbmUiXSl7YmFja2dyb3VuZDpyZ2JhKDI1NSwwLDAsLjcpO2JhY2tncm91bmQ6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQscmdiYSgwLDAsMCwuMzUpKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCxyZ2JhKDAsMCwwLC4zNSkpfS5tZWpzLWJ1dHRvbiwubWVqcy10aW1lLC5tZWpzLXRpbWUtcmFpbHtmb250LXNpemU6MTBweDtoZWlnaHQ6NDBweDtsaW5lLWhlaWdodDoxMHB4O21hcmdpbjowO3dpZHRoOjMycHh9Lm1lanMtYnV0dG9uPmJ1dHRvbntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IHVybChtZWpzLWNvbnRyb2xzLnN2Zyk7Ym9yZGVyOjA7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztmb250LXNpemU6MDtoZWlnaHQ6MjBweDtsaW5lLWhlaWdodDowO21hcmdpbjoxMHB4IDZweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtZGVjb3JhdGlvbjpub25lO3dpZHRoOjIwcHh9Lm1lanMtYnV0dG9uPmJ1dHRvbjpmb2N1c3tvdXRsaW5lOjFweCBkb3R0ZWQgIzk5OX0ubWVqcy1jb250YWluZXIta2V5Ym9hcmQtaW5hY3RpdmUgW3JvbGU9c2xpZGVyXSwubWVqcy1jb250YWluZXIta2V5Ym9hcmQtaW5hY3RpdmUgW3JvbGU9c2xpZGVyXTpmb2N1cywubWVqcy1jb250YWluZXIta2V5Ym9hcmQtaW5hY3RpdmUgYSwubWVqcy1jb250YWluZXIta2V5Ym9hcmQtaW5hY3RpdmUgYTpmb2N1cywubWVqcy1jb250YWluZXIta2V5Ym9hcmQtaW5hY3RpdmUgYnV0dG9uLC5tZWpzLWNvbnRhaW5lci1rZXlib2FyZC1pbmFjdGl2ZSBidXR0b246Zm9jdXN7b3V0bGluZTowfS5tZWpzLXRpbWV7Ym94LXNpemluZzpjb250ZW50LWJveDtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MjRweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxNnB4IDZweCAwO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOmF1dG99Lm1lanMtcGxheT5idXR0b257YmFja2dyb3VuZC1wb3NpdGlvbjowIDB9Lm1lanMtcGF1c2U+YnV0dG9ue2JhY2tncm91bmQtcG9zaXRpb246LTIwcHggMH0ubWVqcy1yZXBsYXk+YnV0dG9ue2JhY2tncm91bmQtcG9zaXRpb246LTE2MHB4IDB9Lm1lanMtdGltZS1yYWlse2RpcmVjdGlvbjpsdHI7LXdlYmtpdC1ib3gtZmxleDoxOy13ZWJraXQtZmxleC1ncm93OjE7LW1zLWZsZXgtcG9zaXRpdmU6MTtmbGV4LWdyb3c6MTtoZWlnaHQ6NDBweDttYXJnaW46MCAxMHB4O3BhZGRpbmctdG9wOjEwcHg7cG9zaXRpb246cmVsYXRpdmV9Lm1lanMtdGltZS1idWZmZXJpbmcsLm1lanMtdGltZS1jdXJyZW50LC5tZWpzLXRpbWUtZmxvYXQsLm1lanMtdGltZS1mbG9hdC1jb3JuZXIsLm1lanMtdGltZS1mbG9hdC1jdXJyZW50LC5tZWpzLXRpbWUtaG92ZXJlZCwubWVqcy10aW1lLWxvYWRlZCwubWVqcy10aW1lLW1hcmtlciwubWVqcy10aW1lLXRvdGFse2JvcmRlci1yYWRpdXM6MnB4O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwcHg7cG9zaXRpb246YWJzb2x1dGV9Lm1lanMtdGltZS10b3RhbHtiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC4zKTttYXJnaW46NXB4IDAgMDt3aWR0aDoxMDAlfS5tZWpzLXRpbWUtYnVmZmVyaW5ney13ZWJraXQtYW5pbWF0aW9uOmIgMnMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjpiIDJzIGxpbmVhciBpbmZpbml0ZTtiYWNrZ3JvdW5kOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KDEzNWRlZyxoc2xhKDAsMCUsMTAwJSwuNCkgMjUlLHRyYW5zcGFyZW50IDAsdHJhbnNwYXJlbnQgNTAlLGhzbGEoMCwwJSwxMDAlLC40KSAwLGhzbGEoMCwwJSwxMDAlLC40KSA3NSUsdHJhbnNwYXJlbnQgMCx0cmFuc3BhcmVudCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoLTQ1ZGVnLGhzbGEoMCwwJSwxMDAlLC40KSAyNSUsdHJhbnNwYXJlbnQgMCx0cmFuc3BhcmVudCA1MCUsaHNsYSgwLDAlLDEwMCUsLjQpIDAsaHNsYSgwLDAlLDEwMCUsLjQpIDc1JSx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLXNpemU6MTVweCAxNXB4O3dpZHRoOjEwMCV9QC13ZWJraXQta2V5ZnJhbWVzIGJ7MCV7YmFja2dyb3VuZC1wb3NpdGlvbjowIDB9dG97YmFja2dyb3VuZC1wb3NpdGlvbjozMHB4IDB9fUBrZXlmcmFtZXMgYnswJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjMwcHggMH19Lm1lanMtdGltZS1sb2FkZWR7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuMyl9Lm1lanMtdGltZS1jdXJyZW50LC5tZWpzLXRpbWUtaGFuZGxlLWNvbnRlbnR7YmFja2dyb3VuZDpoc2xhKDAsMCUsMTAwJSwuOSl9Lm1lanMtdGltZS1ob3ZlcmVke2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjUpO3otaW5kZXg6MTB9Lm1lanMtdGltZS1ob3ZlcmVkLm5lZ2F0aXZle2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMil9Lm1lanMtdGltZS1idWZmZXJpbmcsLm1lanMtdGltZS1jdXJyZW50LC5tZWpzLXRpbWUtaG92ZXJlZCwubWVqcy10aW1lLWxvYWRlZHtsZWZ0OjA7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDApOy1tcy10cmFuc2Zvcm06c2NhbGVYKDApO3RyYW5zZm9ybTpzY2FsZVgoMCk7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjAgMDstbXMtdHJhbnNmb3JtLW9yaWdpbjowIDA7dHJhbnNmb3JtLW9yaWdpbjowIDA7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuMTVzIGVhc2UtaW47dHJhbnNpdGlvbjphbGwgLjE1cyBlYXNlLWluO3dpZHRoOjEwMCV9Lm1lanMtdGltZS1idWZmZXJpbmd7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpOy1tcy10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9Lm1lanMtdGltZS1ob3ZlcmVkey13ZWJraXQtdHJhbnNpdGlvbjpoZWlnaHQgLjFzIGN1YmljLWJlemllciguNDQsMCwxLDEpO3RyYW5zaXRpb246aGVpZ2h0IC4xcyBjdWJpYy1iZXppZXIoLjQ0LDAsMSwxKX0ubWVqcy10aW1lLWhvdmVyZWQubm8taG92ZXJ7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDApIWltcG9ydGFudDstbXMtdHJhbnNmb3JtOnNjYWxlWCgwKSFpbXBvcnRhbnQ7dHJhbnNmb3JtOnNjYWxlWCgwKSFpbXBvcnRhbnR9Lm1lanMtdGltZS1oYW5kbGUsLm1lanMtdGltZS1oYW5kbGUtY29udGVudHtib3JkZXI6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt6LWluZGV4OjExfS5tZWpzLXRpbWUtaGFuZGxlLWNvbnRlbnR7Ym9yZGVyOjRweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuOSk7Ym9yZGVyLXJhZGl1czo1MCU7aGVpZ2h0OjEwcHg7bGVmdDotN3B4O3RvcDotNHB4Oy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDApOy1tcy10cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNmb3JtOnNjYWxlKDApO3dpZHRoOjEwcHh9Lm1lanMtdGltZS1yYWlsIC5tZWpzLXRpbWUtaGFuZGxlLWNvbnRlbnQ6YWN0aXZlLC5tZWpzLXRpbWUtcmFpbCAubWVqcy10aW1lLWhhbmRsZS1jb250ZW50OmZvY3VzLC5tZWpzLXRpbWUtcmFpbDpob3ZlciAubWVqcy10aW1lLWhhbmRsZS1jb250ZW50ey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpOy1tcy10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfS5tZWpzLXRpbWUtZmxvYXR7YmFja2dyb3VuZDojZWVlO2JvcmRlcjoxcHggc29saWQgIzMzMztib3R0b206MTAwJTtjb2xvcjojMTExO2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MTdweDttYXJnaW4tYm90dG9tOjlweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt3aWR0aDozNnB4fS5tZWpzLXRpbWUtZmxvYXQtY3VycmVudHtkaXNwbGF5OmJsb2NrO2xlZnQ6MDttYXJnaW46MnB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjMwcHh9Lm1lanMtdGltZS1mbG9hdC1jb3JuZXJ7Ym9yZGVyOjVweCBzb2xpZCAjZWVlO2JvcmRlci1jb2xvcjojZWVlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MDtkaXNwbGF5OmJsb2NrO2hlaWdodDowO2xlZnQ6NTAlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwMCU7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7d2lkdGg6MH0ubWVqcy1sb25nLXZpZGVvIC5tZWpzLXRpbWUtZmxvYXR7bWFyZ2luLWxlZnQ6LTIzcHg7d2lkdGg6NjRweH0ubWVqcy1sb25nLXZpZGVvIC5tZWpzLXRpbWUtZmxvYXQtY3VycmVudHt3aWR0aDo2MHB4fS5tZWpzLWJyb2FkY2FzdHtjb2xvcjojZmZmO2hlaWdodDoxMHB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNXB4O3dpZHRoOjEwMCV9Lm1lanMtZnVsbHNjcmVlbi1idXR0b24+YnV0dG9ue2JhY2tncm91bmQtcG9zaXRpb246LTgwcHggMH0ubWVqcy11bmZ1bGxzY3JlZW4+YnV0dG9ue2JhY2tncm91bmQtcG9zaXRpb246LTEwMHB4IDB9Lm1lanMtbXV0ZT5idXR0b257YmFja2dyb3VuZC1wb3NpdGlvbjotNjBweCAwfS5tZWpzLXVubXV0ZT5idXR0b257YmFja2dyb3VuZC1wb3NpdGlvbjotNDBweCAwfS5tZWpzLXZvbHVtZS1idXR0b257cG9zaXRpb246cmVsYXRpdmV9Lm1lanMtdm9sdW1lLWJ1dHRvbj4ubWVqcy12b2x1bWUtc2xpZGVyey13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2dyb3VuZDpyZ2JhKDUwLDUwLDUwLC43KTtib3JkZXItcmFkaXVzOjA7Ym90dG9tOjEwMCU7ZGlzcGxheTpub25lO2hlaWdodDoxMTVweDtsZWZ0OjUwJTttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt3aWR0aDoyNXB4O3otaW5kZXg6MX0ubWVqcy12b2x1bWUtYnV0dG9uOmhvdmVye2JvcmRlci1yYWRpdXM6MCAwIDRweCA0cHh9Lm1lanMtdm9sdW1lLXRvdGFse2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjUpO2hlaWdodDoxMDBweDtsZWZ0OjUwJTttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OHB4Oy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3dpZHRoOjJweH0ubWVqcy12b2x1bWUtY3VycmVudHtsZWZ0OjA7bWFyZ2luOjA7d2lkdGg6MTAwJX0ubWVqcy12b2x1bWUtY3VycmVudCwubWVqcy12b2x1bWUtaGFuZGxle2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjkpO3Bvc2l0aW9uOmFic29sdXRlfS5tZWpzLXZvbHVtZS1oYW5kbGV7Ym9yZGVyLXJhZGl1czoxcHg7Y3Vyc29yOm5zLXJlc2l6ZTtoZWlnaHQ6NnB4O2xlZnQ6NTAlOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3dpZHRoOjE2cHh9Lm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVye2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjM2cHg7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjU2cHh9Lm1lanMtaG9yaXpvbnRhbC12b2x1bWUtdG90YWx7YmFja2dyb3VuZDpyZ2JhKDUwLDUwLDUwLC44KTtoZWlnaHQ6OHB4O3RvcDoxNnB4O3dpZHRoOjUwcHh9Lm1lanMtaG9yaXpvbnRhbC12b2x1bWUtY3VycmVudCwubWVqcy1ob3Jpem9udGFsLXZvbHVtZS10b3RhbHtib3JkZXItcmFkaXVzOjJweDtmb250LXNpemU6MXB4O2xlZnQ6MDttYXJnaW46MDtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGV9Lm1lanMtaG9yaXpvbnRhbC12b2x1bWUtY3VycmVudHtiYWNrZ3JvdW5kOmhzbGEoMCwwJSwxMDAlLC44KTtoZWlnaHQ6MTAwJTt0b3A6MDt3aWR0aDoxMDAlfS5tZWpzLWhvcml6b250YWwtdm9sdW1lLWhhbmRsZXtkaXNwbGF5Om5vbmV9Lm1lanMtY2FwdGlvbnMtYnV0dG9uLC5tZWpzLWNoYXB0ZXJzLWJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZX0ubWVqcy1jYXB0aW9ucy1idXR0b24+YnV0dG9ue2JhY2tncm91bmQtcG9zaXRpb246LTE0MHB4IDB9Lm1lanMtY2hhcHRlcnMtYnV0dG9uPmJ1dHRvbntiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xODBweCAwfS5tZWpzLWNhcHRpb25zLWJ1dHRvbj4ubWVqcy1jYXB0aW9ucy1zZWxlY3RvciwubWVqcy1jaGFwdGVycy1idXR0b24+Lm1lanMtY2hhcHRlcnMtc2VsZWN0b3J7YmFja2dyb3VuZDpyZ2JhKDUwLDUwLDUwLC43KTtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MDtib3R0b206MTAwJTttYXJnaW4tcmlnaHQ6LTQzcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo1MCU7dmlzaWJpbGl0eTp2aXNpYmxlO3dpZHRoOjg2cHh9Lm1lanMtY2hhcHRlcnMtYnV0dG9uPi5tZWpzLWNoYXB0ZXJzLXNlbGVjdG9ye21hcmdpbi1yaWdodDotNTVweDt3aWR0aDoxMTBweH0ubWVqcy1jYXB0aW9ucy1zZWxlY3Rvci1saXN0LC5tZWpzLWNoYXB0ZXJzLXNlbGVjdG9yLWxpc3R7bGlzdC1zdHlsZS10eXBlOm5vbmUhaW1wb3J0YW50O21hcmdpbjowO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjB9Lm1lanMtY2FwdGlvbnMtc2VsZWN0b3ItbGlzdC1pdGVtLC5tZWpzLWNoYXB0ZXJzLXNlbGVjdG9yLWxpc3QtaXRlbXtjb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7bGlzdC1zdHlsZS10eXBlOm5vbmUhaW1wb3J0YW50O21hcmdpbjowIDAgNnB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjB9Lm1lanMtY2FwdGlvbnMtc2VsZWN0b3ItbGlzdC1pdGVtOmhvdmVyLC5tZWpzLWNoYXB0ZXJzLXNlbGVjdG9yLWxpc3QtaXRlbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNjOGM4YzghaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjQpIWltcG9ydGFudH0ubWVqcy1jYXB0aW9ucy1zZWxlY3Rvci1pbnB1dCwubWVqcy1jaGFwdGVycy1zZWxlY3Rvci1pbnB1dHtjbGVhcjpib3RoO2Zsb2F0OmxlZnQ7bGVmdDotMTAwMHB4O21hcmdpbjozcHggM3B4IDAgNXB4O3Bvc2l0aW9uOmFic29sdXRlfS5tZWpzLWNhcHRpb25zLXNlbGVjdG9yLWxhYmVsLC5tZWpzLWNoYXB0ZXJzLXNlbGVjdG9yLWxhYmVse2N1cnNvcjpwb2ludGVyO2Zsb2F0OmxlZnQ7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MTVweDtwYWRkaW5nOjRweCAxMHB4IDA7d2lkdGg6MTAwJX0ubWVqcy1jYXB0aW9ucy1zZWxlY3RlZCwubWVqcy1jaGFwdGVycy1zZWxlY3RlZHtjb2xvcjojMjFmOGY4fS5tZWpzLWNhcHRpb25zLXRyYW5zbGF0aW9uc3tmb250LXNpemU6MTBweDttYXJnaW46MCAwIDVweH0ubWVqcy1jYXB0aW9ucy1sYXllcntib3R0b206MDtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxNnB4O2xlZnQ6MDtsaW5lLWhlaWdodDoyMHB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyfS5tZWpzLWNhcHRpb25zLWxheWVyIGF7Y29sb3I6I2ZmZjt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5tZWpzLWNhcHRpb25zLWxheWVyW2xhbmc9YXJde2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjQwMH0ubWVqcy1jYXB0aW9ucy1wb3NpdGlvbntib3R0b206MTVweDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJX0ubWVqcy1jYXB0aW9ucy1wb3NpdGlvbi1ob3Zlcntib3R0b206MzVweH0ubWVqcy1jYXB0aW9ucy10ZXh0LC5tZWpzLWNhcHRpb25zLXRleHQgKntiYWNrZ3JvdW5kOmhzbGEoMCwwJSw4JSwuNSk7Ym94LXNoYWRvdzo1cHggMCAwIGhzbGEoMCwwJSw4JSwuNSksLTVweCAwIDAgaHNsYSgwLDAlLDglLC41KTtwYWRkaW5nOjA7d2hpdGUtc3BhY2U6cHJlLXdyYXB9Lm1lanMtY29udGFpbmVyLm1lanMtaGlkZS1jdWVzIHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVye2Rpc3BsYXk6bm9uZX0ubWVqcy1vdmVybGF5LWVycm9ye3Bvc2l0aW9uOnJlbGF0aXZlfS5tZWpzLW92ZXJsYXktZXJyb3I+aW1ne2xlZnQ6MDttYXgtd2lkdGg6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4Oi0xfS5tZWpzLWNhbm5vdHBsYXksLm1lanMtY2Fubm90cGxheSBhe2NvbG9yOiNmZmY7Zm9udC1zaXplOi44ZW19Lm1lanMtY2Fubm90cGxheXtwb3NpdGlvbjpyZWxhdGl2ZX0ubWVqcy1jYW5ub3RwbGF5IGEsLm1lanMtY2Fubm90cGxheSBwe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6MCAxNXB4O3dpZHRoOjEwMCV9"}},"time_used":373,"timings":{"blocked":-1,"dns":0,"connect":92,"send":0,"wait":182,"receive":0,"ssl":99},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-includes/js/jquery/jquery.min.js?ver=3.6.0","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.643Z","timestamp":1785148618643,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-includes/js/jquery/jquery.min.js?ver=3.6.0 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 89521\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:10 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":89521,"size_decoded":89738,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (65447)","md5":"02dd5d04add4759122013c5ab4dc5cc2","sha1":"a45a56e396ac549b4ff39b696ce9e0c16a7612de","sha256":"bd4de6a3fc0fb68d6f76ba7b93514b96a92e585c295b5351c31ad92a4b0777ea","sha512":"04690d9875e98f5ae6bf94f5c71b7a0177b374bc09609a0f58312e1c337348749a40e07fe226737dc248bd8fe2f6a489071258619affc7f1df644e4255159615","ssdeep":"1536:DjExXUqJnxDjoXEZxkMV4QYSt0zvDL6gP3h8cApwEIOzVTB/UjPazMdLiX4mQ1vM:DIh8GgP3hujzwbhd3XvSiDQ47GKq","tlshash":"e99309ddb2c6702257a720ba007f510bf236199d6c4d8450f169d8eabc78a4e827bf7d","first_seen":"2023-03-07T01:02:02Z","last_seen":"2026-08-12T08:11:51.614031Z","times_seen":60292,"resource_available":true,"data":"LyohIGpRdWVyeSB2My42LjAgfCAoYykgT3BlbkpTIEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycyB8IGpxdWVyeS5vcmcvbGljZW5zZSAqLwohZnVuY3Rpb24oZSx0KXsidXNlIHN0cmljdCI7Im9iamVjdCI9PXR5cGVvZiBtb2R1bGUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlLmV4cG9ydHM/bW9kdWxlLmV4cG9ydHM9ZS5kb2N1bWVudD90KGUsITApOmZ1bmN0aW9uKGUpe2lmKCFlLmRvY3VtZW50KXRocm93IG5ldyBFcnJvcigialF1ZXJ5IHJlcXVpcmVzIGEgd2luZG93IHdpdGggYSBkb2N1bWVudCIpO3JldHVybiB0KGUpfTp0KGUpfSgidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6dGhpcyxmdW5jdGlvbihDLGUpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1bXSxyPU9iamVjdC5nZXRQcm90b3R5cGVPZixzPXQuc2xpY2UsZz10LmZsYXQ/ZnVuY3Rpb24oZSl7cmV0dXJuIHQuZmxhdC5jYWxsKGUpfTpmdW5jdGlvbihlKXtyZXR1cm4gdC5jb25jYXQuYXBwbHkoW10sZSl9LHU9dC5wdXNoLGk9dC5pbmRleE9mLG49e30sbz1uLnRvU3RyaW5nLHY9bi5oYXNPd25Qcm9wZXJ0eSxhPXYudG9TdHJpbmcsbD1hLmNhbGwoT2JqZWN0KSx5PXt9LG09ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJiJudW1iZXIiIT10eXBlb2YgZS5ub2RlVHlwZSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUuaXRlbX0seD1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZSYmZT09PWUud2luZG93fSxFPUMuZG9jdW1lbnQsYz17dHlwZTohMCxzcmM6ITAsbm9uY2U6ITAsbm9Nb2R1bGU6ITB9O2Z1bmN0aW9uIGIoZSx0LG4pe3ZhciByLGksbz0obj1ufHxFKS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtpZihvLnRleHQ9ZSx0KWZvcihyIGluIGMpKGk9dFtyXXx8dC5nZXRBdHRyaWJ1dGUmJnQuZ2V0QXR0cmlidXRlKHIpKSYmby5zZXRBdHRyaWJ1dGUocixpKTtuLmhlYWQuYXBwZW5kQ2hpbGQobykucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvKX1mdW5jdGlvbiB3KGUpe3JldHVybiBudWxsPT1lP2UrIiI6Im9iamVjdCI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZT9uW28uY2FsbChlKV18fCJvYmplY3QiOnR5cGVvZiBlfXZhciBmPSIzLjYuMCIsUz1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcgUy5mbi5pbml0KGUsdCl9O2Z1bmN0aW9uIHAoZSl7dmFyIHQ9ISFlJiYibGVuZ3RoImluIGUmJmUubGVuZ3RoLG49dyhlKTtyZXR1cm4hbShlKSYmIXgoZSkmJigiYXJyYXkiPT09bnx8MD09PXR8fCJudW1iZXIiPT10eXBlb2YgdCYmMDx0JiZ0LTEgaW4gZSl9Uy5mbj1TLnByb3RvdHlwZT17anF1ZXJ5OmYsY29uc3RydWN0b3I6UyxsZW5ndGg6MCx0b0FycmF5OmZ1bmN0aW9uKCl7cmV0dXJuIHMuY2FsbCh0aGlzKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3MuY2FsbCh0aGlzKTplPDA/dGhpc1tlK3RoaXMubGVuZ3RoXTp0aGlzW2VdfSxwdXNoU3RhY2s6ZnVuY3Rpb24oZSl7dmFyIHQ9Uy5tZXJnZSh0aGlzLmNvbnN0cnVjdG9yKCksZSk7cmV0dXJuIHQucHJldk9iamVjdD10aGlzLHR9LGVhY2g6ZnVuY3Rpb24oZSl7cmV0dXJuIFMuZWFjaCh0aGlzLGUpfSxtYXA6ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMucHVzaFN0YWNrKFMubWFwKHRoaXMsZnVuY3Rpb24oZSx0KXtyZXR1cm4gbi5jYWxsKGUsdCxlKX0pKX0sc2xpY2U6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2socy5hcHBseSh0aGlzLGFyZ3VtZW50cykpfSxmaXJzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKDApfSxsYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoLTEpfSxldmVuOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKFMuZ3JlcCh0aGlzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuKHQrMSklMn0pKX0sb2RkOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKFMuZ3JlcCh0aGlzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQlMn0pKX0sZXE6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5sZW5ndGgsbj0rZSsoZTwwP3Q6MCk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKDA8PW4mJm48dD9bdGhpc1tuXV06W10pfSxlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcmV2T2JqZWN0fHx0aGlzLmNvbnN0cnVjdG9yKCl9LHB1c2g6dSxzb3J0OnQuc29ydCxzcGxpY2U6dC5zcGxpY2V9LFMuZXh0ZW5kPVMuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLGE9YXJndW1lbnRzWzBdfHx7fSxzPTEsdT1hcmd1bWVudHMubGVuZ3RoLGw9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGEmJihsPWEsYT1hcmd1bWVudHNbc118fHt9LHMrKyksIm9iamVjdCI9PXR5cGVvZiBhfHxtKGEpfHwoYT17fSkscz09PXUmJihhPXRoaXMscy0tKTtzPHU7cysrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tzXSkpZm9yKHQgaW4gZSlyPWVbdF0sIl9fcHJvdG9fXyIhPT10JiZhIT09ciYmKGwmJnImJihTLmlzUGxhaW5PYmplY3Qocil8fChpPUFycmF5LmlzQXJyYXkocikpKT8obj1hW3RdLG89aSYmIUFycmF5LmlzQXJyYXkobik/W106aXx8Uy5pc1BsYWluT2JqZWN0KG4pP246e30saT0hMSxhW3RdPVMuZXh0ZW5kKGwsbyxyKSk6dm9pZCAwIT09ciYmKGFbdF09cikpO3JldHVybiBhfSxTLmV4dGVuZCh7ZXhwYW5kbzoialF1ZXJ5IisoZitNYXRoLnJhbmRvbSgpKS5yZXBsYWNlKC9cRC9nLCIiKSxpc1JlYWR5OiEwLGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcihlKX0sbm9vcDpmdW5jdGlvbigpe30saXNQbGFpbk9iamVjdDpmdW5jdGlvbihlKXt2YXIgdCxuO3JldHVybiEoIWV8fCJbb2JqZWN0IE9iamVjdF0iIT09by5jYWxsKGUpKSYmKCEodD1yKGUpKXx8ImZ1bmN0aW9uIj09dHlwZW9mKG49di5jYWxsKHQsImNvbnN0cnVjdG9yIikmJnQuY29uc3RydWN0b3IpJiZhLmNhbGwobik9PT1sKX0saXNFbXB0eU9iamVjdDpmdW5jdGlvbihlKXt2YXIgdDtmb3IodCBpbiBlKXJldHVybiExO3JldHVybiEwfSxnbG9iYWxFdmFsOmZ1bmN0aW9uKGUsdCxuKXtiKGUse25vbmNlOnQmJnQubm9uY2V9LG4pfSxlYWNoOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0wO2lmKHAoZSkpe2ZvcihuPWUubGVuZ3RoO3I8bjtyKyspaWYoITE9PT10LmNhbGwoZVtyXSxyLGVbcl0pKWJyZWFrfWVsc2UgZm9yKHIgaW4gZSlpZighMT09PXQuY2FsbChlW3JdLHIsZVtyXSkpYnJlYWs7cmV0dXJuIGV9LG1ha2VBcnJheTpmdW5jdGlvbihlLHQpe3ZhciBuPXR8fFtdO3JldHVybiBudWxsIT1lJiYocChPYmplY3QoZSkpP1MubWVyZ2Uobiwic3RyaW5nIj09dHlwZW9mIGU/W2VdOmUpOnUuY2FsbChuLGUpKSxufSxpbkFycmF5OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbnVsbD09dD8tMTppLmNhbGwodCxlLG4pfSxtZXJnZTpmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0rdC5sZW5ndGgscj0wLGk9ZS5sZW5ndGg7cjxuO3IrKyllW2krK109dFtyXTtyZXR1cm4gZS5sZW5ndGg9aSxlfSxncmVwOmZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9W10saT0wLG89ZS5sZW5ndGgsYT0hbjtpPG87aSsrKSF0KGVbaV0saSkhPT1hJiZyLnB1c2goZVtpXSk7cmV0dXJuIHJ9LG1hcDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPTAsYT1bXTtpZihwKGUpKWZvcihyPWUubGVuZ3RoO288cjtvKyspbnVsbCE9KGk9dChlW29dLG8sbikpJiZhLnB1c2goaSk7ZWxzZSBmb3IobyBpbiBlKW51bGwhPShpPXQoZVtvXSxvLG4pKSYmYS5wdXNoKGkpO3JldHVybiBnKGEpfSxndWlkOjEsc3VwcG9ydDp5fSksImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKFMuZm5bU3ltYm9sLml0ZXJhdG9yXT10W1N5bWJvbC5pdGVyYXRvcl0pLFMuZWFjaCgiQm9vbGVhbiBOdW1iZXIgU3RyaW5nIEZ1bmN0aW9uIEFycmF5IERhdGUgUmVnRXhwIE9iamVjdCBFcnJvciBTeW1ib2wiLnNwbGl0KCIgIiksZnVuY3Rpb24oZSx0KXtuWyJbb2JqZWN0ICIrdCsiXSJdPXQudG9Mb3dlckNhc2UoKX0pO3ZhciBkPWZ1bmN0aW9uKG4pe3ZhciBlLGQsYixvLGksaCxmLGcsdyx1LGwsVCxDLGEsRSx2LHMsYyx5LFM9InNpenpsZSIrMSpuZXcgRGF0ZSxwPW4uZG9jdW1lbnQsaz0wLHI9MCxtPXVlKCkseD11ZSgpLEE9dWUoKSxOPXVlKCksaj1mdW5jdGlvbihlLHQpe3JldHVybiBlPT09dCYmKGw9ITApLDB9LEQ9e30uaGFzT3duUHJvcGVydHksdD1bXSxxPXQucG9wLEw9dC5wdXNoLEg9dC5wdXNoLE89dC5zbGljZSxQPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPTAscj1lLmxlbmd0aDtuPHI7bisrKWlmKGVbbl09PT10KXJldHVybiBuO3JldHVybi0xfSxSPSJjaGVja2VkfHNlbGVjdGVkfGFzeW5jfGF1dG9mb2N1c3xhdXRvcGxheXxjb250cm9sc3xkZWZlcnxkaXNhYmxlZHxoaWRkZW58aXNtYXB8bG9vcHxtdWx0aXBsZXxvcGVufHJlYWRvbmx5fHJlcXVpcmVkfHNjb3BlZCIsTT0iW1xceDIwXFx0XFxyXFxuXFxmXSIsST0iKD86XFxcXFtcXGRhLWZBLUZdezEsNn0iK00rIj98XFxcXFteXFxyXFxuXFxmXXxbXFx3LV18W15cMC1cXHg3Zl0pKyIsVz0iXFxbIitNKyIqKCIrSSsiKSg/OiIrTSsiKihbKl4kfCF+XT89KSIrTSsiKig/OicoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/OlxcXFwufFteXFxcXFwiXSkqKVwifCgiK0krIikpfCkiK00rIipcXF0iLEY9IjooIitJKyIpKD86XFwoKCgnKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8KCg/OlxcXFwufFteXFxcXCgpW1xcXV18IitXKyIpKil8LiopXFwpfCkiLEI9bmV3IFJlZ0V4cChNKyIrIiwiZyIpLCQ9bmV3IFJlZ0V4cCgiXiIrTSsiK3woKD86XnxbXlxcXFxdKSg/OlxcXFwuKSopIitNKyIrJCIsImciKSxfPW5ldyBSZWdFeHAoIl4iK00rIiosIitNKyIqIiksej1uZXcgUmVnRXhwKCJeIitNKyIqKFs+K35dfCIrTSsiKSIrTSsiKiIpLFU9bmV3IFJlZ0V4cChNKyJ8PiIpLFg9bmV3IFJlZ0V4cChGKSxWPW5ldyBSZWdFeHAoIl4iK0krIiQiKSxHPXtJRDpuZXcgUmVnRXhwKCJeIygiK0krIikiKSxDTEFTUzpuZXcgUmVnRXhwKCJeXFwuKCIrSSsiKSIpLFRBRzpuZXcgUmVnRXhwKCJeKCIrSSsifFsqXSkiKSxBVFRSOm5ldyBSZWdFeHAoIl4iK1cpLFBTRVVETzpuZXcgUmVnRXhwKCJeIitGKSxDSElMRDpuZXcgUmVnRXhwKCJeOihvbmx5fGZpcnN0fGxhc3R8bnRofG50aC1sYXN0KS0oY2hpbGR8b2YtdHlwZSkoPzpcXCgiK00rIiooZXZlbnxvZGR8KChbKy1dfCkoXFxkKilufCkiK00rIiooPzooWystXXwpIitNKyIqKFxcZCspfCkpIitNKyIqXFwpfCkiLCJpIiksYm9vbDpuZXcgUmVnRXhwKCJeKD86IitSKyIpJCIsImkiKSxuZWVkc0NvbnRleHQ6bmV3IFJlZ0V4cCgiXiIrTSsiKls+K35dfDooZXZlbnxvZGR8ZXF8Z3R8bHR8bnRofGZpcnN0fGxhc3QpKD86XFwoIitNKyIqKCg/Oi1cXGQpP1xcZCopIitNKyIqXFwpfCkoPz1bXi1dfCQpIiwiaSIpfSxZPS9IVE1MJC9pLFE9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSxKPS9eaFxkJC9pLEs9L15bXntdK1x7XHMqXFtuYXRpdmUgXHcvLFo9L14oPzojKFtcdy1dKyl8KFx3Kyl8XC4oW1x3LV0rKSkkLyxlZT0vWyt+XS8sdGU9bmV3IFJlZ0V4cCgiXFxcXFtcXGRhLWZBLUZdezEsNn0iK00rIj98XFxcXChbXlxcclxcblxcZl0pIiwiZyIpLG5lPWZ1bmN0aW9uKGUsdCl7dmFyIG49IjB4IitlLnNsaWNlKDEpLTY1NTM2O3JldHVybiB0fHwobjwwP1N0cmluZy5mcm9tQ2hhckNvZGUobis2NTUzNik6U3RyaW5nLmZyb21DaGFyQ29kZShuPj4xMHw1NTI5NiwxMDIzJm58NTYzMjApKX0scmU9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15cMC1ceDFmXHg3Zi1cdUZGRkZcdy1dL2csaWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD8iXDAiPT09ZT8iXHVmZmZkIjplLnNsaWNlKDAsLTEpKyJcXCIrZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLnRvU3RyaW5nKDE2KSsiICI6IlxcIitlfSxvZT1mdW5jdGlvbigpe1QoKX0sYWU9YmUoZnVuY3Rpb24oZSl7cmV0dXJuITA9PT1lLmRpc2FibGVkJiYiZmllbGRzZXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpfSx7ZGlyOiJwYXJlbnROb2RlIixuZXh0OiJsZWdlbmQifSk7dHJ5e0guYXBwbHkodD1PLmNhbGwocC5jaGlsZE5vZGVzKSxwLmNoaWxkTm9kZXMpLHRbcC5jaGlsZE5vZGVzLmxlbmd0aF0ubm9kZVR5cGV9Y2F0Y2goZSl7SD17YXBwbHk6dC5sZW5ndGg/ZnVuY3Rpb24oZSx0KXtMLmFwcGx5KGUsTy5jYWxsKHQpKX06ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmxlbmd0aCxyPTA7d2hpbGUoZVtuKytdPXRbcisrXSk7ZS5sZW5ndGg9bi0xfX19ZnVuY3Rpb24gc2UodCxlLG4scil7dmFyIGksbyxhLHMsdSxsLGMsZj1lJiZlLm93bmVyRG9jdW1lbnQscD1lP2Uubm9kZVR5cGU6OTtpZihuPW58fFtdLCJzdHJpbmciIT10eXBlb2YgdHx8IXR8fDEhPT1wJiY5IT09cCYmMTEhPT1wKXJldHVybiBuO2lmKCFyJiYoVChlKSxlPWV8fEMsRSkpe2lmKDExIT09cCYmKHU9Wi5leGVjKHQpKSlpZihpPXVbMV0pe2lmKDk9PT1wKXtpZighKGE9ZS5nZXRFbGVtZW50QnlJZChpKSkpcmV0dXJuIG47aWYoYS5pZD09PWkpcmV0dXJuIG4ucHVzaChhKSxufWVsc2UgaWYoZiYmKGE9Zi5nZXRFbGVtZW50QnlJZChpKSkmJnkoZSxhKSYmYS5pZD09PWkpcmV0dXJuIG4ucHVzaChhKSxufWVsc2V7aWYodVsyXSlyZXR1cm4gSC5hcHBseShuLGUuZ2V0RWxlbWVudHNCeVRhZ05hbWUodCkpLG47aWYoKGk9dVszXSkmJmQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKXJldHVybiBILmFwcGx5KG4sZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGkpKSxufWlmKGQucXNhJiYhTlt0KyIgIl0mJighdnx8IXYudGVzdCh0KSkmJigxIT09cHx8Im9iamVjdCIhPT1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpKXtpZihjPXQsZj1lLDE9PT1wJiYoVS50ZXN0KHQpfHx6LnRlc3QodCkpKXsoZj1lZS50ZXN0KHQpJiZ5ZShlLnBhcmVudE5vZGUpfHxlKT09PWUmJmQuc2NvcGV8fCgocz1lLmdldEF0dHJpYnV0ZSgiaWQiKSk/cz1zLnJlcGxhY2UocmUsaWUpOmUuc2V0QXR0cmlidXRlKCJpZCIscz1TKSksbz0obD1oKHQpKS5sZW5ndGg7d2hpbGUoby0tKWxbb109KHM/IiMiK3M6IjpzY29wZSIpKyIgIit4ZShsW29dKTtjPWwuam9pbigiLCIpfXRyeXtyZXR1cm4gSC5hcHBseShuLGYucXVlcnlTZWxlY3RvckFsbChjKSksbn1jYXRjaChlKXtOKHQsITApfWZpbmFsbHl7cz09PVMmJmUucmVtb3ZlQXR0cmlidXRlKCJpZCIpfX19cmV0dXJuIGcodC5yZXBsYWNlKCQsIiQxIiksZSxuLHIpfWZ1bmN0aW9uIHVlKCl7dmFyIHI9W107cmV0dXJuIGZ1bmN0aW9uIGUodCxuKXtyZXR1cm4gci5wdXNoKHQrIiAiKT5iLmNhY2hlTGVuZ3RoJiZkZWxldGUgZVtyLnNoaWZ0KCldLGVbdCsiICJdPW59fWZ1bmN0aW9uIGxlKGUpe3JldHVybiBlW1NdPSEwLGV9ZnVuY3Rpb24gY2UoZSl7dmFyIHQ9Qy5jcmVhdGVFbGVtZW50KCJmaWVsZHNldCIpO3RyeXtyZXR1cm4hIWUodCl9Y2F0Y2goZSl7cmV0dXJuITF9ZmluYWxseXt0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0KSx0PW51bGx9fWZ1bmN0aW9uIGZlKGUsdCl7dmFyIG49ZS5zcGxpdCgifCIpLHI9bi5sZW5ndGg7d2hpbGUoci0tKWIuYXR0ckhhbmRsZVtuW3JdXT10fWZ1bmN0aW9uIHBlKGUsdCl7dmFyIG49dCYmZSxyPW4mJjE9PT1lLm5vZGVUeXBlJiYxPT09dC5ub2RlVHlwZSYmZS5zb3VyY2VJbmRleC10LnNvdXJjZUluZGV4O2lmKHIpcmV0dXJuIHI7aWYobil3aGlsZShuPW4ubmV4dFNpYmxpbmcpaWYobj09PXQpcmV0dXJuLTE7cmV0dXJuIGU/MTotMX1mdW5jdGlvbiBkZSh0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmZS50eXBlPT09dH19ZnVuY3Rpb24gaGUobil7cmV0dXJuIGZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PXR8fCJidXR0b24iPT09dCkmJmUudHlwZT09PW59fWZ1bmN0aW9uIGdlKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4iZm9ybSJpbiBlP2UucGFyZW50Tm9kZSYmITE9PT1lLmRpc2FibGVkPyJsYWJlbCJpbiBlPyJsYWJlbCJpbiBlLnBhcmVudE5vZGU/ZS5wYXJlbnROb2RlLmRpc2FibGVkPT09dDplLmRpc2FibGVkPT09dDplLmlzRGlzYWJsZWQ9PT10fHxlLmlzRGlzYWJsZWQhPT0hdCYmYWUoZSk9PT10OmUuZGlzYWJsZWQ9PT10OiJsYWJlbCJpbiBlJiZlLmRpc2FibGVkPT09dH19ZnVuY3Rpb24gdmUoYSl7cmV0dXJuIGxlKGZ1bmN0aW9uKG8pe3JldHVybiBvPStvLGxlKGZ1bmN0aW9uKGUsdCl7dmFyIG4scj1hKFtdLGUubGVuZ3RoLG8pLGk9ci5sZW5ndGg7d2hpbGUoaS0tKWVbbj1yW2ldXSYmKGVbbl09ISh0W25dPWVbbl0pKX0pfSl9ZnVuY3Rpb24geWUoZSl7cmV0dXJuIGUmJiJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZSYmZX1mb3IoZSBpbiBkPXNlLnN1cHBvcnQ9e30saT1zZS5pc1hNTD1mdW5jdGlvbihlKXt2YXIgdD1lJiZlLm5hbWVzcGFjZVVSSSxuPWUmJihlLm93bmVyRG9jdW1lbnR8fGUpLmRvY3VtZW50RWxlbWVudDtyZXR1cm4hWS50ZXN0KHR8fG4mJm4ubm9kZU5hbWV8fCJIVE1MIil9LFQ9c2Uuc2V0RG9jdW1lbnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbixyPWU/ZS5vd25lckRvY3VtZW50fHxlOnA7cmV0dXJuIHIhPUMmJjk9PT1yLm5vZGVUeXBlJiZyLmRvY3VtZW50RWxlbWVudCYmKGE9KEM9cikuZG9jdW1lbnRFbGVtZW50LEU9IWkoQykscCE9QyYmKG49Qy5kZWZhdWx0VmlldykmJm4udG9wIT09biYmKG4uYWRkRXZlbnRMaXN0ZW5lcj9uLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsb2UsITEpOm4uYXR0YWNoRXZlbnQmJm4uYXR0YWNoRXZlbnQoIm9udW5sb2FkIixvZSkpLGQuc2NvcGU9Y2UoZnVuY3Rpb24oZSl7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuYXBwZW5kQ2hpbGQoQy5jcmVhdGVFbGVtZW50KCJkaXYiKSksInVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGwmJiFlLnF1ZXJ5U2VsZWN0b3JBbGwoIjpzY29wZSBmaWVsZHNldCBkaXYiKS5sZW5ndGh9KSxkLmF0dHJpYnV0ZXM9Y2UoZnVuY3Rpb24oZSl7cmV0dXJuIGUuY2xhc3NOYW1lPSJpIiwhZS5nZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIpfSksZC5nZXRFbGVtZW50c0J5VGFnTmFtZT1jZShmdW5jdGlvbihlKXtyZXR1cm4gZS5hcHBlbmRDaGlsZChDLmNyZWF0ZUNvbW1lbnQoIiIpKSwhZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aH0pLGQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZT1LLnRlc3QoQy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKSxkLmdldEJ5SWQ9Y2UoZnVuY3Rpb24oZSl7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuaWQ9UywhQy5nZXRFbGVtZW50c0J5TmFtZXx8IUMuZ2V0RWxlbWVudHNCeU5hbWUoUykubGVuZ3RofSksZC5nZXRCeUlkPyhiLmZpbHRlci5JRD1mdW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UodGUsbmUpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gZS5nZXRBdHRyaWJ1dGUoImlkIik9PT10fX0sYi5maW5kLklEPWZ1bmN0aW9uKGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB0LmdldEVsZW1lbnRCeUlkJiZFKXt2YXIgbj10LmdldEVsZW1lbnRCeUlkKGUpO3JldHVybiBuP1tuXTpbXX19KTooYi5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSl7dmFyIG49ZS5yZXBsYWNlKHRlLG5lKTtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBlLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gdCYmdC52YWx1ZT09PW59fSxiLmZpbmQuSUQ9ZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJkUpe3ZhciBuLHIsaSxvPXQuZ2V0RWxlbWVudEJ5SWQoZSk7aWYobyl7aWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dO2k9dC5nZXRFbGVtZW50c0J5TmFtZShlKSxyPTA7d2hpbGUobz1pW3IrK10paWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dfXJldHVybltdfX0pLGIuZmluZC5UQUc9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZT9mdW5jdGlvbihlLHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpOmQucXNhP3QucXVlcnlTZWxlY3RvckFsbChlKTp2b2lkIDB9OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj1bXSxpPTAsbz10LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpO2lmKCIqIj09PWUpe3doaWxlKG49b1tpKytdKTE9PT1uLm5vZGVUeXBlJiZyLnB1c2gobik7cmV0dXJuIHJ9cmV0dXJuIG99LGIuZmluZC5DTEFTUz1kLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmZ1bmN0aW9uKGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJkUpcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlKX0scz1bXSx2PVtdLChkLnFzYT1LLnRlc3QoQy5xdWVyeVNlbGVjdG9yQWxsKSkmJihjZShmdW5jdGlvbihlKXt2YXIgdDthLmFwcGVuZENoaWxkKGUpLmlubmVySFRNTD0iPGEgaWQ9JyIrUysiJz48L2E+PHNlbGVjdCBpZD0nIitTKyItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGUucXVlcnlTZWxlY3RvckFsbCgiW21zYWxsb3djYXB0dXJlXj0nJ10iKS5sZW5ndGgmJnYucHVzaCgiWypeJF09IitNKyIqKD86Jyd8XCJcIikiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fHYucHVzaCgiXFxbIitNKyIqKD86dmFsdWV8IitSKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrUysiLV0iKS5sZW5ndGh8fHYucHVzaCgifj0iKSwodD1DLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnNldEF0dHJpYnV0ZSgibmFtZSIsIiIpLGUuYXBwZW5kQ2hpbGQodCksZS5xdWVyeVNlbGVjdG9yQWxsKCJbbmFtZT0nJ10iKS5sZW5ndGh8fHYucHVzaCgiXFxbIitNKyIqbmFtZSIrTSsiKj0iK00rIiooPzonJ3xcIlwiKSIpLGUucXVlcnlTZWxlY3RvckFsbCgiOmNoZWNrZWQiKS5sZW5ndGh8fHYucHVzaCgiOmNoZWNrZWQiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoImEjIitTKyIrKiIpLmxlbmd0aHx8di5wdXNoKCIuIy4rWyt+XSIpLGUucXVlcnlTZWxlY3RvckFsbCgiXFxcZiIpLHYucHVzaCgiW1xcclxcblxcZl0iKX0pLGNlKGZ1bmN0aW9uKGUpe2UuaW5uZXJIVE1MPSI8YSBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgZGlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGVjdD4iO3ZhciB0PUMuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTt0LnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGUuYXBwZW5kQ2hpbGQodCkuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLGUucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9ZF0iKS5sZW5ndGgmJnYucHVzaCgibmFtZSIrTSsiKlsqXiR8IX5dPz0iKSwyIT09ZS5xdWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpLmxlbmd0aCYmdi5wdXNoKCI6ZW5hYmxlZCIsIjpkaXNhYmxlZCIpLGEuYXBwZW5kQ2hpbGQoZSkuZGlzYWJsZWQ9ITAsMiE9PWUucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZ2LnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksZS5xdWVyeVNlbGVjdG9yQWxsKCIqLDp4Iiksdi5wdXNoKCIsLio6Iil9KSksKGQubWF0Y2hlc1NlbGVjdG9yPUsudGVzdChjPWEubWF0Y2hlc3x8YS53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fGEubW96TWF0Y2hlc1NlbGVjdG9yfHxhLm9NYXRjaGVzU2VsZWN0b3J8fGEubXNNYXRjaGVzU2VsZWN0b3IpKSYmY2UoZnVuY3Rpb24oZSl7ZC5kaXNjb25uZWN0ZWRNYXRjaD1jLmNhbGwoZSwiKiIpLGMuY2FsbChlLCJbcyE9JyddOngiKSxzLnB1c2goIiE9IixGKX0pLHY9di5sZW5ndGgmJm5ldyBSZWdFeHAodi5qb2luKCJ8IikpLHM9cy5sZW5ndGgmJm5ldyBSZWdFeHAocy5qb2luKCJ8IikpLHQ9Sy50ZXN0KGEuY29tcGFyZURvY3VtZW50UG9zaXRpb24pLHk9dHx8Sy50ZXN0KGEuY29udGFpbnMpP2Z1bmN0aW9uKGUsdCl7dmFyIG49OT09PWUubm9kZVR5cGU/ZS5kb2N1bWVudEVsZW1lbnQ6ZSxyPXQmJnQucGFyZW50Tm9kZTtyZXR1cm4gZT09PXJ8fCEoIXJ8fDEhPT1yLm5vZGVUeXBlfHwhKG4uY29udGFpbnM/bi5jb250YWlucyhyKTplLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHIpKSl9OmZ1bmN0aW9uKGUsdCl7aWYodCl3aGlsZSh0PXQucGFyZW50Tm9kZSlpZih0PT09ZSlyZXR1cm4hMDtyZXR1cm4hMX0saj10P2Z1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2YXIgbj0hZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1cm4gbnx8KDEmKG49KGUub3duZXJEb2N1bWVudHx8ZSk9PSh0Lm93bmVyRG9jdW1lbnR8fHQpP2UuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCk6MSl8fCFkLnNvcnREZXRhY2hlZCYmdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlKT09PW4/ZT09Q3x8ZS5vd25lckRvY3VtZW50PT1wJiZ5KHAsZSk/LTE6dD09Q3x8dC5vd25lckRvY3VtZW50PT1wJiZ5KHAsdCk/MTp1P1AodSxlKS1QKHUsdCk6MDo0Jm4/LTE6MSl9OmZ1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2YXIgbixyPTAsaT1lLnBhcmVudE5vZGUsbz10LnBhcmVudE5vZGUsYT1bZV0scz1bdF07aWYoIWl8fCFvKXJldHVybiBlPT1DPy0xOnQ9PUM/MTppPy0xOm8/MTp1P1AodSxlKS1QKHUsdCk6MDtpZihpPT09bylyZXR1cm4gcGUoZSx0KTtuPWU7d2hpbGUobj1uLnBhcmVudE5vZGUpYS51bnNoaWZ0KG4pO249dDt3aGlsZShuPW4ucGFyZW50Tm9kZSlzLnVuc2hpZnQobik7d2hpbGUoYVtyXT09PXNbcl0pcisrO3JldHVybiByP3BlKGFbcl0sc1tyXSk6YVtyXT09cD8tMTpzW3JdPT1wPzE6MH0pLEN9LHNlLm1hdGNoZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gc2UoZSxudWxsLG51bGwsdCl9LHNlLm1hdGNoZXNTZWxlY3Rvcj1mdW5jdGlvbihlLHQpe2lmKFQoZSksZC5tYXRjaGVzU2VsZWN0b3ImJkUmJiFOW3QrIiAiXSYmKCFzfHwhcy50ZXN0KHQpKSYmKCF2fHwhdi50ZXN0KHQpKSl0cnl7dmFyIG49Yy5jYWxsKGUsdCk7aWYobnx8ZC5kaXNjb25uZWN0ZWRNYXRjaHx8ZS5kb2N1bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUeXBlKXJldHVybiBufWNhdGNoKGUpe04odCwhMCl9cmV0dXJuIDA8c2UodCxDLG51bGwsW2VdKS5sZW5ndGh9LHNlLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSkseShlLHQpfSxzZS5hdHRyPWZ1bmN0aW9uKGUsdCl7KGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSk7dmFyIG49Yi5hdHRySGFuZGxlW3QudG9Mb3dlckNhc2UoKV0scj1uJiZELmNhbGwoYi5hdHRySGFuZGxlLHQudG9Mb3dlckNhc2UoKSk/bihlLHQsIUUpOnZvaWQgMDtyZXR1cm4gdm9pZCAwIT09cj9yOmQuYXR0cmlidXRlc3x8IUU/ZS5nZXRBdHRyaWJ1dGUodCk6KHI9ZS5nZXRBdHRyaWJ1dGVOb2RlKHQpKSYmci5zcGVjaWZpZWQ/ci52YWx1ZTpudWxsfSxzZS5lc2NhcGU9ZnVuY3Rpb24oZSl7cmV0dXJuKGUrIiIpLnJlcGxhY2UocmUsaWUpfSxzZS5lcnJvcj1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoIlN5bnRheCBlcnJvciwgdW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICIrZSl9LHNlLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj1bXSxyPTAsaT0wO2lmKGw9IWQuZGV0ZWN0RHVwbGljYXRlcyx1PSFkLnNvcnRTdGFibGUmJmUuc2xpY2UoMCksZS5zb3J0KGopLGwpe3doaWxlKHQ9ZVtpKytdKXQ9PT1lW2ldJiYocj1uLnB1c2goaSkpO3doaWxlKHItLSllLnNwbGljZShuW3JdLDEpfXJldHVybiB1PW51bGwsZX0sbz1zZS5nZXRUZXh0PWZ1bmN0aW9uKGUpe3ZhciB0LG49IiIscj0wLGk9ZS5ub2RlVHlwZTtpZihpKXtpZigxPT09aXx8OT09PWl8fDExPT09aSl7aWYoInN0cmluZyI9PXR5cGVvZiBlLnRleHRDb250ZW50KXJldHVybiBlLnRleHRDb250ZW50O2ZvcihlPWUuZmlyc3RDaGlsZDtlO2U9ZS5uZXh0U2libGluZyluKz1vKGUpfWVsc2UgaWYoMz09PWl8fDQ9PT1pKXJldHVybiBlLm5vZGVWYWx1ZX1lbHNlIHdoaWxlKHQ9ZVtyKytdKW4rPW8odCk7cmV0dXJuIG59LChiPXNlLnNlbGVjdG9ycz17Y2FjaGVMZW5ndGg6NTAsY3JlYXRlUHNldWRvOmxlLG1hdGNoOkcsYXR0ckhhbmRsZTp7fSxmaW5kOnt9LHJlbGF0aXZlOnsiPiI6e2RpcjoicGFyZW50Tm9kZSIsZmlyc3Q6ITB9LCIgIjp7ZGlyOiJwYXJlbnROb2RlIn0sIisiOntkaXI6InByZXZpb3VzU2libGluZyIsZmlyc3Q6ITB9LCJ+Ijp7ZGlyOiJwcmV2aW91c1NpYmxpbmcifX0scHJlRmlsdGVyOntBVFRSOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdPWVbMV0ucmVwbGFjZSh0ZSxuZSksZVszXT0oZVszXXx8ZVs0XXx8ZVs1XXx8IiIpLnJlcGxhY2UodGUsbmUpLCJ+PSI9PT1lWzJdJiYoZVszXT0iICIrZVszXSsiICIpLGUuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS50b0xvd2VyQ2FzZSgpLCJudGgiPT09ZVsxXS5zbGljZSgwLDMpPyhlWzNdfHxzZS5lcnJvcihlWzBdKSxlWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWzVdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZzZS5lcnJvcihlWzBdKSxlfSxQU0VVRE86ZnVuY3Rpb24oZSl7dmFyIHQsbj0hZVs2XSYmZVsyXTtyZXR1cm4gRy5DSElMRC50ZXN0KGVbMF0pP251bGw6KGVbM10/ZVsyXT1lWzRdfHxlWzVdfHwiIjpuJiZYLnRlc3QobikmJih0PWgobiwhMCkpJiYodD1uLmluZGV4T2YoIikiLG4ubGVuZ3RoLXQpLW4ubGVuZ3RoKSYmKGVbMF09ZVswXS5zbGljZSgwLHQpLGVbMl09bi5zbGljZSgwLHQpKSxlLnNsaWNlKDAsMykpfX0sZmlsdGVyOntUQUc6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKHRlLG5lKS50b0xvd2VyQ2FzZSgpO3JldHVybiIqIj09PWU/ZnVuY3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oZSl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXR9fSxDTEFTUzpmdW5jdGlvbihlKXt2YXIgdD1tW2UrIiAiXTtyZXR1cm4gdHx8KHQ9bmV3IFJlZ0V4cCgiKF58IitNKyIpIitlKyIoIitNKyJ8JCkiKSkmJm0oZSxmdW5jdGlvbihlKXtyZXR1cm4gdC50ZXN0KCJzdHJpbmciPT10eXBlb2YgZS5jbGFzc05hbWUmJmUuY2xhc3NOYW1lfHwidW5kZWZpbmVkIiE9dHlwZW9mIGUuZ2V0QXR0cmlidXRlJiZlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIpfSl9LEFUVFI6ZnVuY3Rpb24obixyLGkpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdD1zZS5hdHRyKGUsbik7cmV0dXJuIG51bGw9PXQ/IiE9Ij09PXI6IXJ8fCh0Kz0iIiwiPSI9PT1yP3Q9PT1pOiIhPSI9PT1yP3QhPT1pOiJePSI9PT1yP2kmJjA9PT10LmluZGV4T2YoaSk6Iio9Ij09PXI/aSYmLTE8dC5pbmRleE9mKGkpOiIkPSI9PT1yP2kmJnQuc2xpY2UoLWkubGVuZ3RoKT09PWk6In49Ij09PXI/LTE8KCIgIit0LnJlcGxhY2UoQiwiICIpKyIgIikuaW5kZXhPZihpKToifD0iPT09ciYmKHQ9PT1pfHx0LnNsaWNlKDAsaS5sZW5ndGgrMSk9PT1pKyItIikpfX0sQ0hJTEQ6ZnVuY3Rpb24oaCxlLHQsZyx2KXt2YXIgeT0ibnRoIiE9PWguc2xpY2UoMCwzKSxtPSJsYXN0IiE9PWguc2xpY2UoLTQpLHg9Im9mLXR5cGUiPT09ZTtyZXR1cm4gMT09PWcmJjA9PT12P2Z1bmN0aW9uKGUpe3JldHVybiEhZS5wYXJlbnROb2RlfTpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGEscyx1LGw9eSE9PW0/Im5leHRTaWJsaW5nIjoicHJldmlvdXNTaWJsaW5nIixjPWUucGFyZW50Tm9kZSxmPXgmJmUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSxwPSFuJiYheCxkPSExO2lmKGMpe2lmKHkpe3doaWxlKGwpe2E9ZTt3aGlsZShhPWFbbF0paWYoeD9hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1mOjE9PT1hLm5vZGVUeXBlKXJldHVybiExO3U9bD0ib25seSI9PT1oJiYhdSYmIm5leHRTaWJsaW5nIn1yZXR1cm4hMH1pZih1PVttP2MuZmlyc3RDaGlsZDpjLmxhc3RDaGlsZF0sbSYmcCl7ZD0ocz0ocj0oaT0obz0oYT1jKVtTXXx8KGFbU109e30pKVthLnVuaXF1ZUlEXXx8KG9bYS51bmlxdWVJRF09e30pKVtoXXx8W10pWzBdPT09ayYmclsxXSkmJnJbMl0sYT1zJiZjLmNoaWxkTm9kZXNbc107d2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKCkpaWYoMT09PWEubm9kZVR5cGUmJisrZCYmYT09PWUpe2lbaF09W2sscyxkXTticmVha319ZWxzZSBpZihwJiYoZD1zPShyPShpPShvPShhPWUpW1NdfHwoYVtTXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdfHxbXSlbMF09PT1rJiZyWzFdKSwhMT09PWQpd2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKCkpaWYoKHg/YS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09ZjoxPT09YS5ub2RlVHlwZSkmJisrZCYmKHAmJigoaT0obz1hW1NdfHwoYVtTXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdPVtrLGRdKSxhPT09ZSkpYnJlYWs7cmV0dXJuKGQtPXYpPT09Z3x8ZCVnPT0wJiYwPD1kL2d9fX0sUFNFVURPOmZ1bmN0aW9uKGUsbyl7dmFyIHQsYT1iLnBzZXVkb3NbZV18fGIuc2V0RmlsdGVyc1tlLnRvTG93ZXJDYXNlKCldfHxzZS5lcnJvcigidW5zdXBwb3J0ZWQgcHNldWRvOiAiK2UpO3JldHVybiBhW1NdP2Eobyk6MTxhLmxlbmd0aD8odD1bZSxlLCIiLG9dLGIuc2V0RmlsdGVycy5oYXNPd25Qcm9wZXJ0eShlLnRvTG93ZXJDYXNlKCkpP2xlKGZ1bmN0aW9uKGUsdCl7dmFyIG4scj1hKGUsbyksaT1yLmxlbmd0aDt3aGlsZShpLS0pZVtuPVAoZSxyW2ldKV09ISh0W25dPXJbaV0pfSk6ZnVuY3Rpb24oZSl7cmV0dXJuIGEoZSwwLHQpfSk6YX19LHBzZXVkb3M6e25vdDpsZShmdW5jdGlvbihlKXt2YXIgcj1bXSxpPVtdLHM9ZihlLnJlcGxhY2UoJCwiJDEiKSk7cmV0dXJuIHNbU10/bGUoZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbz1zKGUsbnVsbCxyLFtdKSxhPWUubGVuZ3RoO3doaWxlKGEtLSkoaT1vW2FdKSYmKGVbYV09ISh0W2FdPWkpKX0pOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gclswXT1lLHMocixudWxsLG4saSksclswXT1udWxsLCFpLnBvcCgpfX0pLGhhczpsZShmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIDA8c2UodCxlKS5sZW5ndGh9fSksY29udGFpbnM6bGUoZnVuY3Rpb24odCl7cmV0dXJuIHQ9dC5yZXBsYWNlKHRlLG5lKSxmdW5jdGlvbihlKXtyZXR1cm4tMTwoZS50ZXh0Q29udGVudHx8byhlKSkuaW5kZXhPZih0KX19KSxsYW5nOmxlKGZ1bmN0aW9uKG4pe3JldHVybiBWLnRlc3Qobnx8IiIpfHxzZS5lcnJvcigidW5zdXBwb3J0ZWQgbGFuZzogIituKSxuPW4ucmVwbGFjZSh0ZSxuZSkudG9Mb3dlckNhc2UoKSxmdW5jdGlvbihlKXt2YXIgdDtkb3tpZih0PUU/ZS5sYW5nOmUuZ2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIpfHxlLmdldEF0dHJpYnV0ZSgibGFuZyIpKXJldHVybih0PXQudG9Mb3dlckNhc2UoKSk9PT1ufHwwPT09dC5pbmRleE9mKG4rIi0iKX13aGlsZSgoZT1lLnBhcmVudE5vZGUpJiYxPT09ZS5ub2RlVHlwZSk7cmV0dXJuITF9fSksdGFyZ2V0OmZ1bmN0aW9uKGUpe3ZhciB0PW4ubG9jYXRpb24mJm4ubG9jYXRpb24uaGFzaDtyZXR1cm4gdCYmdC5zbGljZSgxKT09PWUuaWR9LHJvb3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1hfSxmb2N1czpmdW5jdGlvbihlKXtyZXR1cm4gZT09PUMuYWN0aXZlRWxlbWVudCYmKCFDLmhhc0ZvY3VzfHxDLmhhc0ZvY3VzKCkpJiYhIShlLnR5cGV8fGUuaHJlZnx8fmUudGFiSW5kZXgpfSxlbmFibGVkOmdlKCExKSxkaXNhYmxlZDpnZSghMCksY2hlY2tlZDpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiEhZS5jaGVja2VkfHwib3B0aW9uIj09PXQmJiEhZS5zZWxlY3RlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxlbXB0eTpmdW5jdGlvbihlKXtmb3IoZT1lLmZpcnN0Q2hpbGQ7ZTtlPWUubmV4dFNpYmxpbmcpaWYoZS5ub2RlVHlwZTw2KXJldHVybiExO3JldHVybiEwfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIWIucHNldWRvcy5lbXB0eShlKX0saGVhZGVyOmZ1bmN0aW9uKGUpe3JldHVybiBKLnRlc3QoZS5ub2RlTmFtZSl9LGlucHV0OmZ1bmN0aW9uKGUpe3JldHVybiBRLnRlc3QoZS5ub2RlTmFtZSl9LGJ1dHRvbjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uIj09PXR9LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmInRleHQiPT09ZS50eXBlJiYobnVsbD09KHQ9ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSl8fCJ0ZXh0Ij09PXQudG9Mb3dlckNhc2UoKSl9LGZpcnN0OnZlKGZ1bmN0aW9uKCl7cmV0dXJuWzBdfSksbGFzdDp2ZShmdW5jdGlvbihlLHQpe3JldHVyblt0LTFdfSksZXE6dmUoZnVuY3Rpb24oZSx0LG4pe3JldHVybltuPDA/bit0Om5dfSksZXZlbjp2ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0wO248dDtuKz0yKWUucHVzaChuKTtyZXR1cm4gZX0pLG9kZDp2ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0xO248dDtuKz0yKWUucHVzaChuKTtyZXR1cm4gZX0pLGx0OnZlKGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9bjwwP24rdDp0PG4/dDpuOzA8PS0tcjspZS5wdXNoKHIpO3JldHVybiBlfSksZ3Q6dmUoZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1uPDA/bit0Om47KytyPHQ7KWUucHVzaChyKTtyZXR1cm4gZX0pfX0pLnBzZXVkb3MubnRoPWIucHNldWRvcy5lcSx7cmFkaW86ITAsY2hlY2tib3g6ITAsZmlsZTohMCxwYXNzd29yZDohMCxpbWFnZTohMH0pYi5wc2V1ZG9zW2VdPWRlKGUpO2ZvcihlIGlue3N1Ym1pdDohMCxyZXNldDohMH0pYi5wc2V1ZG9zW2VdPWhlKGUpO2Z1bmN0aW9uIG1lKCl7fWZ1bmN0aW9uIHhlKGUpe2Zvcih2YXIgdD0wLG49ZS5sZW5ndGgscj0iIjt0PG47dCsrKXIrPWVbdF0udmFsdWU7cmV0dXJuIHJ9ZnVuY3Rpb24gYmUocyxlLHQpe3ZhciB1PWUuZGlyLGw9ZS5uZXh0LGM9bHx8dSxmPXQmJiJwYXJlbnROb2RlIj09PWMscD1yKys7cmV0dXJuIGUuZmlyc3Q/ZnVuY3Rpb24oZSx0LG4pe3doaWxlKGU9ZVt1XSlpZigxPT09ZS5ub2RlVHlwZXx8ZilyZXR1cm4gcyhlLHQsbik7cmV0dXJuITF9OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYT1bayxwXTtpZihuKXt3aGlsZShlPWVbdV0paWYoKDE9PT1lLm5vZGVUeXBlfHxmKSYmcyhlLHQsbikpcmV0dXJuITB9ZWxzZSB3aGlsZShlPWVbdV0paWYoMT09PWUubm9kZVR5cGV8fGYpaWYoaT0obz1lW1NdfHwoZVtTXT17fSkpW2UudW5pcXVlSURdfHwob1tlLnVuaXF1ZUlEXT17fSksbCYmbD09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSllPWVbdV18fGU7ZWxzZXtpZigocj1pW2NdKSYmclswXT09PWsmJnJbMV09PT1wKXJldHVybiBhWzJdPXJbMl07aWYoKGlbY109YSlbMl09cyhlLHQsbikpcmV0dXJuITB9cmV0dXJuITF9fWZ1bmN0aW9uIHdlKGkpe3JldHVybiAxPGkubGVuZ3RoP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcj1pLmxlbmd0aDt3aGlsZShyLS0paWYoIWlbcl0oZSx0LG4pKXJldHVybiExO3JldHVybiEwfTppWzBdfWZ1bmN0aW9uIFRlKGUsdCxuLHIsaSl7Zm9yKHZhciBvLGE9W10scz0wLHU9ZS5sZW5ndGgsbD1udWxsIT10O3M8dTtzKyspKG89ZVtzXSkmJihuJiYhbihvLHIsaSl8fChhLnB1c2gobyksbCYmdC5wdXNoKHMpKSk7cmV0dXJuIGF9ZnVuY3Rpb24gQ2UoZCxoLGcsdix5LGUpe3JldHVybiB2JiYhdltTXSYmKHY9Q2UodikpLHkmJiF5W1NdJiYoeT1DZSh5LGUpKSxsZShmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscz1bXSx1PVtdLGw9dC5sZW5ndGgsYz1lfHxmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPTAsaT10Lmxlbmd0aDtyPGk7cisrKXNlKGUsdFtyXSxuKTtyZXR1cm4gbn0oaHx8IioiLG4ubm9kZVR5cGU/W25dOm4sW10pLGY9IWR8fCFlJiZoP2M6VGUoYyxzLGQsbixyKSxwPWc/eXx8KGU/ZDpsfHx2KT9bXTp0OmY7aWYoZyYmZyhmLHAsbixyKSx2KXtpPVRlKHAsdSksdihpLFtdLG4sciksbz1pLmxlbmd0aDt3aGlsZShvLS0pKGE9aVtvXSkmJihwW3Vbb11dPSEoZlt1W29dXT1hKSl9aWYoZSl7aWYoeXx8ZCl7aWYoeSl7aT1bXSxvPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmaS5wdXNoKGZbb109YSk7eShudWxsLHA9W10saSxyKX1vPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmLTE8KGk9eT9QKGUsYSk6c1tvXSkmJihlW2ldPSEodFtpXT1hKSl9fWVsc2UgcD1UZShwPT09dD9wLnNwbGljZShsLHAubGVuZ3RoKTpwKSx5P3kobnVsbCx0LHAscik6SC5hcHBseSh0LHApfSl9ZnVuY3Rpb24gRWUoZSl7Zm9yKHZhciBpLHQsbixyPWUubGVuZ3RoLG89Yi5yZWxhdGl2ZVtlWzBdLnR5cGVdLGE9b3x8Yi5yZWxhdGl2ZVsiICJdLHM9bz8xOjAsdT1iZShmdW5jdGlvbihlKXtyZXR1cm4gZT09PWl9LGEsITApLGw9YmUoZnVuY3Rpb24oZSl7cmV0dXJuLTE8UChpLGUpfSxhLCEwKSxjPVtmdW5jdGlvbihlLHQsbil7dmFyIHI9IW8mJihufHx0IT09dyl8fCgoaT10KS5ub2RlVHlwZT91KGUsdCxuKTpsKGUsdCxuKSk7cmV0dXJuIGk9bnVsbCxyfV07czxyO3MrKylpZih0PWIucmVsYXRpdmVbZVtzXS50eXBlXSljPVtiZSh3ZShjKSx0KV07ZWxzZXtpZigodD1iLmZpbHRlcltlW3NdLnR5cGVdLmFwcGx5KG51bGwsZVtzXS5tYXRjaGVzKSlbU10pe2ZvcihuPSsrcztuPHI7bisrKWlmKGIucmVsYXRpdmVbZVtuXS50eXBlXSlicmVhaztyZXR1cm4gQ2UoMTxzJiZ3ZShjKSwxPHMmJnhlKGUuc2xpY2UoMCxzLTEpLmNvbmNhdCh7dmFsdWU6IiAiPT09ZVtzLTJdLnR5cGU/IioiOiIifSkpLnJlcGxhY2UoJCwiJDEiKSx0LHM8biYmRWUoZS5zbGljZShzLG4pKSxuPHImJkVlKGU9ZS5zbGljZShuKSksbjxyJiZ4ZShlKSl9Yy5wdXNoKHQpfXJldHVybiB3ZShjKX1yZXR1cm4gbWUucHJvdG90eXBlPWIuZmlsdGVycz1iLnBzZXVkb3MsYi5zZXRGaWx0ZXJzPW5ldyBtZSxoPXNlLnRva2VuaXplPWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpLG8sYSxzLHUsbD14W2UrIiAiXTtpZihsKXJldHVybiB0PzA6bC5zbGljZSgwKTthPWUscz1bXSx1PWIucHJlRmlsdGVyO3doaWxlKGEpe2ZvcihvIGluIG4mJiEocj1fLmV4ZWMoYSkpfHwociYmKGE9YS5zbGljZShyWzBdLmxlbmd0aCl8fGEpLHMucHVzaChpPVtdKSksbj0hMSwocj16LmV4ZWMoYSkpJiYobj1yLnNoaWZ0KCksaS5wdXNoKHt2YWx1ZTpuLHR5cGU6clswXS5yZXBsYWNlKCQsIiAiKX0pLGE9YS5zbGljZShuLmxlbmd0aCkpLGIuZmlsdGVyKSEocj1HW29dLmV4ZWMoYSkpfHx1W29dJiYhKHI9dVtvXShyKSl8fChuPXIuc2hpZnQoKSxpLnB1c2goe3ZhbHVlOm4sdHlwZTpvLG1hdGNoZXM6cn0pLGE9YS5zbGljZShuLmxlbmd0aCkpO2lmKCFuKWJyZWFrfXJldHVybiB0P2EubGVuZ3RoOmE/c2UuZXJyb3IoZSk6eChlLHMpLnNsaWNlKDApfSxmPXNlLmNvbXBpbGU9ZnVuY3Rpb24oZSx0KXt2YXIgbix2LHksbSx4LHIsaT1bXSxvPVtdLGE9QVtlKyIgIl07aWYoIWEpe3R8fCh0PWgoZSkpLG49dC5sZW5ndGg7d2hpbGUobi0tKShhPUVlKHRbbl0pKVtTXT9pLnB1c2goYSk6by5wdXNoKGEpOyhhPUEoZSwodj1vLG09MDwoeT1pKS5sZW5ndGgseD0wPHYubGVuZ3RoLHI9ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdT0wLGw9IjAiLGM9ZSYmW10sZj1bXSxwPXcsZD1lfHx4JiZiLmZpbmQuVEFHKCIqIixpKSxoPWsrPW51bGw9PXA/MTpNYXRoLnJhbmRvbSgpfHwuMSxnPWQubGVuZ3RoO2ZvcihpJiYodz10PT1DfHx0fHxpKTtsIT09ZyYmbnVsbCE9KG89ZFtsXSk7bCsrKXtpZih4JiZvKXthPTAsdHx8by5vd25lckRvY3VtZW50PT1DfHwoVChvKSxuPSFFKTt3aGlsZShzPXZbYSsrXSlpZihzKG8sdHx8QyxuKSl7ci5wdXNoKG8pO2JyZWFrfWkmJihrPWgpfW0mJigobz0hcyYmbykmJnUtLSxlJiZjLnB1c2gobykpfWlmKHUrPWwsbSYmbCE9PXUpe2E9MDt3aGlsZShzPXlbYSsrXSlzKGMsZix0LG4pO2lmKGUpe2lmKDA8dSl3aGlsZShsLS0pY1tsXXx8ZltsXXx8KGZbbF09cS5jYWxsKHIpKTtmPVRlKGYpfUguYXBwbHkocixmKSxpJiYhZSYmMDxmLmxlbmd0aCYmMTx1K3kubGVuZ3RoJiZzZS51bmlxdWVTb3J0KHIpfXJldHVybiBpJiYoaz1oLHc9cCksY30sbT9sZShyKTpyKSkpLnNlbGVjdG9yPWV9cmV0dXJuIGF9LGc9c2Uuc2VsZWN0PWZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD0iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSxjPSFyJiZoKGU9bC5zZWxlY3Rvcnx8ZSk7aWYobj1ufHxbXSwxPT09Yy5sZW5ndGgpe2lmKDI8KG89Y1swXT1jWzBdLnNsaWNlKDApKS5sZW5ndGgmJiJJRCI9PT0oYT1vWzBdKS50eXBlJiY5PT09dC5ub2RlVHlwZSYmRSYmYi5yZWxhdGl2ZVtvWzFdLnR5cGVdKXtpZighKHQ9KGIuZmluZC5JRChhLm1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksdCl8fFtdKVswXSkpcmV0dXJuIG47bCYmKHQ9dC5wYXJlbnROb2RlKSxlPWUuc2xpY2Uoby5zaGlmdCgpLnZhbHVlLmxlbmd0aCl9aT1HLm5lZWRzQ29udGV4dC50ZXN0KGUpPzA6by5sZW5ndGg7d2hpbGUoaS0tKXtpZihhPW9baV0sYi5yZWxhdGl2ZVtzPWEudHlwZV0pYnJlYWs7aWYoKHU9Yi5maW5kW3NdKSYmKHI9dShhLm1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksZWUudGVzdChvWzBdLnR5cGUpJiZ5ZSh0LnBhcmVudE5vZGUpfHx0KSkpe2lmKG8uc3BsaWNlKGksMSksIShlPXIubGVuZ3RoJiZ4ZShvKSkpcmV0dXJuIEguYXBwbHkobixyKSxuO2JyZWFrfX19cmV0dXJuKGx8fGYoZSxjKSkocix0LCFFLG4sIXR8fGVlLnRlc3QoZSkmJnllKHQucGFyZW50Tm9kZSl8fHQpLG59LGQuc29ydFN0YWJsZT1TLnNwbGl0KCIiKS5zb3J0KGopLmpvaW4oIiIpPT09UyxkLmRldGVjdER1cGxpY2F0ZXM9ISFsLFQoKSxkLnNvcnREZXRhY2hlZD1jZShmdW5jdGlvbihlKXtyZXR1cm4gMSZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKEMuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKSl9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxhIGhyZWY9JyMnPjwvYT4iLCIjIj09PWUuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImhyZWYiKX0pfHxmZSgidHlwZXxocmVmfGhlaWdodHx3aWR0aCIsZnVuY3Rpb24oZSx0LG4pe2lmKCFuKXJldHVybiBlLmdldEF0dHJpYnV0ZSh0LCJ0eXBlIj09PXQudG9Mb3dlckNhc2UoKT8xOjIpfSksZC5hdHRyaWJ1dGVzJiZjZShmdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxpbnB1dC8+IixlLmZpcnN0Q2hpbGQuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsIiIpLCIiPT09ZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgidmFsdWUiKX0pfHxmZSgidmFsdWUiLGZ1bmN0aW9uKGUsdCxuKXtpZighbiYmImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSlyZXR1cm4gZS5kZWZhdWx0VmFsdWV9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZS5nZXRBdHRyaWJ1dGUoImRpc2FibGVkIil9KXx8ZmUoUixmdW5jdGlvbihlLHQsbil7dmFyIHI7aWYoIW4pcmV0dXJuITA9PT1lW3RdP3QudG9Mb3dlckNhc2UoKToocj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiZyLnNwZWNpZmllZD9yLnZhbHVlOm51bGx9KSxzZX0oQyk7Uy5maW5kPWQsUy5leHByPWQuc2VsZWN0b3JzLFMuZXhwclsiOiJdPVMuZXhwci5wc2V1ZG9zLFMudW5pcXVlU29ydD1TLnVuaXF1ZT1kLnVuaXF1ZVNvcnQsUy50ZXh0PWQuZ2V0VGV4dCxTLmlzWE1MRG9jPWQuaXNYTUwsUy5jb250YWlucz1kLmNvbnRhaW5zLFMuZXNjYXBlU2VsZWN0b3I9ZC5lc2NhcGU7dmFyIGg9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPVtdLGk9dm9pZCAwIT09bjt3aGlsZSgoZT1lW3RdKSYmOSE9PWUubm9kZVR5cGUpaWYoMT09PWUubm9kZVR5cGUpe2lmKGkmJlMoZSkuaXMobikpYnJlYWs7ci5wdXNoKGUpfXJldHVybiByfSxUPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPVtdO2U7ZT1lLm5leHRTaWJsaW5nKTE9PT1lLm5vZGVUeXBlJiZlIT09dCYmbi5wdXNoKGUpO3JldHVybiBufSxrPVMuZXhwci5tYXRjaC5uZWVkc0NvbnRleHQ7ZnVuY3Rpb24gQShlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10LnRvTG93ZXJDYXNlKCl9dmFyIE49L148KFthLXpdW15cL1wwPjpceDIwXHRcclxuXGZdKilbXHgyMFx0XHJcblxmXSpcLz8+KD86PFwvXDE+fCkkL2k7ZnVuY3Rpb24gaihlLG4scil7cmV0dXJuIG0obik/Uy5ncmVwKGUsZnVuY3Rpb24oZSx0KXtyZXR1cm4hIW4uY2FsbChlLHQsZSkhPT1yfSk6bi5ub2RlVHlwZT9TLmdyZXAoZSxmdW5jdGlvbihlKXtyZXR1cm4gZT09PW4hPT1yfSk6InN0cmluZyIhPXR5cGVvZiBuP1MuZ3JlcChlLGZ1bmN0aW9uKGUpe3JldHVybi0xPGkuY2FsbChuLGUpIT09cn0pOlMuZmlsdGVyKG4sZSxyKX1TLmZpbHRlcj1mdW5jdGlvbihlLHQsbil7dmFyIHI9dFswXTtyZXR1cm4gbiYmKGU9Ijpub3QoIitlKyIpIiksMT09PXQubGVuZ3RoJiYxPT09ci5ub2RlVHlwZT9TLmZpbmQubWF0Y2hlc1NlbGVjdG9yKHIsZSk/W3JdOltdOlMuZmluZC5tYXRjaGVzKGUsUy5ncmVwKHQsZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGVUeXBlfSkpfSxTLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcy5sZW5ndGgsaT10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gdGhpcy5wdXNoU3RhY2soUyhlKS5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodD0wO3Q8cjt0KyspaWYoUy5jb250YWlucyhpW3RdLHRoaXMpKXJldHVybiEwfSkpO2ZvcihuPXRoaXMucHVzaFN0YWNrKFtdKSx0PTA7dDxyO3QrKylTLmZpbmQoZSxpW3RdLG4pO3JldHVybiAxPHI/Uy51bmlxdWVTb3J0KG4pOm59LGZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhaih0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYmay50ZXN0KGUpP1MoZSk6ZXx8W10sITEpLmxlbmd0aH19KTt2YXIgRCxxPS9eKD86XHMqKDxbXHdcV10rPilbXj5dKnwjKFtcdy1dKykpJC87KFMuZm4uaW5pdD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaTtpZighZSlyZXR1cm4gdGhpcztpZihuPW58fEQsInN0cmluZyI9PXR5cGVvZiBlKXtpZighKHI9IjwiPT09ZVswXSYmIj4iPT09ZVtlLmxlbmd0aC0xXSYmMzw9ZS5sZW5ndGg/W251bGwsZSxudWxsXTpxLmV4ZWMoZSkpfHwhclsxXSYmdClyZXR1cm4hdHx8dC5qcXVlcnk/KHR8fG4pLmZpbmQoZSk6dGhpcy5jb25zdHJ1Y3Rvcih0KS5maW5kKGUpO2lmKHJbMV0pe2lmKHQ9dCBpbnN0YW5jZW9mIFM/dFswXTp0LFMubWVyZ2UodGhpcyxTLnBhcnNlSFRNTChyWzFdLHQmJnQubm9kZVR5cGU/dC5vd25lckRvY3VtZW50fHx0OkUsITApKSxOLnRlc3QoclsxXSkmJlMuaXNQbGFpbk9iamVjdCh0KSlmb3IociBpbiB0KW0odGhpc1tyXSk/dGhpc1tyXSh0W3JdKTp0aGlzLmF0dHIocix0W3JdKTtyZXR1cm4gdGhpc31yZXR1cm4oaT1FLmdldEVsZW1lbnRCeUlkKHJbMl0pKSYmKHRoaXNbMF09aSx0aGlzLmxlbmd0aD0xKSx0aGlzfXJldHVybiBlLm5vZGVUeXBlPyh0aGlzWzBdPWUsdGhpcy5sZW5ndGg9MSx0aGlzKTptKGUpP3ZvaWQgMCE9PW4ucmVhZHk/bi5yZWFkeShlKTplKFMpOlMubWFrZUFycmF5KGUsdGhpcyl9KS5wcm90b3R5cGU9Uy5mbixEPVMoRSk7dmFyIEw9L14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sSD17Y2hpbGRyZW46ITAsY29udGVudHM6ITAsbmV4dDohMCxwcmV2OiEwfTtmdW5jdGlvbiBPKGUsdCl7d2hpbGUoKGU9ZVt0XSkmJjEhPT1lLm5vZGVUeXBlKTtyZXR1cm4gZX1TLmZuLmV4dGVuZCh7aGFzOmZ1bmN0aW9uKGUpe3ZhciB0PVMoZSx0aGlzKSxuPXQubGVuZ3RoO3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bjtlKyspaWYoUy5jb250YWlucyh0aGlzLHRbZV0pKXJldHVybiEwfSl9LGNsb3Nlc3Q6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTAsaT10aGlzLmxlbmd0aCxvPVtdLGE9InN0cmluZyIhPXR5cGVvZiBlJiZTKGUpO2lmKCFrLnRlc3QoZSkpZm9yKDtyPGk7cisrKWZvcihuPXRoaXNbcl07biYmbiE9PXQ7bj1uLnBhcmVudE5vZGUpaWYobi5ub2RlVHlwZTwxMSYmKGE/LTE8YS5pbmRleChuKToxPT09bi5ub2RlVHlwZSYmUy5maW5kLm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7by5wdXNoKG4pO2JyZWFrfXJldHVybiB0aGlzLnB1c2hTdGFjaygxPG8ubGVuZ3RoP1MudW5pcXVlU29ydChvKTpvKX0saW5kZXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/InN0cmluZyI9PXR5cGVvZiBlP2kuY2FsbChTKGUpLHRoaXNbMF0pOmkuY2FsbCh0aGlzLGUuanF1ZXJ5P2VbMF06ZSk6dGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlP3RoaXMuZmlyc3QoKS5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soUy51bmlxdWVTb3J0KFMubWVyZ2UodGhpcy5nZXQoKSxTKGUsdCkpKSl9LGFkZEJhY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYWRkKG51bGw9PWU/dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIoZSkpfX0pLFMuZWFjaCh7cGFyZW50OmZ1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdCYmMTEhPT10Lm5vZGVUeXBlP3Q6bnVsbH0scGFyZW50czpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGgoZSwicGFyZW50Tm9kZSIsbil9LG5leHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIE8oZSwibmV4dFNpYmxpbmciKX0scHJldjpmdW5jdGlvbihlKXtyZXR1cm4gTyhlLCJwcmV2aW91c1NpYmxpbmciKX0sbmV4dEFsbDpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJuZXh0U2libGluZyIpfSxwcmV2QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBoKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBoKGUsIm5leHRTaWJsaW5nIixuKX0scHJldlVudGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gaChlLCJwcmV2aW91c1NpYmxpbmciLG4pfSxzaWJsaW5nczpmdW5jdGlvbihlKXtyZXR1cm4gVCgoZS5wYXJlbnROb2RlfHx7fSkuZmlyc3RDaGlsZCxlKX0sY2hpbGRyZW46ZnVuY3Rpb24oZSl7cmV0dXJuIFQoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWUuY29udGVudERvY3VtZW50JiZyKGUuY29udGVudERvY3VtZW50KT9lLmNvbnRlbnREb2N1bWVudDooQShlLCJ0ZW1wbGF0ZSIpJiYoZT1lLmNvbnRlbnR8fGUpLFMubWVyZ2UoW10sZS5jaGlsZE5vZGVzKSl9fSxmdW5jdGlvbihyLGkpe1MuZm5bcl09ZnVuY3Rpb24oZSx0KXt2YXIgbj1TLm1hcCh0aGlzLGksZSk7cmV0dXJuIlVudGlsIiE9PXIuc2xpY2UoLTUpJiYodD1lKSx0JiYic3RyaW5nIj09dHlwZW9mIHQmJihuPVMuZmlsdGVyKHQsbikpLDE8dGhpcy5sZW5ndGgmJihIW3JdfHxTLnVuaXF1ZVNvcnQobiksTC50ZXN0KHIpJiZuLnJldmVyc2UoKSksdGhpcy5wdXNoU3RhY2sobil9fSk7dmFyIFA9L1teXHgyMFx0XHJcblxmXSsvZztmdW5jdGlvbiBSKGUpe3JldHVybiBlfWZ1bmN0aW9uIE0oZSl7dGhyb3cgZX1mdW5jdGlvbiBJKGUsdCxuLHIpe3ZhciBpO3RyeXtlJiZtKGk9ZS5wcm9taXNlKT9pLmNhbGwoZSkuZG9uZSh0KS5mYWlsKG4pOmUmJm0oaT1lLnRoZW4pP2kuY2FsbChlLHQsbik6dC5hcHBseSh2b2lkIDAsW2VdLnNsaWNlKHIpKX1jYXRjaChlKXtuLmFwcGx5KHZvaWQgMCxbZV0pfX1TLkNhbGxiYWNrcz1mdW5jdGlvbihyKXt2YXIgZSxuO3I9InN0cmluZyI9PXR5cGVvZiByPyhlPXIsbj17fSxTLmVhY2goZS5tYXRjaChQKXx8W10sZnVuY3Rpb24oZSx0KXtuW3RdPSEwfSksbik6Uy5leHRlbmQoe30scik7dmFyIGksdCxvLGEscz1bXSx1PVtdLGw9LTEsYz1mdW5jdGlvbigpe2ZvcihhPWF8fHIub25jZSxvPWk9ITA7dS5sZW5ndGg7bD0tMSl7dD11LnNoaWZ0KCk7d2hpbGUoKytsPHMubGVuZ3RoKSExPT09c1tsXS5hcHBseSh0WzBdLHRbMV0pJiZyLnN0b3BPbkZhbHNlJiYobD1zLmxlbmd0aCx0PSExKX1yLm1lbW9yeXx8KHQ9ITEpLGk9ITEsYSYmKHM9dD9bXToiIil9LGY9e2FkZDpmdW5jdGlvbigpe3JldHVybiBzJiYodCYmIWkmJihsPXMubGVuZ3RoLTEsdS5wdXNoKHQpKSxmdW5jdGlvbiBuKGUpe1MuZWFjaChlLGZ1bmN0aW9uKGUsdCl7bSh0KT9yLnVuaXF1ZSYmZi5oYXModCl8fHMucHVzaCh0KTp0JiZ0Lmxlbmd0aCYmInN0cmluZyIhPT13KHQpJiZuKHQpfSl9KGFyZ3VtZW50cyksdCYmIWkmJmMoKSksdGhpc30scmVtb3ZlOmZ1bmN0aW9uKCl7cmV0dXJuIFMuZWFjaChhcmd1bWVudHMsZnVuY3Rpb24oZSx0KXt2YXIgbjt3aGlsZSgtMTwobj1TLmluQXJyYXkodCxzLG4pKSlzLnNwbGljZShuLDEpLG48PWwmJmwtLX0pLHRoaXN9LGhhczpmdW5jdGlvbihlKXtyZXR1cm4gZT8tMTxTLmluQXJyYXkoZSxzKTowPHMubGVuZ3RofSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiBzJiYocz1bXSksdGhpc30sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiBhPXU9W10scz10PSIiLHRoaXN9LGRpc2FibGVkOmZ1bmN0aW9uKCl7cmV0dXJuIXN9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYT11PVtdLHR8fGl8fChzPXQ9IiIpLHRoaXN9LGxvY2tlZDpmdW5jdGlvbigpe3JldHVybiEhYX0sZmlyZVdpdGg6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXx8KHQ9W2UsKHQ9dHx8W10pLnNsaWNlP3Quc2xpY2UoKTp0XSx1LnB1c2godCksaXx8YygpKSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIGYuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFvfX07cmV0dXJuIGZ9LFMuZXh0ZW5kKHtEZWZlcnJlZDpmdW5jdGlvbihlKXt2YXIgbz1bWyJub3RpZnkiLCJwcm9ncmVzcyIsUy5DYWxsYmFja3MoIm1lbW9yeSIpLFMuQ2FsbGJhY2tzKCJtZW1vcnkiKSwyXSxbInJlc29sdmUiLCJkb25lIixTLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxTLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwwLCJyZXNvbHZlZCJdLFsicmVqZWN0IiwiZmFpbCIsUy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksUy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksMSwicmVqZWN0ZWQiXV0saT0icGVuZGluZyIsYT17c3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sYWx3YXlzOmZ1bmN0aW9uKCl7cmV0dXJuIHMuZG9uZShhcmd1bWVudHMpLmZhaWwoYXJndW1lbnRzKSx0aGlzfSwiY2F0Y2giOmZ1bmN0aW9uKGUpe3JldHVybiBhLnRoZW4obnVsbCxlKX0scGlwZTpmdW5jdGlvbigpe3ZhciBpPWFyZ3VtZW50cztyZXR1cm4gUy5EZWZlcnJlZChmdW5jdGlvbihyKXtTLmVhY2gobyxmdW5jdGlvbihlLHQpe3ZhciBuPW0oaVt0WzRdXSkmJmlbdFs0XV07c1t0WzFdXShmdW5jdGlvbigpe3ZhciBlPW4mJm4uYXBwbHkodGhpcyxhcmd1bWVudHMpO2UmJm0oZS5wcm9taXNlKT9lLnByb21pc2UoKS5wcm9ncmVzcyhyLm5vdGlmeSkuZG9uZShyLnJlc29sdmUpLmZhaWwoci5yZWplY3QpOnJbdFswXSsiV2l0aCJdKHRoaXMsbj9bZV06YXJndW1lbnRzKX0pfSksaT1udWxsfSkucHJvbWlzZSgpfSx0aGVuOmZ1bmN0aW9uKHQsbixyKXt2YXIgdT0wO2Z1bmN0aW9uIGwoaSxvLGEscyl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49dGhpcyxyPWFyZ3VtZW50cyxlPWZ1bmN0aW9uKCl7dmFyIGUsdDtpZighKGk8dSkpe2lmKChlPWEuYXBwbHkobixyKSk9PT1vLnByb21pc2UoKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJUaGVuYWJsZSBzZWxmLXJlc29sdXRpb24iKTt0PWUmJigib2JqZWN0Ij09dHlwZW9mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlKSYmZS50aGVuLG0odCk/cz90LmNhbGwoZSxsKHUsbyxSLHMpLGwodSxvLE0scykpOih1KyssdC5jYWxsKGUsbCh1LG8sUixzKSxsKHUsbyxNLHMpLGwodSxvLFIsby5ub3RpZnlXaXRoKSkpOihhIT09UiYmKG49dm9pZCAwLHI9W2VdKSwoc3x8by5yZXNvbHZlV2l0aCkobixyKSl9fSx0PXM/ZTpmdW5jdGlvbigpe3RyeXtlKCl9Y2F0Y2goZSl7Uy5EZWZlcnJlZC5leGNlcHRpb25Ib29rJiZTLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2soZSx0LnN0YWNrVHJhY2UpLHU8PWkrMSYmKGEhPT1NJiYobj12b2lkIDAscj1bZV0pLG8ucmVqZWN0V2l0aChuLHIpKX19O2k/dCgpOihTLkRlZmVycmVkLmdldFN0YWNrSG9vayYmKHQuc3RhY2tUcmFjZT1TLkRlZmVycmVkLmdldFN0YWNrSG9vaygpKSxDLnNldFRpbWVvdXQodCkpfX1yZXR1cm4gUy5EZWZlcnJlZChmdW5jdGlvbihlKXtvWzBdWzNdLmFkZChsKDAsZSxtKHIpP3I6UixlLm5vdGlmeVdpdGgpKSxvWzFdWzNdLmFkZChsKDAsZSxtKHQpP3Q6UikpLG9bMl1bM10uYWRkKGwoMCxlLG0obik/bjpNKSl9KS5wcm9taXNlKCl9LHByb21pc2U6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWU/Uy5leHRlbmQoZSxhKTphfX0scz17fTtyZXR1cm4gUy5lYWNoKG8sZnVuY3Rpb24oZSx0KXt2YXIgbj10WzJdLHI9dFs1XTthW3RbMV1dPW4uYWRkLHImJm4uYWRkKGZ1bmN0aW9uKCl7aT1yfSxvWzMtZV1bMl0uZGlzYWJsZSxvWzMtZV1bM10uZGlzYWJsZSxvWzBdWzJdLmxvY2ssb1swXVszXS5sb2NrKSxuLmFkZCh0WzNdLmZpcmUpLHNbdFswXV09ZnVuY3Rpb24oKXtyZXR1cm4gc1t0WzBdKyJXaXRoIl0odGhpcz09PXM/dm9pZCAwOnRoaXMsYXJndW1lbnRzKSx0aGlzfSxzW3RbMF0rIldpdGgiXT1uLmZpcmVXaXRofSksYS5wcm9taXNlKHMpLGUmJmUuY2FsbChzLHMpLHN9LHdoZW46ZnVuY3Rpb24oZSl7dmFyIG49YXJndW1lbnRzLmxlbmd0aCx0PW4scj1BcnJheSh0KSxpPXMuY2FsbChhcmd1bWVudHMpLG89Uy5EZWZlcnJlZCgpLGE9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JbdF09dGhpcyxpW3RdPTE8YXJndW1lbnRzLmxlbmd0aD9zLmNhbGwoYXJndW1lbnRzKTplLC0tbnx8by5yZXNvbHZlV2l0aChyLGkpfX07aWYobjw9MSYmKEkoZSxvLmRvbmUoYSh0KSkucmVzb2x2ZSxvLnJlamVjdCwhbiksInBlbmRpbmciPT09by5zdGF0ZSgpfHxtKGlbdF0mJmlbdF0udGhlbikpKXJldHVybiBvLnRoZW4oKTt3aGlsZSh0LS0pSShpW3RdLGEodCksby5yZWplY3QpO3JldHVybiBvLnByb21pc2UoKX19KTt2YXIgVz0vXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8VHlwZXxVUkkpRXJyb3IkLztTLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2s9ZnVuY3Rpb24oZSx0KXtDLmNvbnNvbGUmJkMuY29uc29sZS53YXJuJiZlJiZXLnRlc3QoZS5uYW1lKSYmQy5jb25zb2xlLndhcm4oImpRdWVyeS5EZWZlcnJlZCBleGNlcHRpb246ICIrZS5tZXNzYWdlLGUuc3RhY2ssdCl9LFMucmVhZHlFeGNlcHRpb249ZnVuY3Rpb24oZSl7Qy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfTt2YXIgRj1TLkRlZmVycmVkKCk7ZnVuY3Rpb24gQigpe0UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsQiksQy5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixCKSxTLnJlYWR5KCl9Uy5mbi5yZWFkeT1mdW5jdGlvbihlKXtyZXR1cm4gRi50aGVuKGUpWyJjYXRjaCJdKGZ1bmN0aW9uKGUpe1MucmVhZHlFeGNlcHRpb24oZSl9KSx0aGlzfSxTLmV4dGVuZCh7aXNSZWFkeTohMSxyZWFkeVdhaXQ6MSxyZWFkeTpmdW5jdGlvbihlKXsoITA9PT1lPy0tUy5yZWFkeVdhaXQ6Uy5pc1JlYWR5KXx8KFMuaXNSZWFkeT0hMCkhPT1lJiYwPC0tUy5yZWFkeVdhaXR8fEYucmVzb2x2ZVdpdGgoRSxbU10pfX0pLFMucmVhZHkudGhlbj1GLnRoZW4sImNvbXBsZXRlIj09PUUucmVhZHlTdGF0ZXx8ImxvYWRpbmciIT09RS5yZWFkeVN0YXRlJiYhRS5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGw/Qy5zZXRUaW1lb3V0KFMucmVhZHkpOihFLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLEIpLEMuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsQikpO3ZhciAkPWZ1bmN0aW9uKGUsdCxuLHIsaSxvLGEpe3ZhciBzPTAsdT1lLmxlbmd0aCxsPW51bGw9PW47aWYoIm9iamVjdCI9PT13KG4pKWZvcihzIGluIGk9ITAsbikkKGUsdCxzLG5bc10sITAsbyxhKTtlbHNlIGlmKHZvaWQgMCE9PXImJihpPSEwLG0ocil8fChhPSEwKSxsJiYoYT8odC5jYWxsKGUsciksdD1udWxsKToobD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGwoUyhlKSxuKX0pKSx0KSlmb3IoO3M8dTtzKyspdChlW3NdLG4sYT9yOnIuY2FsbChlW3NdLHMsdChlW3NdLG4pKSk7cmV0dXJuIGk/ZTpsP3QuY2FsbChlKTp1P3QoZVswXSxuKTpvfSxfPS9eLW1zLS8sej0vLShbYS16XSkvZztmdW5jdGlvbiBVKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mdW5jdGlvbiBYKGUpe3JldHVybiBlLnJlcGxhY2UoXywibXMtIikucmVwbGFjZSh6LFUpfXZhciBWPWZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZXx8OT09PWUubm9kZVR5cGV8fCErZS5ub2RlVHlwZX07ZnVuY3Rpb24gRygpe3RoaXMuZXhwYW5kbz1TLmV4cGFuZG8rRy51aWQrK31HLnVpZD0xLEcucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHR8fCh0PXt9LFYoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9KSkpLHR9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdClpW1godCldPW47ZWxzZSBmb3IociBpbiB0KWlbWChyKV09dFtyXTtyZXR1cm4gaX0sZ2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtYKHQpXX0sYWNjZXNzOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkIDA9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmdW5jdGlvbihlLHQpe3ZhciBuLHI9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PXIpe2lmKHZvaWQgMCE9PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChYKToodD1YKHQpKWluIHI/W3RdOnQubWF0Y2goUCl8fFtdKS5sZW5ndGg7d2hpbGUobi0tKWRlbGV0ZSByW3Rbbl1dfSh2b2lkIDA9PT10fHxTLmlzRW1wdHlPYmplY3QocikpJiYoZS5ub2RlVHlwZT9lW3RoaXMuZXhwYW5kb109dm9pZCAwOmRlbGV0ZSBlW3RoaXMuZXhwYW5kb10pfX0saGFzRGF0YTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHZvaWQgMCE9PXQmJiFTLmlzRW1wdHlPYmplY3QodCl9fTt2YXIgWT1uZXcgRyxRPW5ldyBHLEo9L14oPzpce1tcd1xXXSpcfXxcW1tcd1xXXSpcXSkkLyxLPS9bQS1aXS9nO2Z1bmN0aW9uIFooZSx0LG4pe3ZhciByLGk7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpaWYocj0iZGF0YS0iK3QucmVwbGFjZShLLCItJCYiKS50b0xvd2VyQ2FzZSgpLCJzdHJpbmciPT10eXBlb2Yobj1lLmdldEF0dHJpYnV0ZShyKSkpe3RyeXtuPSJ0cnVlIj09PShpPW4pfHwiZmFsc2UiIT09aSYmKCJudWxsIj09PWk/bnVsbDppPT09K2krIiI/K2k6Si50ZXN0KGkpP0pTT04ucGFyc2UoaSk6aSl9Y2F0Y2goZSl7fVEuc2V0KGUsdCxuKX1lbHNlIG49dm9pZCAwO3JldHVybiBufVMuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiBRLmhhc0RhdGEoZSl8fFkuaGFzRGF0YShlKX0sZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIFEuYWNjZXNzKGUsdCxuKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1EucmVtb3ZlKGUsdCl9LF9kYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gWS5hY2Nlc3MoZSx0LG4pfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1kucmVtb3ZlKGUsdCl9fSksUy5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24obixlKXt2YXIgdCxyLGksbz10aGlzWzBdLGE9byYmby5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PW4pe2lmKHRoaXMubGVuZ3RoJiYoaT1RLmdldChvKSwxPT09by5ub2RlVHlwZSYmIVkuZ2V0KG8sImhhc0RhdGFBdHRycyIpKSl7dD1hLmxlbmd0aDt3aGlsZSh0LS0pYVt0XSYmMD09PShyPWFbdF0ubmFtZSkuaW5kZXhPZigiZGF0YS0iKSYmKHI9WChyLnNsaWNlKDUpKSxaKG8scixpW3JdKSk7WS5zZXQobywiaGFzRGF0YUF0dHJzIiwhMCl9cmV0dXJuIGl9cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBuP3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXMsbil9KTokKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ7aWYobyYmdm9pZCAwPT09ZSlyZXR1cm4gdm9pZCAwIT09KHQ9US5nZXQobyxuKSk/dDp2b2lkIDAhPT0odD1aKG8sbikpP3Q6dm9pZCAwO3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXMsbixlKX0pfSxudWxsLGUsMTxhcmd1bWVudHMubGVuZ3RoLG51bGwsITApfSxyZW1vdmVEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtRLnJlbW92ZSh0aGlzLGUpfSl9fSksUy5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZihlKXJldHVybiB0PSh0fHwiZngiKSsicXVldWUiLHI9WS5nZXQoZSx0KSxuJiYoIXJ8fEFycmF5LmlzQXJyYXkobik/cj1ZLmFjY2VzcyhlLHQsUy5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3Rpb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49Uy5xdWV1ZShlLHQpLHI9bi5sZW5ndGgsaT1uLnNoaWZ0KCksbz1TLl9xdWV1ZUhvb2tzKGUsdCk7ImlucHJvZ3Jlc3MiPT09aSYmKGk9bi5zaGlmdCgpLHItLSksaSYmKCJmeCI9PT10JiZuLnVuc2hpZnQoImlucHJvZ3Jlc3MiKSxkZWxldGUgby5zdG9wLGkuY2FsbChlLGZ1bmN0aW9uKCl7Uy5kZXF1ZXVlKGUsdCl9LG8pKSwhciYmbyYmby5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dCsicXVldWVIb29rcyI7cmV0dXJuIFkuZ2V0KGUsbil8fFkuYWNjZXNzKGUsbix7ZW1wdHk6Uy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCl7WS5yZW1vdmUoZSxbdCsicXVldWUiLG5dKX0pfSl9fSksUy5mbi5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKHQsbil7dmFyIGU9MjtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIHQmJihuPXQsdD0iZngiLGUtLSksYXJndW1lbnRzLmxlbmd0aDxlP1MucXVldWUodGhpc1swXSx0KTp2b2lkIDA9PT1uP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9Uy5xdWV1ZSh0aGlzLHQsbik7Uy5fcXVldWVIb29rcyh0aGlzLHQpLCJmeCI9PT10JiYiaW5wcm9ncmVzcyIhPT1lWzBdJiZTLmRlcXVldWUodGhpcyx0KX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtTLmRlcXVldWUodGhpcyxlKX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnF1ZXVlKGV8fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0xLGk9Uy5EZWZlcnJlZCgpLG89dGhpcyxhPXRoaXMubGVuZ3RoLHM9ZnVuY3Rpb24oKXstLXJ8fGkucmVzb2x2ZVdpdGgobyxbb10pfTsic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLGU9ZXx8ImZ4Ijt3aGlsZShhLS0pKG49WS5nZXQob1thXSxlKyJxdWV1ZUhvb2tzIikpJiZuLmVtcHR5JiYocisrLG4uZW1wdHkuYWRkKHMpKTtyZXR1cm4gcygpLGkucHJvbWlzZSh0KX19KTt2YXIgZWU9L1srLV0/KD86XGQqXC58KVxkKyg/OltlRV1bKy1dP1xkK3wpLy5zb3VyY2UsdGU9bmV3IFJlZ0V4cCgiXig/OihbKy1dKT18KSgiK2VlKyIpKFthLXolXSopJCIsImkiKSxuZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdLHJlPUUuZG9jdW1lbnRFbGVtZW50LGllPWZ1bmN0aW9uKGUpe3JldHVybiBTLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKX0sb2U9e2NvbXBvc2VkOiEwfTtyZS5nZXRSb290Tm9kZSYmKGllPWZ1bmN0aW9uKGUpe3JldHVybiBTLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKXx8ZS5nZXRSb290Tm9kZShvZSk9PT1lLm93bmVyRG9jdW1lbnR9KTt2YXIgYWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4ibm9uZSI9PT0oZT10fHxlKS5zdHlsZS5kaXNwbGF5fHwiIj09PWUuc3R5bGUuZGlzcGxheSYmaWUoZSkmJiJub25lIj09PVMuY3NzKGUsImRpc3BsYXkiKX07ZnVuY3Rpb24gc2UoZSx0LG4scil7dmFyIGksbyxhPTIwLHM9cj9mdW5jdGlvbigpe3JldHVybiByLmN1cigpfTpmdW5jdGlvbigpe3JldHVybiBTLmNzcyhlLHQsIiIpfSx1PXMoKSxsPW4mJm5bM118fChTLmNzc051bWJlclt0XT8iIjoicHgiKSxjPWUubm9kZVR5cGUmJihTLmNzc051bWJlclt0XXx8InB4IiE9PWwmJit1KSYmdGUuZXhlYyhTLmNzcyhlLHQpKTtpZihjJiZjWzNdIT09bCl7dS89MixsPWx8fGNbM10sYz0rdXx8MTt3aGlsZShhLS0pUy5zdHlsZShlLHQsYytsKSwoMS1vKSooMS0obz1zKCkvdXx8LjUpKTw9MCYmKGE9MCksYy89bztjKj0yLFMuc3R5bGUoZSx0LGMrbCksbj1ufHxbXX1yZXR1cm4gbiYmKGM9K2N8fCt1fHwwLGk9blsxXT9jKyhuWzFdKzEpKm5bMl06K25bMl0sciYmKHIudW5pdD1sLHIuc3RhcnQ9YyxyLmVuZD1pKSksaX12YXIgdWU9e307ZnVuY3Rpb24gbGUoZSx0KXtmb3IodmFyIG4scixpLG8sYSxzLHUsbD1bXSxjPTAsZj1lLmxlbmd0aDtjPGY7YysrKShyPWVbY10pLnN0eWxlJiYobj1yLnN0eWxlLmRpc3BsYXksdD8oIm5vbmUiPT09biYmKGxbY109WS5nZXQociwiZGlzcGxheSIpfHxudWxsLGxbY118fChyLnN0eWxlLmRpc3BsYXk9IiIpKSwiIj09PXIuc3R5bGUuZGlzcGxheSYmYWUocikmJihsW2NdPSh1PWE9bz12b2lkIDAsYT0oaT1yKS5vd25lckRvY3VtZW50LHM9aS5ub2RlTmFtZSwodT11ZVtzXSl8fChvPWEuYm9keS5hcHBlbmRDaGlsZChhLmNyZWF0ZUVsZW1lbnQocykpLHU9Uy5jc3MobywiZGlzcGxheSIpLG8ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvKSwibm9uZSI9PT11JiYodT0iYmxvY2siKSx1ZVtzXT11KSkpKToibm9uZSIhPT1uJiYobFtjXT0ibm9uZSIsWS5zZXQociwiZGlzcGxheSIsbikpKTtmb3IoYz0wO2M8ZjtjKyspbnVsbCE9bFtjXSYmKGVbY10uc3R5bGUuZGlzcGxheT1sW2NdKTtyZXR1cm4gZX1TLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbigpe3JldHVybiBsZSh0aGlzLCEwKX0saGlkZTpmdW5jdGlvbigpe3JldHVybiBsZSh0aGlzKX0sdG9nZ2xlOmZ1bmN0aW9uKGUpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGU/ZT90aGlzLnNob3coKTp0aGlzLmhpZGUoKTp0aGlzLmVhY2goZnVuY3Rpb24oKXthZSh0aGlzKT9TKHRoaXMpLnNob3coKTpTKHRoaXMpLmhpZGUoKX0pfX0pO3ZhciBjZSxmZSxwZT0vXig/OmNoZWNrYm94fHJhZGlvKSQvaSxkZT0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKikvaSxoZT0vXiR8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2k7Y2U9RS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoRS5jcmVhdGVFbGVtZW50KCJkaXYiKSksKGZlPUUuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSkuc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSxmZS5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCJjaGVja2VkIiksZmUuc2V0QXR0cmlidXRlKCJuYW1lIiwidCIpLGNlLmFwcGVuZENoaWxkKGZlKSx5LmNoZWNrQ2xvbmU9Y2UuY2xvbmVOb2RlKCEwKS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5jaGVja2VkLGNlLmlubmVySFRNTD0iPHRleHRhcmVhPng8L3RleHRhcmVhPiIseS5ub0Nsb25lQ2hlY2tlZD0hIWNlLmNsb25lTm9kZSghMCkubGFzdENoaWxkLmRlZmF1bHRWYWx1ZSxjZS5pbm5lckhUTUw9IjxvcHRpb24+PC9vcHRpb24+Iix5Lm9wdGlvbj0hIWNlLmxhc3RDaGlsZDt2YXIgZ2U9e3RoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtmdW5jdGlvbiB2ZShlLHQpe3ZhciBuO3JldHVybiBuPSJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZT9lLmdldEVsZW1lbnRzQnlUYWdOYW1lKHR8fCIqIik6InVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKHR8fCIqIik6W10sdm9pZCAwPT09dHx8dCYmQShlLHQpP1MubWVyZ2UoW2VdLG4pOm59ZnVuY3Rpb24geWUoZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspWS5zZXQoZVtuXSwiZ2xvYmFsRXZhbCIsIXR8fFkuZ2V0KHRbbl0sImdsb2JhbEV2YWwiKSl9Z2UudGJvZHk9Z2UudGZvb3Q9Z2UuY29sZ3JvdXA9Z2UuY2FwdGlvbj1nZS50aGVhZCxnZS50aD1nZS50ZCx5Lm9wdGlvbnx8KGdlLm9wdGdyb3VwPWdlLm9wdGlvbj1bMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdKTt2YXIgbWU9Lzx8JiM/XHcrOy87ZnVuY3Rpb24geGUoZSx0LG4scixpKXtmb3IodmFyIG8sYSxzLHUsbCxjLGY9dC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkscD1bXSxkPTAsaD1lLmxlbmd0aDtkPGg7ZCsrKWlmKChvPWVbZF0pfHwwPT09bylpZigib2JqZWN0Ij09PXcobykpUy5tZXJnZShwLG8ubm9kZVR5cGU/W29dOm8pO2Vsc2UgaWYobWUudGVzdChvKSl7YT1hfHxmLmFwcGVuZENoaWxkKHQuY3JlYXRlRWxlbWVudCgiZGl2IikpLHM9KGRlLmV4ZWMobyl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCksdT1nZVtzXXx8Z2UuX2RlZmF1bHQsYS5pbm5lckhUTUw9dVsxXStTLmh0bWxQcmVmaWx0ZXIobykrdVsyXSxjPXVbMF07d2hpbGUoYy0tKWE9YS5sYXN0Q2hpbGQ7Uy5tZXJnZShwLGEuY2hpbGROb2RlcyksKGE9Zi5maXJzdENoaWxkKS50ZXh0Q29udGVudD0iIn1lbHNlIHAucHVzaCh0LmNyZWF0ZVRleHROb2RlKG8pKTtmLnRleHRDb250ZW50PSIiLGQ9MDt3aGlsZShvPXBbZCsrXSlpZihyJiYtMTxTLmluQXJyYXkobyxyKSlpJiZpLnB1c2gobyk7ZWxzZSBpZihsPWllKG8pLGE9dmUoZi5hcHBlbmRDaGlsZChvKSwic2NyaXB0IiksbCYmeWUoYSksbil7Yz0wO3doaWxlKG89YVtjKytdKWhlLnRlc3Qoby50eXBlfHwiIikmJm4ucHVzaChvKX1yZXR1cm4gZn12YXIgYmU9L14oW14uXSopKD86XC4oLispfCkvO2Z1bmN0aW9uIHdlKCl7cmV0dXJuITB9ZnVuY3Rpb24gVGUoKXtyZXR1cm4hMX1mdW5jdGlvbiBDZShlLHQpe3JldHVybiBlPT09ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIEUuYWN0aXZlRWxlbWVudH1jYXRjaChlKXt9fSgpPT0oImZvY3VzIj09PXQpfWZ1bmN0aW9uIEVlKGUsdCxuLHIsaSxvKXt2YXIgYSxzO2lmKCJvYmplY3QiPT10eXBlb2YgdCl7Zm9yKHMgaW4ic3RyaW5nIiE9dHlwZW9mIG4mJihyPXJ8fG4sbj12b2lkIDApLHQpRWUoZSxzLG4scix0W3NdLG8pO3JldHVybiBlfWlmKG51bGw9PXImJm51bGw9PWk/KGk9bixyPW49dm9pZCAwKTpudWxsPT1pJiYoInN0cmluZyI9PXR5cGVvZiBuPyhpPXIscj12b2lkIDApOihpPXIscj1uLG49dm9pZCAwKSksITE9PT1pKWk9VGU7ZWxzZSBpZighaSlyZXR1cm4gZTtyZXR1cm4gMT09PW8mJihhPWksKGk9ZnVuY3Rpb24oZSl7cmV0dXJuIFMoKS5vZmYoZSksYS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KS5ndWlkPWEuZ3VpZHx8KGEuZ3VpZD1TLmd1aWQrKykpLGUuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQuYWRkKHRoaXMsdCxpLHIsbil9KX1mdW5jdGlvbiBTZShlLGksbyl7bz8oWS5zZXQoZSxpLCExKSxTLmV2ZW50LmFkZChlLGkse25hbWVzcGFjZTohMSxoYW5kbGVyOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj1ZLmdldCh0aGlzLGkpO2lmKDEmZS5pc1RyaWdnZXImJnRoaXNbaV0pe2lmKHIubGVuZ3RoKShTLmV2ZW50LnNwZWNpYWxbaV18fHt9KS5kZWxlZ2F0ZVR5cGUmJmUuc3RvcFByb3BhZ2F0aW9uKCk7ZWxzZSBpZihyPXMuY2FsbChhcmd1bWVudHMpLFkuc2V0KHRoaXMsaSxyKSx0PW8odGhpcyxpKSx0aGlzW2ldKCksciE9PShuPVkuZ2V0KHRoaXMsaSkpfHx0P1kuc2V0KHRoaXMsaSwhMSk6bj17fSxyIT09bilyZXR1cm4gZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSxlLnByZXZlbnREZWZhdWx0KCksbiYmbi52YWx1ZX1lbHNlIHIubGVuZ3RoJiYoWS5zZXQodGhpcyxpLHt2YWx1ZTpTLmV2ZW50LnRyaWdnZXIoUy5leHRlbmQoclswXSxTLkV2ZW50LnByb3RvdHlwZSksci5zbGljZSgxKSx0aGlzKX0pLGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpfX0pKTp2b2lkIDA9PT1ZLmdldChlLGkpJiZTLmV2ZW50LmFkZChlLGksd2UpfVMuZXZlbnQ9e2dsb2JhbDp7fSxhZGQ6ZnVuY3Rpb24odCxlLG4scixpKXt2YXIgbyxhLHMsdSxsLGMsZixwLGQsaCxnLHY9WS5nZXQodCk7aWYoVih0KSl7bi5oYW5kbGVyJiYobj0obz1uKS5oYW5kbGVyLGk9by5zZWxlY3RvciksaSYmUy5maW5kLm1hdGNoZXNTZWxlY3RvcihyZSxpKSxuLmd1aWR8fChuLmd1aWQ9Uy5ndWlkKyspLCh1PXYuZXZlbnRzKXx8KHU9di5ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKSksKGE9di5oYW5kbGUpfHwoYT12LmhhbmRsZT1mdW5jdGlvbihlKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIFMmJlMuZXZlbnQudHJpZ2dlcmVkIT09ZS50eXBlP1MuZXZlbnQuZGlzcGF0Y2guYXBwbHkodCxhcmd1bWVudHMpOnZvaWQgMH0pLGw9KGU9KGV8fCIiKS5tYXRjaChQKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtLSlkPWc9KHM9YmUuZXhlYyhlW2xdKXx8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxkJiYoZj1TLmV2ZW50LnNwZWNpYWxbZF18fHt9LGQ9KGk/Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGQsZj1TLmV2ZW50LnNwZWNpYWxbZF18fHt9LGM9Uy5leHRlbmQoe3R5cGU6ZCxvcmlnVHlwZTpnLGRhdGE6cixoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6aSxuZWVkc0NvbnRleHQ6aSYmUy5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KGkpLG5hbWVzcGFjZTpoLmpvaW4oIi4iKX0sbyksKHA9dVtkXSl8fCgocD11W2RdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZi5zZXR1cCYmITEhPT1mLnNldHVwLmNhbGwodCxyLGgsYSl8fHQuYWRkRXZlbnRMaXN0ZW5lciYmdC5hZGRFdmVudExpc3RlbmVyKGQsYSkpLGYuYWRkJiYoZi5hZGQuY2FsbCh0LGMpLGMuaGFuZGxlci5ndWlkfHwoYy5oYW5kbGVyLmd1aWQ9bi5ndWlkKSksaT9wLnNwbGljZShwLmRlbGVnYXRlQ291bnQrKywwLGMpOnAucHVzaChjKSxTLmV2ZW50Lmdsb2JhbFtkXT0hMCl9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdSxsLGMsZixwLGQsaCxnLHY9WS5oYXNEYXRhKGUpJiZZLmdldChlKTtpZih2JiYodT12LmV2ZW50cykpe2w9KHQ9KHR8fCIiKS5tYXRjaChQKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtLSlpZihkPWc9KHM9YmUuZXhlYyh0W2xdKXx8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxkKXtmPVMuZXZlbnQuc3BlY2lhbFtkXXx8e30scD11W2Q9KHI/Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGRdfHxbXSxzPXNbMl0mJm5ldyBSZWdFeHAoIihefFxcLikiK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIiksYT1vPXAubGVuZ3RoO3doaWxlKG8tLSljPXBbb10sIWkmJmchPT1jLm9yaWdUeXBlfHxuJiZuLmd1aWQhPT1jLmd1aWR8fHMmJiFzLnRlc3QoYy5uYW1lc3BhY2UpfHxyJiZyIT09Yy5zZWxlY3RvciYmKCIqKiIhPT1yfHwhYy5zZWxlY3Rvcil8fChwLnNwbGljZShvLDEpLGMuc2VsZWN0b3ImJnAuZGVsZWdhdGVDb3VudC0tLGYucmVtb3ZlJiZmLnJlbW92ZS5jYWxsKGUsYykpO2EmJiFwLmxlbmd0aCYmKGYudGVhcmRvd24mJiExIT09Zi50ZWFyZG93bi5jYWxsKGUsaCx2LmhhbmRsZSl8fFMucmVtb3ZlRXZlbnQoZSxkLHYuaGFuZGxlKSxkZWxldGUgdVtkXSl9ZWxzZSBmb3IoZCBpbiB1KVMuZXZlbnQucmVtb3ZlKGUsZCt0W2xdLG4sciwhMCk7Uy5pc0VtcHR5T2JqZWN0KHUpJiZZLnJlbW92ZShlLCJoYW5kbGUgZXZlbnRzIil9fSxkaXNwYXRjaDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaSxvLGEscz1uZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aCksdT1TLmV2ZW50LmZpeChlKSxsPShZLmdldCh0aGlzLCJldmVudHMiKXx8T2JqZWN0LmNyZWF0ZShudWxsKSlbdS50eXBlXXx8W10sYz1TLmV2ZW50LnNwZWNpYWxbdS50eXBlXXx8e307Zm9yKHNbMF09dSx0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKylzW3RdPWFyZ3VtZW50c1t0XTtpZih1LmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWMucHJlRGlzcGF0Y2h8fCExIT09Yy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsdSkpe2E9Uy5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsdSxsKSx0PTA7d2hpbGUoKGk9YVt0KytdKSYmIXUuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7dS5jdXJyZW50VGFyZ2V0PWkuZWxlbSxuPTA7d2hpbGUoKG89aS5oYW5kbGVyc1tuKytdKSYmIXUuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSl1LnJuYW1lc3BhY2UmJiExIT09by5uYW1lc3BhY2UmJiF1LnJuYW1lc3BhY2UudGVzdChvLm5hbWVzcGFjZSl8fCh1LmhhbmRsZU9iaj1vLHUuZGF0YT1vLmRhdGEsdm9pZCAwIT09KHI9KChTLmV2ZW50LnNwZWNpYWxbby5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fG8uaGFuZGxlcikuYXBwbHkoaS5lbGVtLHMpKSYmITE9PT0odS5yZXN1bHQ9cikmJih1LnByZXZlbnREZWZhdWx0KCksdS5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBjLnBvc3REaXNwYXRjaCYmYy5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLHUpLHUucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbyxhLHM9W10sdT10LmRlbGVnYXRlQ291bnQsbD1lLnRhcmdldDtpZih1JiZsLm5vZGVUeXBlJiYhKCJjbGljayI9PT1lLnR5cGUmJjE8PWUuYnV0dG9uKSlmb3IoO2whPT10aGlzO2w9bC5wYXJlbnROb2RlfHx0aGlzKWlmKDE9PT1sLm5vZGVUeXBlJiYoImNsaWNrIiE9PWUudHlwZXx8ITAhPT1sLmRpc2FibGVkKSl7Zm9yKG89W10sYT17fSxuPTA7bjx1O24rKyl2b2lkIDA9PT1hW2k9KHI9dFtuXSkuc2VsZWN0b3IrIiAiXSYmKGFbaV09ci5uZWVkc0NvbnRleHQ/LTE8UyhpLHRoaXMpLmluZGV4KGwpOlMuZmluZChpLHRoaXMsbnVsbCxbbF0pLmxlbmd0aCksYVtpXSYmby5wdXNoKHIpO28ubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczpvfSl9cmV0dXJuIGw9dGhpcyx1PHQubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczp0LnNsaWNlKHUpfSksc30sYWRkUHJvcDpmdW5jdGlvbih0LGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShTLkV2ZW50LnByb3RvdHlwZSx0LHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6bShlKT9mdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gZSh0aGlzLm9yaWdpbmFsRXZlbnQpfTpmdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gdGhpcy5vcmlnaW5hbEV2ZW50W3RdfSxzZXQ6ZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZX0pfX0pfSxmaXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbUy5leHBhbmRvXT9lOm5ldyBTLkV2ZW50KGUpfSxzcGVjaWFsOntsb2FkOntub0J1YmJsZTohMH0sY2xpY2s6e3NldHVwOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXN8fGU7cmV0dXJuIHBlLnRlc3QodC50eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZTZSh0LCJjbGljayIsd2UpLCExfSx0cmlnZ2VyOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXN8fGU7cmV0dXJuIHBlLnRlc3QodC50eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZTZSh0LCJjbGljayIpLCEwfSxfZGVmYXVsdDpmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldDtyZXR1cm4gcGUudGVzdCh0LnR5cGUpJiZ0LmNsaWNrJiZBKHQsImlucHV0IikmJlkuZ2V0KHQsImNsaWNrIil8fEEodCwiYSIpfX0sYmVmb3JldW5sb2FkOntwb3N0RGlzcGF0Y2g6ZnVuY3Rpb24oZSl7dm9pZCAwIT09ZS5yZXN1bHQmJmUub3JpZ2luYWxFdmVudCYmKGUub3JpZ2luYWxFdmVudC5yZXR1cm5WYWx1ZT1lLnJlc3VsdCl9fX19LFMucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oZSx0LG4pe2UucmVtb3ZlRXZlbnRMaXN0ZW5lciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKHQsbil9LFMuRXZlbnQ9ZnVuY3Rpb24oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBTLkV2ZW50KSlyZXR1cm4gbmV3IFMuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1lLmRlZmF1bHRQcmV2ZW50ZWQmJiExPT09ZS5yZXR1cm5WYWx1ZT93ZTpUZSx0aGlzLnRhcmdldD1lLnRhcmdldCYmMz09PWUudGFyZ2V0Lm5vZGVUeXBlP2UudGFyZ2V0LnBhcmVudE5vZGU6ZS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWUuY3VycmVudFRhcmdldCx0aGlzLnJlbGF0ZWRUYXJnZXQ9ZS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9ZSx0JiZTLmV4dGVuZCh0aGlzLHQpLHRoaXMudGltZVN0YW1wPWUmJmUudGltZVN0YW1wfHxEYXRlLm5vdygpLHRoaXNbUy5leHBhbmRvXT0hMH0sUy5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOlMuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOlRlLGlzUHJvcGFnYXRpb25TdG9wcGVkOlRlLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOlRlLGlzU2ltdWxhdGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNEZWZhdWx0UHJldmVudGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnByZXZlbnREZWZhdWx0KCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnN0b3BQcm9wYWdhdGlvbigpfSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD13ZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sUy5lYWNoKHthbHRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6ITAsZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEtleTohMCx2aWV3OiEwLCJjaGFyIjohMCxjb2RlOiEwLGNoYXJDb2RlOiEwLGtleTohMCxrZXlDb2RlOiEwLGJ1dHRvbjohMCxidXR0b25zOiEwLGNsaWVudFg6ITAsY2xpZW50WTohMCxvZmZzZXRYOiEwLG9mZnNldFk6ITAscG9pbnRlcklkOiEwLHBvaW50ZXJUeXBlOiEwLHNjcmVlblg6ITAsc2NyZWVuWTohMCx0YXJnZXRUb3VjaGVzOiEwLHRvRWxlbWVudDohMCx0b3VjaGVzOiEwLHdoaWNoOiEwfSxTLmV2ZW50LmFkZFByb3ApLFMuZWFjaCh7Zm9jdXM6ImZvY3VzaW4iLGJsdXI6ImZvY3Vzb3V0In0sZnVuY3Rpb24oZSx0KXtTLmV2ZW50LnNwZWNpYWxbZV09e3NldHVwOmZ1bmN0aW9uKCl7cmV0dXJuIFNlKHRoaXMsZSxDZSksITF9LHRyaWdnZXI6ZnVuY3Rpb24oKXtyZXR1cm4gU2UodGhpcyxlKSwhMH0sX2RlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH0sZGVsZWdhdGVUeXBlOnR9fSksUy5lYWNoKHttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6Im1vdXNlb3V0Iixwb2ludGVyZW50ZXI6InBvaW50ZXJvdmVyIixwb2ludGVybGVhdmU6InBvaW50ZXJvdXQifSxmdW5jdGlvbihlLGkpe1MuZXZlbnQuc3BlY2lhbFtlXT17ZGVsZWdhdGVUeXBlOmksYmluZFR5cGU6aSxoYW5kbGU6ZnVuY3Rpb24oZSl7dmFyIHQsbj1lLnJlbGF0ZWRUYXJnZXQscj1lLmhhbmRsZU9iajtyZXR1cm4gbiYmKG49PT10aGlzfHxTLmNvbnRhaW5zKHRoaXMsbikpfHwoZS50eXBlPXIub3JpZ1R5cGUsdD1yLmhhbmRsZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpLGUudHlwZT1pKSx0fX19KSxTLmZuLmV4dGVuZCh7b246ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIEVlKHRoaXMsZSx0LG4scil9LG9uZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gRWUodGhpcyxlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk7aWYoZSYmZS5wcmV2ZW50RGVmYXVsdCYmZS5oYW5kbGVPYmopcmV0dXJuIHI9ZS5oYW5kbGVPYmosUyhlLmRlbGVnYXRlVGFyZ2V0KS5vZmYoci5uYW1lc3BhY2U/ci5vcmlnVHlwZSsiLiIrci5uYW1lc3BhY2U6ci5vcmlnVHlwZSxyLnNlbGVjdG9yLHIuaGFuZGxlciksdGhpcztpZigib2JqZWN0Ij09dHlwZW9mIGUpe2ZvcihpIGluIGUpdGhpcy5vZmYoaSx0LGVbaV0pO3JldHVybiB0aGlzfXJldHVybiExIT09dCYmImZ1bmN0aW9uIiE9dHlwZW9mIHR8fChuPXQsdD12b2lkIDApLCExPT09biYmKG49VGUpLHRoaXMuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQucmVtb3ZlKHRoaXMsZSxuLHQpfSl9fSk7dmFyIGtlPS88c2NyaXB0fDxzdHlsZXw8bGluay9pLEFlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLE5lPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBqZShlLHQpe3JldHVybiBBKGUsInRhYmxlIikmJkEoMTEhPT10Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpJiZTKGUpLmNoaWxkcmVuKCJ0Ym9keSIpWzBdfHxlfWZ1bmN0aW9uIERlKGUpe3JldHVybiBlLnR5cGU9KG51bGwhPT1lLmdldEF0dHJpYnV0ZSgidHlwZSIpKSsiLyIrZS50eXBlLGV9ZnVuY3Rpb24gcWUoZSl7cmV0dXJuInRydWUvIj09PShlLnR5cGV8fCIiKS5zbGljZSgwLDUpP2UudHlwZT1lLnR5cGUuc2xpY2UoNSk6ZS5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKSxlfWZ1bmN0aW9uIExlKGUsdCl7dmFyIG4scixpLG8sYSxzO2lmKDE9PT10Lm5vZGVUeXBlKXtpZihZLmhhc0RhdGEoZSkmJihzPVkuZ2V0KGUpLmV2ZW50cykpZm9yKGkgaW4gWS5yZW1vdmUodCwiaGFuZGxlIGV2ZW50cyIpLHMpZm9yKG49MCxyPXNbaV0ubGVuZ3RoO248cjtuKyspUy5ldmVudC5hZGQodCxpLHNbaV1bbl0pO1EuaGFzRGF0YShlKSYmKG89US5hY2Nlc3MoZSksYT1TLmV4dGVuZCh7fSxvKSxRLnNldCh0LGEpKX19ZnVuY3Rpb24gSGUobixyLGksbyl7cj1nKHIpO3ZhciBlLHQsYSxzLHUsbCxjPTAsZj1uLmxlbmd0aCxwPWYtMSxkPXJbMF0saD1tKGQpO2lmKGh8fDE8ZiYmInN0cmluZyI9PXR5cGVvZiBkJiYheS5jaGVja0Nsb25lJiZBZS50ZXN0KGQpKXJldHVybiBuLmVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9bi5lcShlKTtoJiYoclswXT1kLmNhbGwodGhpcyxlLHQuaHRtbCgpKSksSGUodCxyLGksbyl9KTtpZihmJiYodD0oZT14ZShyLG5bMF0ub3duZXJEb2N1bWVudCwhMSxuLG8pKS5maXJzdENoaWxkLDE9PT1lLmNoaWxkTm9kZXMubGVuZ3RoJiYoZT10KSx0fHxvKSl7Zm9yKHM9KGE9Uy5tYXAodmUoZSwic2NyaXB0IiksRGUpKS5sZW5ndGg7YzxmO2MrKyl1PWUsYyE9PXAmJih1PVMuY2xvbmUodSwhMCwhMCkscyYmUy5tZXJnZShhLHZlKHUsInNjcmlwdCIpKSksaS5jYWxsKG5bY10sdSxjKTtpZihzKWZvcihsPWFbYS5sZW5ndGgtMV0ub3duZXJEb2N1bWVudCxTLm1hcChhLHFlKSxjPTA7YzxzO2MrKyl1PWFbY10saGUudGVzdCh1LnR5cGV8fCIiKSYmIVkuYWNjZXNzKHUsImdsb2JhbEV2YWwiKSYmUy5jb250YWlucyhsLHUpJiYodS5zcmMmJiJtb2R1bGUiIT09KHUudHlwZXx8IiIpLnRvTG93ZXJDYXNlKCk/Uy5fZXZhbFVybCYmIXUubm9Nb2R1bGUmJlMuX2V2YWxVcmwodS5zcmMse25vbmNlOnUubm9uY2V8fHUuZ2V0QXR0cmlidXRlKCJub25jZSIpfSxsKTpiKHUudGV4dENvbnRlbnQucmVwbGFjZShOZSwiIiksdSxsKSl9cmV0dXJuIG59ZnVuY3Rpb24gT2UoZSx0LG4pe2Zvcih2YXIgcixpPXQ/Uy5maWx0ZXIodCxlKTplLG89MDtudWxsIT0ocj1pW29dKTtvKyspbnx8MSE9PXIubm9kZVR5cGV8fFMuY2xlYW5EYXRhKHZlKHIpKSxyLnBhcmVudE5vZGUmJihuJiZpZShyKSYmeWUodmUociwic2NyaXB0IikpLHIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyKSk7cmV0dXJuIGV9Uy5leHRlbmQoe2h0bWxQcmVmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LGNsb25lOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjPWUuY2xvbmVOb2RlKCEwKSxmPWllKGUpO2lmKCEoeS5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZXx8Uy5pc1hNTERvYyhlKSkpZm9yKGE9dmUoYykscj0wLGk9KG89dmUoZSkpLmxlbmd0aDtyPGk7cisrKXM9b1tyXSx1PWFbcl0sdm9pZCAwLCJpbnB1dCI9PT0obD11Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpJiZwZS50ZXN0KHMudHlwZSk/dS5jaGVja2VkPXMuY2hlY2tlZDoiaW5wdXQiIT09bCYmInRleHRhcmVhIiE9PWx8fCh1LmRlZmF1bHRWYWx1ZT1zLmRlZmF1bHRWYWx1ZSk7aWYodClpZihuKWZvcihvPW98fHZlKGUpLGE9YXx8dmUoYykscj0wLGk9by5sZW5ndGg7cjxpO3IrKylMZShvW3JdLGFbcl0pO2Vsc2UgTGUoZSxjKTtyZXR1cm4gMDwoYT12ZShjLCJzY3JpcHQiKSkubGVuZ3RoJiZ5ZShhLCFmJiZ2ZShlLCJzY3JpcHQiKSksY30sY2xlYW5EYXRhOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuLHIsaT1TLmV2ZW50LnNwZWNpYWwsbz0wO3ZvaWQgMCE9PShuPWVbb10pO28rKylpZihWKG4pKXtpZih0PW5bWS5leHBhbmRvXSl7aWYodC5ldmVudHMpZm9yKHIgaW4gdC5ldmVudHMpaVtyXT9TLmV2ZW50LnJlbW92ZShuLHIpOlMucmVtb3ZlRXZlbnQobixyLHQuaGFuZGxlKTtuW1kuZXhwYW5kb109dm9pZCAwfW5bUS5leHBhbmRvXSYmKG5bUS5leHBhbmRvXT12b2lkIDApfX19KSxTLmZuLmV4dGVuZCh7ZGV0YWNoOmZ1bmN0aW9uKGUpe3JldHVybiBPZSh0aGlzLGUsITApfSxyZW1vdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIE9lKHRoaXMsZSl9LHRleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuICQodGhpcyxmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZT9TLnRleHQodGhpcyk6dGhpcy5lbXB0eSgpLmVhY2goZnVuY3Rpb24oKXsxIT09dGhpcy5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8KHRoaXMudGV4dENvbnRlbnQ9ZSl9KX0sbnVsbCxlLGFyZ3VtZW50cy5sZW5ndGgpfSxhcHBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gSGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fGplKHRoaXMsZSkuYXBwZW5kQ2hpbGQoZSl9KX0scHJlcGVuZDpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXtpZigxPT09dGhpcy5ub2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIHQ9amUodGhpcyxlKTt0Lmluc2VydEJlZm9yZShlLHQuZmlyc3RDaGlsZCl9fSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PTA7bnVsbCE9KGU9dGhpc1t0XSk7dCsrKTE9PT1lLm5vZGVUeXBlJiYoUy5jbGVhbkRhdGEodmUoZSwhMSkpLGUudGV4dENvbnRlbnQ9IiIpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPW51bGwhPWUmJmUsdD1udWxsPT10P2U6dCx0aGlzLm1hcChmdW5jdGlvbigpe3JldHVybiBTLmNsb25lKHRoaXMsZSx0KX0pfSxodG1sOmZ1bmN0aW9uKGUpe3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ9dGhpc1swXXx8e30sbj0wLHI9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09ZSYmMT09PXQubm9kZVR5cGUpcmV0dXJuIHQuaW5uZXJIVE1MO2lmKCJzdHJpbmciPT10eXBlb2YgZSYmIWtlLnRlc3QoZSkmJiFnZVsoZGUuZXhlYyhlKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9Uy5odG1sUHJlZmlsdGVyKGUpO3RyeXtmb3IoO248cjtuKyspMT09PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKFMuY2xlYW5EYXRhKHZlKHQsITEpKSx0LmlubmVySFRNTD1lKTt0PTB9Y2F0Y2goZSl7fX10JiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGUpfSxudWxsLGUsYXJndW1lbnRzLmxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIG49W107cmV0dXJuIEhlKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMucGFyZW50Tm9kZTtTLmluQXJyYXkodGhpcyxuKTwwJiYoUy5jbGVhbkRhdGEodmUodGhpcykpLHQmJnQucmVwbGFjZUNoaWxkKGUsdGhpcykpfSxuKX19KSxTLmVhY2goe2FwcGVuZFRvOiJhcHBlbmQiLHByZXBlbmRUbzoicHJlcGVuZCIsaW5zZXJ0QmVmb3JlOiJiZWZvcmUiLGluc2VydEFmdGVyOiJhZnRlciIscmVwbGFjZUFsbDoicmVwbGFjZVdpdGgifSxmdW5jdGlvbihlLGEpe1MuZm5bZV09ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49W10scj1TKGUpLGk9ci5sZW5ndGgtMSxvPTA7bzw9aTtvKyspdD1vPT09aT90aGlzOnRoaXMuY2xvbmUoITApLFMocltvXSlbYV0odCksdS5hcHBseShuLHQuZ2V0KCkpO3JldHVybiB0aGlzLnB1c2hTdGFjayhuKX19KTt2YXIgUGU9bmV3IFJlZ0V4cCgiXigiK2VlKyIpKD8hcHgpW2EteiVdKyQiLCJpIiksUmU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3O3JldHVybiB0JiZ0Lm9wZW5lcnx8KHQ9QyksdC5nZXRDb21wdXRlZFN0eWxlKGUpfSxNZT1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXTtmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn0sSWU9bmV3IFJlZ0V4cChuZS5qb2luKCJ8IiksImkiKTtmdW5jdGlvbiBXZShlLHQsbil7dmFyIHIsaSxvLGEscz1lLnN0eWxlO3JldHVybihuPW58fFJlKGUpKSYmKCIiIT09KGE9bi5nZXRQcm9wZXJ0eVZhbHVlKHQpfHxuW3RdKXx8aWUoZSl8fChhPVMuc3R5bGUoZSx0KSksIXkucGl4ZWxCb3hTdHlsZXMoKSYmUGUudGVzdChhKSYmSWUudGVzdCh0KSYmKHI9cy53aWR0aCxpPXMubWluV2lkdGgsbz1zLm1heFdpZHRoLHMubWluV2lkdGg9cy5tYXhXaWR0aD1zLndpZHRoPWEsYT1uLndpZHRoLHMud2lkdGg9cixzLm1pbldpZHRoPWkscy5tYXhXaWR0aD1vKSksdm9pZCAwIT09YT9hKyIiOmF9ZnVuY3Rpb24gRmUoZSx0KXtyZXR1cm57Z2V0OmZ1bmN0aW9uKCl7aWYoIWUoKSlyZXR1cm4odGhpcy5nZXQ9dCkuYXBwbHkodGhpcyxhcmd1bWVudHMpO2RlbGV0ZSB0aGlzLmdldH19fSFmdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXtpZihsKXt1LnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTExMTExcHg7d2lkdGg6NjBweDttYXJnaW4tdG9wOjFweDtwYWRkaW5nOjA7Ym9yZGVyOjAiLGwuc3R5bGUuY3NzVGV4dD0icG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6c2Nyb2xsO21hcmdpbjphdXRvO2JvcmRlcjoxcHg7cGFkZGluZzoxcHg7d2lkdGg6NjAlO3RvcDoxJSIscmUuYXBwZW5kQ2hpbGQodSkuYXBwZW5kQ2hpbGQobCk7dmFyIGU9Qy5nZXRDb21wdXRlZFN0eWxlKGwpO249IjElIiE9PWUudG9wLHM9MTI9PT10KGUubWFyZ2luTGVmdCksbC5zdHlsZS5yaWdodD0iNjAlIixvPTM2PT09dChlLnJpZ2h0KSxyPTM2PT09dChlLndpZHRoKSxsLnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsaT0xMj09PXQobC5vZmZzZXRXaWR0aC8zKSxyZS5yZW1vdmVDaGlsZCh1KSxsPW51bGx9fWZ1bmN0aW9uIHQoZSl7cmV0dXJuIE1hdGgucm91bmQocGFyc2VGbG9hdChlKSl9dmFyIG4scixpLG8sYSxzLHU9RS5jcmVhdGVFbGVtZW50KCJkaXYiKSxsPUUuY3JlYXRlRWxlbWVudCgiZGl2Iik7bC5zdHlsZSYmKGwuc3R5bGUuYmFja2dyb3VuZENsaXA9ImNvbnRlbnQtYm94IixsLmNsb25lTm9kZSghMCkuc3R5bGUuYmFja2dyb3VuZENsaXA9IiIseS5jbGVhckNsb25lU3R5bGU9ImNvbnRlbnQtYm94Ij09PWwuc3R5bGUuYmFja2dyb3VuZENsaXAsUy5leHRlbmQoeSx7Ym94U2l6aW5nUmVsaWFibGU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHJ9LHBpeGVsQm94U3R5bGVzOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxvfSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxufSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHN9LHNjcm9sbGJveFNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLGl9LHJlbGlhYmxlVHJEaW1lbnNpb25zOmZ1bmN0aW9uKCl7dmFyIGUsdCxuLHI7cmV0dXJuIG51bGw9PWEmJihlPUUuY3JlYXRlRWxlbWVudCgidGFibGUiKSx0PUUuY3JlYXRlRWxlbWVudCgidHIiKSxuPUUuY3JlYXRlRWxlbWVudCgiZGl2IiksZS5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O2JvcmRlci1jb2xsYXBzZTpzZXBhcmF0ZSIsdC5zdHlsZS5jc3NUZXh0PSJib3JkZXI6MXB4IHNvbGlkIix0LnN0eWxlLmhlaWdodD0iMXB4IixuLnN0eWxlLmhlaWdodD0iOXB4IixuLnN0eWxlLmRpc3BsYXk9ImJsb2NrIixyZS5hcHBlbmRDaGlsZChlKS5hcHBlbmRDaGlsZCh0KS5hcHBlbmRDaGlsZChuKSxyPUMuZ2V0Q29tcHV0ZWRTdHlsZSh0KSxhPXBhcnNlSW50KHIuaGVpZ2h0LDEwKStwYXJzZUludChyLmJvcmRlclRvcFdpZHRoLDEwKStwYXJzZUludChyLmJvcmRlckJvdHRvbVdpZHRoLDEwKT09PXQub2Zmc2V0SGVpZ2h0LHJlLnJlbW92ZUNoaWxkKGUpKSxhfX0pKX0oKTt2YXIgQmU9WyJXZWJraXQiLCJNb3oiLCJtcyJdLCRlPUUuY3JlYXRlRWxlbWVudCgiZGl2Iikuc3R5bGUsX2U9e307ZnVuY3Rpb24gemUoZSl7dmFyIHQ9Uy5jc3NQcm9wc1tlXXx8X2VbZV07cmV0dXJuIHR8fChlIGluICRlP2U6X2VbZV09ZnVuY3Rpb24oZSl7dmFyIHQ9ZVswXS50b1VwcGVyQ2FzZSgpK2Uuc2xpY2UoMSksbj1CZS5sZW5ndGg7d2hpbGUobi0tKWlmKChlPUJlW25dK3QpaW4gJGUpcmV0dXJuIGV9KGUpfHxlKX12YXIgVWU9L14obm9uZXx0YWJsZSg/IS1jW2VhXSkuKykvLFhlPS9eLS0vLFZlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToiYmxvY2sifSxHZT17bGV0dGVyU3BhY2luZzoiMCIsZm9udFdlaWdodDoiNDAwIn07ZnVuY3Rpb24gWWUoZSx0LG4pe3ZhciByPXRlLmV4ZWModCk7cmV0dXJuIHI/TWF0aC5tYXgoMCxyWzJdLShufHwwKSkrKHJbM118fCJweCIpOnR9ZnVuY3Rpb24gUWUoZSx0LG4scixpLG8pe3ZhciBhPSJ3aWR0aCI9PT10PzE6MCxzPTAsdT0wO2lmKG49PT0ocj8iYm9yZGVyIjoiY29udGVudCIpKXJldHVybiAwO2Zvcig7YTw0O2ErPTIpIm1hcmdpbiI9PT1uJiYodSs9Uy5jc3MoZSxuK25lW2FdLCEwLGkpKSxyPygiY29udGVudCI9PT1uJiYodS09Uy5jc3MoZSwicGFkZGluZyIrbmVbYV0sITAsaSkpLCJtYXJnaW4iIT09biYmKHUtPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIldpZHRoIiwhMCxpKSkpOih1Kz1TLmNzcyhlLCJwYWRkaW5nIituZVthXSwhMCxpKSwicGFkZGluZyIhPT1uP3UrPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIldpZHRoIiwhMCxpKTpzKz1TLmNzcyhlLCJib3JkZXIiK25lW2FdKyJXaWR0aCIsITAsaSkpO3JldHVybiFyJiYwPD1vJiYodSs9TWF0aC5tYXgoMCxNYXRoLmNlaWwoZVsib2Zmc2V0Iit0WzBdLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKV0tby11LXMtLjUpKXx8MCksdX1mdW5jdGlvbiBKZShlLHQsbil7dmFyIHI9UmUoZSksaT0oIXkuYm94U2l6aW5nUmVsaWFibGUoKXx8bikmJiJib3JkZXItYm94Ij09PVMuY3NzKGUsImJveFNpemluZyIsITEsciksbz1pLGE9V2UoZSx0LHIpLHM9Im9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoMSk7aWYoUGUudGVzdChhKSl7aWYoIW4pcmV0dXJuIGE7YT0iYXV0byJ9cmV0dXJuKCF5LmJveFNpemluZ1JlbGlhYmxlKCkmJml8fCF5LnJlbGlhYmxlVHJEaW1lbnNpb25zKCkmJkEoZSwidHIiKXx8ImF1dG8iPT09YXx8IXBhcnNlRmxvYXQoYSkmJiJpbmxpbmUiPT09Uy5jc3MoZSwiZGlzcGxheSIsITEscikpJiZlLmdldENsaWVudFJlY3RzKCkubGVuZ3RoJiYoaT0iYm9yZGVyLWJveCI9PT1TLmNzcyhlLCJib3hTaXppbmciLCExLHIpLChvPXMgaW4gZSkmJihhPWVbc10pKSwoYT1wYXJzZUZsb2F0KGEpfHwwKStRZShlLHQsbnx8KGk/ImJvcmRlciI6ImNvbnRlbnQiKSxvLHIsYSkrInB4In1mdW5jdGlvbiBLZShlLHQsbixyLGkpe3JldHVybiBuZXcgS2UucHJvdG90eXBlLmluaXQoZSx0LG4scixpKX1TLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPVdlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/IjEiOm59fX19LGNzc051bWJlcjp7YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsY29sdW1uQ291bnQ6ITAsZmlsbE9wYWNpdHk6ITAsZmxleEdyb3c6ITAsZmxleFNocmluazohMCxmb250V2VpZ2h0OiEwLGdyaWRBcmVhOiEwLGdyaWRDb2x1bW46ITAsZ3JpZENvbHVtbkVuZDohMCxncmlkQ29sdW1uU3RhcnQ6ITAsZ3JpZFJvdzohMCxncmlkUm93RW5kOiEwLGdyaWRSb3dTdGFydDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITB9LGNzc1Byb3BzOnt9LHN0eWxlOmZ1bmN0aW9uKGUsdCxuLHIpe2lmKGUmJjMhPT1lLm5vZGVUeXBlJiY4IT09ZS5ub2RlVHlwZSYmZS5zdHlsZSl7dmFyIGksbyxhLHM9WCh0KSx1PVhlLnRlc3QodCksbD1lLnN0eWxlO2lmKHV8fCh0PXplKHMpKSxhPVMuY3NzSG9va3NbdF18fFMuY3NzSG9va3Nbc10sdm9pZCAwPT09bilyZXR1cm4gYSYmImdldCJpbiBhJiZ2b2lkIDAhPT0oaT1hLmdldChlLCExLHIpKT9pOmxbdF07InN0cmluZyI9PT0obz10eXBlb2YgbikmJihpPXRlLmV4ZWMobikpJiZpWzFdJiYobj1zZShlLHQsaSksbz0ibnVtYmVyIiksbnVsbCE9biYmbj09biYmKCJudW1iZXIiIT09b3x8dXx8KG4rPWkmJmlbM118fChTLmNzc051bWJlcltzXT8iIjoicHgiKSkseS5jbGVhckNsb25lU3R5bGV8fCIiIT09bnx8MCE9PXQuaW5kZXhPZigiYmFja2dyb3VuZCIpfHwobFt0XT0iaW5oZXJpdCIpLGEmJiJzZXQiaW4gYSYmdm9pZCAwPT09KG49YS5zZXQoZSxuLHIpKXx8KHU/bC5zZXRQcm9wZXJ0eSh0LG4pOmxbdF09bikpfX0sY3NzOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzPVgodCk7cmV0dXJuIFhlLnRlc3QodCl8fCh0PXplKHMpKSwoYT1TLmNzc0hvb2tzW3RdfHxTLmNzc0hvb2tzW3NdKSYmImdldCJpbiBhJiYoaT1hLmdldChlLCEwLG4pKSx2b2lkIDA9PT1pJiYoaT1XZShlLHQscikpLCJub3JtYWwiPT09aSYmdCBpbiBHZSYmKGk9R2VbdF0pLCIiPT09bnx8bj8obz1wYXJzZUZsb2F0KGkpLCEwPT09bnx8aXNGaW5pdGUobyk/b3x8MDppKTppfX0pLFMuZWFjaChbImhlaWdodCIsIndpZHRoIl0sZnVuY3Rpb24oZSx1KXtTLmNzc0hvb2tzW3VdPXtnZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHQpcmV0dXJuIVVlLnRlc3QoUy5jc3MoZSwiZGlzcGxheSIpKXx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aD9KZShlLHUsbik6TWUoZSxWZSxmdW5jdGlvbigpe3JldHVybiBKZShlLHUsbil9KX0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpPVJlKGUpLG89IXkuc2Nyb2xsYm94U2l6ZSgpJiYiYWJzb2x1dGUiPT09aS5wb3NpdGlvbixhPShvfHxuKSYmImJvcmRlci1ib3giPT09Uy5jc3MoZSwiYm94U2l6aW5nIiwhMSxpKSxzPW4/UWUoZSx1LG4sYSxpKTowO3JldHVybiBhJiZvJiYocy09TWF0aC5jZWlsKGVbIm9mZnNldCIrdVswXS50b1VwcGVyQ2FzZSgpK3Uuc2xpY2UoMSldLXBhcnNlRmxvYXQoaVt1XSktUWUoZSx1LCJib3JkZXIiLCExLGkpLS41KSkscyYmKHI9dGUuZXhlYyh0KSkmJiJweCIhPT0oclszXXx8InB4IikmJihlLnN0eWxlW3VdPXQsdD1TLmNzcyhlLHUpKSxZZSgwLHQscyl9fX0pLFMuY3NzSG9va3MubWFyZ2luTGVmdD1GZSh5LnJlbGlhYmxlTWFyZ2luTGVmdCxmdW5jdGlvbihlLHQpe2lmKHQpcmV0dXJuKHBhcnNlRmxvYXQoV2UoZSwibWFyZ2luTGVmdCIpKXx8ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0LU1lKGUse21hcmdpbkxlZnQ6MH0sZnVuY3Rpb24oKXtyZXR1cm4gZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0fSkpKyJweCJ9KSxTLmVhY2goe21hcmdpbjoiIixwYWRkaW5nOiIiLGJvcmRlcjoiV2lkdGgifSxmdW5jdGlvbihpLG8pe1MuY3NzSG9va3NbaStvXT17ZXhwYW5kOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wLG49e30scj0ic3RyaW5nIj09dHlwZW9mIGU/ZS5zcGxpdCgiICIpOltlXTt0PDQ7dCsrKW5baStuZVt0XStvXT1yW3RdfHxyW3QtMl18fHJbMF07cmV0dXJuIG59fSwibWFyZ2luIiE9PWkmJihTLmNzc0hvb2tzW2krb10uc2V0PVllKX0pLFMuZm4uZXh0ZW5kKHtjc3M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89e30sYT0wO2lmKEFycmF5LmlzQXJyYXkodCkpe2ZvcihyPVJlKGUpLGk9dC5sZW5ndGg7YTxpO2ErKylvW3RbYV1dPVMuY3NzKGUsdFthXSwhMSxyKTtyZXR1cm4gb31yZXR1cm4gdm9pZCAwIT09bj9TLnN0eWxlKGUsdCxuKTpTLmNzcyhlLHQpfSxlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX19KSwoKFMuVHdlZW49S2UpLnByb3RvdHlwZT17Y29uc3RydWN0b3I6S2UsaW5pdDpmdW5jdGlvbihlLHQsbixyLGksbyl7dGhpcy5lbGVtPWUsdGhpcy5wcm9wPW4sdGhpcy5lYXNpbmc9aXx8Uy5lYXNpbmcuX2RlZmF1bHQsdGhpcy5vcHRpb25zPXQsdGhpcy5zdGFydD10aGlzLm5vdz10aGlzLmN1cigpLHRoaXMuZW5kPXIsdGhpcy51bml0PW98fChTLmNzc051bWJlcltuXT8iIjoicHgiKX0sY3VyOmZ1bmN0aW9uKCl7dmFyIGU9S2UucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIGUmJmUuZ2V0P2UuZ2V0KHRoaXMpOktlLnByb3BIb29rcy5fZGVmYXVsdC5nZXQodGhpcyl9LHJ1bjpmdW5jdGlvbihlKXt2YXIgdCxuPUtlLnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiB0aGlzLm9wdGlvbnMuZHVyYXRpb24/dGhpcy5wb3M9dD1TLmVhc2luZ1t0aGlzLmVhc2luZ10oZSx0aGlzLm9wdGlvbnMuZHVyYXRpb24qZSwwLDEsdGhpcy5vcHRpb25zLmR1cmF0aW9uKTp0aGlzLnBvcz10PWUsdGhpcy5ub3c9KHRoaXMuZW5kLXRoaXMuc3RhcnQpKnQrdGhpcy5zdGFydCx0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sdGhpcy5ub3csdGhpcyksbiYmbi5zZXQ/bi5zZXQodGhpcyk6S2UucHJvcEhvb2tzLl9kZWZhdWx0LnNldCh0aGlzKSx0aGlzfX0pLmluaXQucHJvdG90eXBlPUtlLnByb3RvdHlwZSwoS2UucHJvcEhvb2tzPXtfZGVmYXVsdDp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiAxIT09ZS5lbGVtLm5vZGVUeXBlfHxudWxsIT1lLmVsZW1bZS5wcm9wXSYmbnVsbD09ZS5lbGVtLnN0eWxlW2UucHJvcF0/ZS5lbGVtW2UucHJvcF06KHQ9Uy5jc3MoZS5lbGVtLGUucHJvcCwiIikpJiYiYXV0byIhPT10P3Q6MH0sc2V0OmZ1bmN0aW9uKGUpe1MuZnguc3RlcFtlLnByb3BdP1MuZnguc3RlcFtlLnByb3BdKGUpOjEhPT1lLmVsZW0ubm9kZVR5cGV8fCFTLmNzc0hvb2tzW2UucHJvcF0mJm51bGw9PWUuZWxlbS5zdHlsZVt6ZShlLnByb3ApXT9lLmVsZW1bZS5wcm9wXT1lLm5vdzpTLnN0eWxlKGUuZWxlbSxlLnByb3AsZS5ub3crZS51bml0KX19fSkuc2Nyb2xsVG9wPUtlLnByb3BIb29rcy5zY3JvbGxMZWZ0PXtzZXQ6ZnVuY3Rpb24oZSl7ZS5lbGVtLm5vZGVUeXBlJiZlLmVsZW0ucGFyZW50Tm9kZSYmKGUuZWxlbVtlLnByb3BdPWUubm93KX19LFMuZWFzaW5nPXtsaW5lYXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHN3aW5nOmZ1bmN0aW9uKGUpe3JldHVybi41LU1hdGguY29zKGUqTWF0aC5QSSkvMn0sX2RlZmF1bHQ6InN3aW5nIn0sUy5meD1LZS5wcm90b3R5cGUuaW5pdCxTLmZ4LnN0ZXA9e307dmFyIFplLGV0LHR0LG50LHJ0PS9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLyxpdD0vcXVldWVIb29rcyQvO2Z1bmN0aW9uIG90KCl7ZXQmJighMT09PUUuaGlkZGVuJiZDLnJlcXVlc3RBbmltYXRpb25GcmFtZT9DLnJlcXVlc3RBbmltYXRpb25GcmFtZShvdCk6Qy5zZXRUaW1lb3V0KG90LFMuZnguaW50ZXJ2YWwpLFMuZngudGljaygpKX1mdW5jdGlvbiBhdCgpe3JldHVybiBDLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtaZT12b2lkIDB9KSxaZT1EYXRlLm5vdygpfWZ1bmN0aW9uIHN0KGUsdCl7dmFyIG4scj0wLGk9e2hlaWdodDplfTtmb3IodD10PzE6MDtyPDQ7cis9Mi10KWlbIm1hcmdpbiIrKG49bmVbcl0pXT1pWyJwYWRkaW5nIituXT1lO3JldHVybiB0JiYoaS5vcGFjaXR5PWkud2lkdGg9ZSksaX1mdW5jdGlvbiB1dChlLHQsbil7Zm9yKHZhciByLGk9KGx0LnR3ZWVuZXJzW3RdfHxbXSkuY29uY2F0KGx0LnR3ZWVuZXJzWyIqIl0pLG89MCxhPWkubGVuZ3RoO288YTtvKyspaWYocj1pW29dLmNhbGwobix0LGUpKXJldHVybiByfWZ1bmN0aW9uIGx0KG8sZSx0KXt2YXIgbixhLHI9MCxpPWx0LnByZWZpbHRlcnMubGVuZ3RoLHM9Uy5EZWZlcnJlZCgpLmFsd2F5cyhmdW5jdGlvbigpe2RlbGV0ZSB1LmVsZW19KSx1PWZ1bmN0aW9uKCl7aWYoYSlyZXR1cm4hMTtmb3IodmFyIGU9WmV8fGF0KCksdD1NYXRoLm1heCgwLGwuc3RhcnRUaW1lK2wuZHVyYXRpb24tZSksbj0xLSh0L2wuZHVyYXRpb258fDApLHI9MCxpPWwudHdlZW5zLmxlbmd0aDtyPGk7cisrKWwudHdlZW5zW3JdLnJ1bihuKTtyZXR1cm4gcy5ub3RpZnlXaXRoKG8sW2wsbix0XSksbjwxJiZpP3Q6KGl8fHMubm90aWZ5V2l0aChvLFtsLDEsMF0pLHMucmVzb2x2ZVdpdGgobyxbbF0pLCExKX0sbD1zLnByb21pc2Uoe2VsZW06byxwcm9wczpTLmV4dGVuZCh7fSxlKSxvcHRzOlMuZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9LGVhc2luZzpTLmVhc2luZy5fZGVmYXVsdH0sdCksb3JpZ2luYWxQcm9wZXJ0aWVzOmUsb3JpZ2luYWxPcHRpb25zOnQsc3RhcnRUaW1lOlplfHxhdCgpLGR1cmF0aW9uOnQuZHVyYXRpb24sdHdlZW5zOltdLGNyZWF0ZVR3ZWVuOmZ1bmN0aW9uKGUsdCl7dmFyIG49Uy5Ud2VlbihvLGwub3B0cyxlLHQsbC5vcHRzLnNwZWNpYWxFYXNpbmdbZV18fGwub3B0cy5lYXNpbmcpO3JldHVybiBsLnR3ZWVucy5wdXNoKG4pLG59LHN0b3A6ZnVuY3Rpb24oZSl7dmFyIHQ9MCxuPWU/bC50d2VlbnMubGVuZ3RoOjA7aWYoYSlyZXR1cm4gdGhpcztmb3IoYT0hMDt0PG47dCsrKWwudHdlZW5zW3RdLnJ1bigxKTtyZXR1cm4gZT8ocy5ub3RpZnlXaXRoKG8sW2wsMSwwXSkscy5yZXNvbHZlV2l0aChvLFtsLGVdKSk6cy5yZWplY3RXaXRoKG8sW2wsZV0pLHRoaXN9fSksYz1sLnByb3BzO2ZvcighZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbyxhO2ZvcihuIGluIGUpaWYoaT10W3I9WChuKV0sbz1lW25dLEFycmF5LmlzQXJyYXkobykmJihpPW9bMV0sbz1lW25dPW9bMF0pLG4hPT1yJiYoZVtyXT1vLGRlbGV0ZSBlW25dKSwoYT1TLmNzc0hvb2tzW3JdKSYmImV4cGFuZCJpbiBhKWZvcihuIGluIG89YS5leHBhbmQobyksZGVsZXRlIGVbcl0sbyluIGluIGV8fChlW25dPW9bbl0sdFtuXT1pKTtlbHNlIHRbcl09aX0oYyxsLm9wdHMuc3BlY2lhbEVhc2luZyk7cjxpO3IrKylpZihuPWx0LnByZWZpbHRlcnNbcl0uY2FsbChsLG8sYyxsLm9wdHMpKXJldHVybiBtKG4uc3RvcCkmJihTLl9xdWV1ZUhvb2tzKGwuZWxlbSxsLm9wdHMucXVldWUpLnN0b3A9bi5zdG9wLmJpbmQobikpLG47cmV0dXJuIFMubWFwKGMsdXQsbCksbShsLm9wdHMuc3RhcnQpJiZsLm9wdHMuc3RhcnQuY2FsbChvLGwpLGwucHJvZ3Jlc3MobC5vcHRzLnByb2dyZXNzKS5kb25lKGwub3B0cy5kb25lLGwub3B0cy5jb21wbGV0ZSkuZmFpbChsLm9wdHMuZmFpbCkuYWx3YXlzKGwub3B0cy5hbHdheXMpLFMuZngudGltZXIoUy5leHRlbmQodSx7ZWxlbTpvLGFuaW06bCxxdWV1ZTpsLm9wdHMucXVldWV9KSksbH1TLkFuaW1hdGlvbj1TLmV4dGVuZChsdCx7dHdlZW5lcnM6eyIqIjpbZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNyZWF0ZVR3ZWVuKGUsdCk7cmV0dXJuIHNlKG4uZWxlbSxlLHRlLmV4ZWModCksbiksbn1dfSx0d2VlbmVyOmZ1bmN0aW9uKGUsdCl7bShlKT8odD1lLGU9WyIqIl0pOmU9ZS5tYXRjaChQKTtmb3IodmFyIG4scj0wLGk9ZS5sZW5ndGg7cjxpO3IrKyluPWVbcl0sbHQudHdlZW5lcnNbbl09bHQudHdlZW5lcnNbbl18fFtdLGx0LnR3ZWVuZXJzW25dLnVuc2hpZnQodCl9LHByZWZpbHRlcnM6W2Z1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjLGY9IndpZHRoImluIHR8fCJoZWlnaHQiaW4gdCxwPXRoaXMsZD17fSxoPWUuc3R5bGUsZz1lLm5vZGVUeXBlJiZhZShlKSx2PVkuZ2V0KGUsImZ4c2hvdyIpO2ZvcihyIGluIG4ucXVldWV8fChudWxsPT0oYT1TLl9xdWV1ZUhvb2tzKGUsImZ4IikpLnVucXVldWVkJiYoYS51bnF1ZXVlZD0wLHM9YS5lbXB0eS5maXJlLGEuZW1wdHkuZmlyZT1mdW5jdGlvbigpe2EudW5xdWV1ZWR8fHMoKX0pLGEudW5xdWV1ZWQrKyxwLmFsd2F5cyhmdW5jdGlvbigpe3AuYWx3YXlzKGZ1bmN0aW9uKCl7YS51bnF1ZXVlZC0tLFMucXVldWUoZSwiZngiKS5sZW5ndGh8fGEuZW1wdHkuZmlyZSgpfSl9KSksdClpZihpPXRbcl0scnQudGVzdChpKSl7aWYoZGVsZXRlIHRbcl0sbz1vfHwidG9nZ2xlIj09PWksaT09PShnPyJoaWRlIjoic2hvdyIpKXtpZigic2hvdyIhPT1pfHwhdnx8dm9pZCAwPT09dltyXSljb250aW51ZTtnPSEwfWRbcl09diYmdltyXXx8Uy5zdHlsZShlLHIpfWlmKCh1PSFTLmlzRW1wdHlPYmplY3QodCkpfHwhUy5pc0VtcHR5T2JqZWN0KGQpKWZvcihyIGluIGYmJjE9PT1lLm5vZGVUeXBlJiYobi5vdmVyZmxvdz1baC5vdmVyZmxvdyxoLm92ZXJmbG93WCxoLm92ZXJmbG93WV0sbnVsbD09KGw9diYmdi5kaXNwbGF5KSYmKGw9WS5nZXQoZSwiZGlzcGxheSIpKSwibm9uZSI9PT0oYz1TLmNzcyhlLCJkaXNwbGF5IikpJiYobD9jPWw6KGxlKFtlXSwhMCksbD1lLnN0eWxlLmRpc3BsYXl8fGwsYz1TLmNzcyhlLCJkaXNwbGF5IiksbGUoW2VdKSkpLCgiaW5saW5lIj09PWN8fCJpbmxpbmUtYmxvY2siPT09YyYmbnVsbCE9bCkmJiJub25lIj09PVMuY3NzKGUsImZsb2F0IikmJih1fHwocC5kb25lKGZ1bmN0aW9uKCl7aC5kaXNwbGF5PWx9KSxudWxsPT1sJiYoYz1oLmRpc3BsYXksbD0ibm9uZSI9PT1jPyIiOmMpKSxoLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxuLm92ZXJmbG93JiYoaC5vdmVyZmxvdz0iaGlkZGVuIixwLmFsd2F5cyhmdW5jdGlvbigpe2gub3ZlcmZsb3c9bi5vdmVyZmxvd1swXSxoLm92ZXJmbG93WD1uLm92ZXJmbG93WzFdLGgub3ZlcmZsb3dZPW4ub3ZlcmZsb3dbMl19KSksdT0hMSxkKXV8fCh2PyJoaWRkZW4iaW4gdiYmKGc9di5oaWRkZW4pOnY9WS5hY2Nlc3MoZSwiZnhzaG93Iix7ZGlzcGxheTpsfSksbyYmKHYuaGlkZGVuPSFnKSxnJiZsZShbZV0sITApLHAuZG9uZShmdW5jdGlvbigpe2ZvcihyIGluIGd8fGxlKFtlXSksWS5yZW1vdmUoZSwiZnhzaG93IiksZClTLnN0eWxlKGUscixkW3JdKX0pKSx1PXV0KGc/dltyXTowLHIscCksciBpbiB2fHwodltyXT11LnN0YXJ0LGcmJih1LmVuZD11LnN0YXJ0LHUuc3RhcnQ9MCkpfV0scHJlZmlsdGVyOmZ1bmN0aW9uKGUsdCl7dD9sdC5wcmVmaWx0ZXJzLnVuc2hpZnQoZSk6bHQucHJlZmlsdGVycy5wdXNoKGUpfX0pLFMuc3BlZWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10eXBlb2YgZT9TLmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fG0oZSkmJmUsZHVyYXRpb246ZSxlYXNpbmc6biYmdHx8dCYmIW0odCkmJnR9O3JldHVybiBTLmZ4Lm9mZj9yLmR1cmF0aW9uPTA6Im51bWJlciIhPXR5cGVvZiByLmR1cmF0aW9uJiYoci5kdXJhdGlvbiBpbiBTLmZ4LnNwZWVkcz9yLmR1cmF0aW9uPVMuZnguc3BlZWRzW3IuZHVyYXRpb25dOnIuZHVyYXRpb249Uy5meC5zcGVlZHMuX2RlZmF1bHQpLG51bGwhPXIucXVldWUmJiEwIT09ci5xdWV1ZXx8KHIucXVldWU9ImZ4Iiksci5vbGQ9ci5jb21wbGV0ZSxyLmNvbXBsZXRlPWZ1bmN0aW9uKCl7bShyLm9sZCkmJnIub2xkLmNhbGwodGhpcyksci5xdWV1ZSYmUy5kZXF1ZXVlKHRoaXMsci5xdWV1ZSl9LHJ9LFMuZm4uZXh0ZW5kKHtmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMuZmlsdGVyKGFlKS5jc3MoIm9wYWNpdHkiLDApLnNob3coKS5lbmQoKS5hbmltYXRlKHtvcGFjaXR5OnR9LGUsbixyKX0sYW5pbWF0ZTpmdW5jdGlvbih0LGUsbixyKXt2YXIgaT1TLmlzRW1wdHlPYmplY3QodCksbz1TLnNwZWVkKGUsbixyKSxhPWZ1bmN0aW9uKCl7dmFyIGU9bHQodGhpcyxTLmV4dGVuZCh7fSx0KSxvKTsoaXx8WS5nZXQodGhpcywiZmluaXNoIikpJiZlLnN0b3AoITApfTtyZXR1cm4gYS5maW5pc2g9YSxpfHwhMT09PW8ucXVldWU/dGhpcy5lYWNoKGEpOnRoaXMucXVldWUoby5xdWV1ZSxhKX0sc3RvcDpmdW5jdGlvbihpLGUsbyl7dmFyIGE9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zdG9wO2RlbGV0ZSBlLnN0b3AsdChvKX07cmV0dXJuInN0cmluZyIhPXR5cGVvZiBpJiYobz1lLGU9aSxpPXZvaWQgMCksZSYmdGhpcy5xdWV1ZShpfHwiZngiLFtdKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT0hMCx0PW51bGwhPWkmJmkrInF1ZXVlSG9va3MiLG49Uy50aW1lcnMscj1ZLmdldCh0aGlzKTtpZih0KXJbdF0mJnJbdF0uc3RvcCYmYShyW3RdKTtlbHNlIGZvcih0IGluIHIpclt0XSYmclt0XS5zdG9wJiZpdC50ZXN0KHQpJiZhKHJbdF0pO2Zvcih0PW4ubGVuZ3RoO3QtLTspblt0XS5lbGVtIT09dGhpc3x8bnVsbCE9aSYmblt0XS5xdWV1ZSE9PWl8fChuW3RdLmFuaW0uc3RvcChvKSxlPSExLG4uc3BsaWNlKHQsMSkpOyFlJiZvfHxTLmRlcXVldWUodGhpcyxpKX0pfSxmaW5pc2g6ZnVuY3Rpb24oYSl7cmV0dXJuITEhPT1hJiYoYT1hfHwiZngiKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZSx0PVkuZ2V0KHRoaXMpLG49dFthKyJxdWV1ZSJdLHI9dFthKyJxdWV1ZUhvb2tzIl0saT1TLnRpbWVycyxvPW4/bi5sZW5ndGg6MDtmb3IodC5maW5pc2g9ITAsUy5xdWV1ZSh0aGlzLGEsW10pLHImJnIuc3RvcCYmci5zdG9wLmNhbGwodGhpcywhMCksZT1pLmxlbmd0aDtlLS07KWlbZV0uZWxlbT09PXRoaXMmJmlbZV0ucXVldWU9PT1hJiYoaVtlXS5hbmltLnN0b3AoITApLGkuc3BsaWNlKGUsMSkpO2ZvcihlPTA7ZTxvO2UrKyluW2VdJiZuW2VdLmZpbmlzaCYmbltlXS5maW5pc2guY2FsbCh0aGlzKTtkZWxldGUgdC5maW5pc2h9KX19KSxTLmVhY2goWyJ0b2dnbGUiLCJzaG93IiwiaGlkZSJdLGZ1bmN0aW9uKGUscil7dmFyIGk9Uy5mbltyXTtTLmZuW3JdPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbnVsbD09ZXx8ImJvb2xlYW4iPT10eXBlb2YgZT9pLmFwcGx5KHRoaXMsYXJndW1lbnRzKTp0aGlzLmFuaW1hdGUoc3QociwhMCksZSx0LG4pfX0pLFMuZWFjaCh7c2xpZGVEb3duOnN0KCJzaG93Iiksc2xpZGVVcDpzdCgiaGlkZSIpLHNsaWRlVG9nZ2xlOnN0KCJ0b2dnbGUiKSxmYWRlSW46e29wYWNpdHk6InNob3cifSxmYWRlT3V0OntvcGFjaXR5OiJoaWRlIn0sZmFkZVRvZ2dsZTp7b3BhY2l0eToidG9nZ2xlIn19LGZ1bmN0aW9uKGUscil7Uy5mbltlXT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuYW5pbWF0ZShyLGUsdCxuKX19KSxTLnRpbWVycz1bXSxTLmZ4LnRpY2s9ZnVuY3Rpb24oKXt2YXIgZSx0PTAsbj1TLnRpbWVycztmb3IoWmU9RGF0ZS5ub3coKTt0PG4ubGVuZ3RoO3QrKykoZT1uW3RdKSgpfHxuW3RdIT09ZXx8bi5zcGxpY2UodC0tLDEpO24ubGVuZ3RofHxTLmZ4LnN0b3AoKSxaZT12b2lkIDB9LFMuZngudGltZXI9ZnVuY3Rpb24oZSl7Uy50aW1lcnMucHVzaChlKSxTLmZ4LnN0YXJ0KCl9LFMuZnguaW50ZXJ2YWw9MTMsUy5meC5zdGFydD1mdW5jdGlvbigpe2V0fHwoZXQ9ITAsb3QoKSl9LFMuZnguc3RvcD1mdW5jdGlvbigpe2V0PW51bGx9LFMuZnguc3BlZWRzPXtzbG93OjYwMCxmYXN0OjIwMCxfZGVmYXVsdDo0MDB9LFMuZm4uZGVsYXk9ZnVuY3Rpb24ocixlKXtyZXR1cm4gcj1TLmZ4JiZTLmZ4LnNwZWVkc1tyXXx8cixlPWV8fCJmeCIsdGhpcy5xdWV1ZShlLGZ1bmN0aW9uKGUsdCl7dmFyIG49Qy5zZXRUaW1lb3V0KGUscik7dC5zdG9wPWZ1bmN0aW9uKCl7Qy5jbGVhclRpbWVvdXQobil9fSl9LHR0PUUuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxudD1FLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpLmFwcGVuZENoaWxkKEUuY3JlYXRlRWxlbWVudCgib3B0aW9uIikpLHR0LnR5cGU9ImNoZWNrYm94Iix5LmNoZWNrT249IiIhPT10dC52YWx1ZSx5Lm9wdFNlbGVjdGVkPW50LnNlbGVjdGVkLCh0dD1FLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnZhbHVlPSJ0Iix0dC50eXBlPSJyYWRpbyIseS5yYWRpb1ZhbHVlPSJ0Ij09PXR0LnZhbHVlO3ZhciBjdCxmdD1TLmV4cHIuYXR0ckhhbmRsZTtTLmZuLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiAkKHRoaXMsUy5hdHRyLGUsdCwxPGFyZ3VtZW50cy5sZW5ndGgpfSxyZW1vdmVBdHRyOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtTLnJlbW92ZUF0dHIodGhpcyxlKX0pfX0pLFMuZXh0ZW5kKHthdHRyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89ZS5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiJ1bmRlZmluZWQiPT10eXBlb2YgZS5nZXRBdHRyaWJ1dGU/Uy5wcm9wKGUsdCxuKTooMT09PW8mJlMuaXNYTUxEb2MoZSl8fChpPVMuYXR0ckhvb2tzW3QudG9Mb3dlckNhc2UoKV18fChTLmV4cHIubWF0Y2guYm9vbC50ZXN0KHQpP2N0OnZvaWQgMCkpLHZvaWQgMCE9PW4/bnVsbD09PW4/dm9pZCBTLnJlbW92ZUF0dHIoZSx0KTppJiYic2V0ImluIGkmJnZvaWQgMCE9PShyPWkuc2V0KGUsbix0KSk/cjooZS5zZXRBdHRyaWJ1dGUodCxuKyIiKSxuKTppJiYiZ2V0ImluIGkmJm51bGwhPT0ocj1pLmdldChlLHQpKT9yOm51bGw9PShyPVMuZmluZC5hdHRyKGUsdCkpP3ZvaWQgMDpyKX0sYXR0ckhvb2tzOnt0eXBlOntzZXQ6ZnVuY3Rpb24oZSx0KXtpZigheS5yYWRpb1ZhbHVlJiYicmFkaW8iPT09dCYmQShlLCJpbnB1dCIpKXt2YXIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19fX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MCxpPXQmJnQubWF0Y2goUCk7aWYoaSYmMT09PWUubm9kZVR5cGUpd2hpbGUobj1pW3IrK10pZS5yZW1vdmVBdHRyaWJ1dGUobil9fSksY3Q9e3NldDpmdW5jdGlvbihlLHQsbil7cmV0dXJuITE9PT10P1MucmVtb3ZlQXR0cihlLG4pOmUuc2V0QXR0cmlidXRlKG4sbiksbn19LFMuZWFjaChTLmV4cHIubWF0Y2guYm9vbC5zb3VyY2UubWF0Y2goL1x3Ky9nKSxmdW5jdGlvbihlLHQpe3ZhciBhPWZ0W3RdfHxTLmZpbmQuYXR0cjtmdFt0XT1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXQudG9Mb3dlckNhc2UoKTtyZXR1cm4gbnx8KGk9ZnRbb10sZnRbb109cixyPW51bGwhPWEoZSx0LG4pP286bnVsbCxmdFtvXT1pKSxyfX0pO3ZhciBwdD0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLGR0PS9eKD86YXxhcmVhKSQvaTtmdW5jdGlvbiBodChlKXtyZXR1cm4oZS5tYXRjaChQKXx8W10pLmpvaW4oIiAiKX1mdW5jdGlvbiBndChlKXtyZXR1cm4gZS5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn1mdW5jdGlvbiB2dChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lOiJzdHJpbmciPT10eXBlb2YgZSYmZS5tYXRjaChQKXx8W119Uy5mbi5leHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLFMucHJvcCxlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXNbUy5wcm9wRml4W2VdfHxlXX0pfX0pLFMuZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89ZS5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiAxPT09byYmUy5pc1hNTERvYyhlKXx8KHQ9Uy5wcm9wRml4W3RdfHx0LGk9Uy5wcm9wSG9va3NbdF0pLHZvaWQgMCE9PW4/aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6ZVt0XT1uOmkmJiJnZXQiaW4gaSYmbnVsbCE9PShyPWkuZ2V0KGUsdCkpP3I6ZVt0XX0scHJvcEhvb2tzOnt0YWJJbmRleDp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInRhYmluZGV4Iik7cmV0dXJuIHQ/cGFyc2VJbnQodCwxMCk6cHQudGVzdChlLm5vZGVOYW1lKXx8ZHQudGVzdChlLm5vZGVOYW1lKSYmZS5ocmVmPzA6LTF9fX0scHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9fSkseS5vcHRTZWxlY3RlZHx8KFMucHJvcEhvb2tzLnNlbGVjdGVkPXtnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiZ0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LG51bGx9LHNldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7dCYmKHQuc2VsZWN0ZWRJbmRleCx0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4KX19KSxTLmVhY2goWyJ0YWJJbmRleCIsInJlYWRPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTcGFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe1MucHJvcEZpeFt0aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KSxTLmZuLmV4dGVuZCh7YWRkQ2xhc3M6ZnVuY3Rpb24odCl7dmFyIGUsbixyLGksbyxhLHMsdT0wO2lmKG0odCkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLmFkZENsYXNzKHQuY2FsbCh0aGlzLGUsZ3QodGhpcykpKX0pO2lmKChlPXZ0KHQpKS5sZW5ndGgpd2hpbGUobj10aGlzW3UrK10paWYoaT1ndChuKSxyPTE9PT1uLm5vZGVUeXBlJiYiICIraHQoaSkrIiAiKXthPTA7d2hpbGUobz1lW2ErK10pci5pbmRleE9mKCIgIitvKyIgIik8MCYmKHIrPW8rIiAiKTtpIT09KHM9aHQocikpJiZuLnNldEF0dHJpYnV0ZSgiY2xhc3MiLHMpfXJldHVybiB0aGlzfSxyZW1vdmVDbGFzczpmdW5jdGlvbih0KXt2YXIgZSxuLHIsaSxvLGEscyx1PTA7aWYobSh0KSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGUpe1ModGhpcykucmVtb3ZlQ2xhc3ModC5jYWxsKHRoaXMsZSxndCh0aGlzKSkpfSk7aWYoIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigoZT12dCh0KSkubGVuZ3RoKXdoaWxlKG49dGhpc1t1KytdKWlmKGk9Z3Qobikscj0xPT09bi5ub2RlVHlwZSYmIiAiK2h0KGkpKyIgIil7YT0wO3doaWxlKG89ZVthKytdKXdoaWxlKC0xPHIuaW5kZXhPZigiICIrbysiICIpKXI9ci5yZXBsYWNlKCIgIitvKyIgIiwiICIpO2khPT0ocz1odChyKSkmJm4uc2V0QXR0cmlidXRlKCJjbGFzcyIscyl9cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGksdCl7dmFyIG89dHlwZW9mIGksYT0ic3RyaW5nIj09PW98fEFycmF5LmlzQXJyYXkoaSk7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdCYmYT90P3RoaXMuYWRkQ2xhc3MoaSk6dGhpcy5yZW1vdmVDbGFzcyhpKTptKGkpP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLnRvZ2dsZUNsYXNzKGkuY2FsbCh0aGlzLGUsZ3QodGhpcyksdCksdCl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZSx0LG4scjtpZihhKXt0PTAsbj1TKHRoaXMpLHI9dnQoaSk7d2hpbGUoZT1yW3QrK10pbi5oYXNDbGFzcyhlKT9uLnJlbW92ZUNsYXNzKGUpOm4uYWRkQ2xhc3MoZSl9ZWxzZSB2b2lkIDAhPT1pJiYiYm9vbGVhbiIhPT1vfHwoKGU9Z3QodGhpcykpJiZZLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIixlKSx0aGlzLnNldEF0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixlfHwhMT09PWk/IiI6WS5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj0wO3Q9IiAiK2UrIiAiO3doaWxlKG49dGhpc1tyKytdKWlmKDE9PT1uLm5vZGVUeXBlJiYtMTwoIiAiK2h0KGd0KG4pKSsiICIpLmluZGV4T2YodCkpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIHl0PS9cci9nO1MuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24obil7dmFyIHIsZSxpLHQ9dGhpc1swXTtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8oaT1tKG4pLHRoaXMuZWFjaChmdW5jdGlvbihlKXt2YXIgdDsxPT09dGhpcy5ub2RlVHlwZSYmKG51bGw9PSh0PWk/bi5jYWxsKHRoaXMsZSxTKHRoaXMpLnZhbCgpKTpuKT90PSIiOiJudW1iZXIiPT10eXBlb2YgdD90Kz0iIjpBcnJheS5pc0FycmF5KHQpJiYodD1TLm1hcCh0LGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIiJ9KSksKHI9Uy52YWxIb29rc1t0aGlzLnR5cGVdfHxTLnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYic2V0ImluIHImJnZvaWQgMCE9PXIuc2V0KHRoaXMsdCwidmFsdWUiKXx8KHRoaXMudmFsdWU9dCkpfSkpOnQ/KHI9Uy52YWxIb29rc1t0LnR5cGVdfHxTLnZhbEhvb2tzW3Qubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYiZ2V0ImluIHImJnZvaWQgMCE9PShlPXIuZ2V0KHQsInZhbHVlIikpP2U6InN0cmluZyI9PXR5cGVvZihlPXQudmFsdWUpP2UucmVwbGFjZSh5dCwiIik6bnVsbD09ZT8iIjplOnZvaWQgMH19KSxTLmV4dGVuZCh7dmFsSG9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInZhbHVlIik7cmV0dXJuIG51bGwhPXQ/dDpodChTLnRleHQoZSkpfX0sc2VsZWN0OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGk9ZS5vcHRpb25zLG89ZS5zZWxlY3RlZEluZGV4LGE9InNlbGVjdC1vbmUiPT09ZS50eXBlLHM9YT9udWxsOltdLHU9YT9vKzE6aS5sZW5ndGg7Zm9yKHI9bzwwP3U6YT9vOjA7cjx1O3IrKylpZigoKG49aVtyXSkuc2VsZWN0ZWR8fHI9PT1vKSYmIW4uZGlzYWJsZWQmJighbi5wYXJlbnROb2RlLmRpc2FibGVkfHwhQShuLnBhcmVudE5vZGUsIm9wdGdyb3VwIikpKXtpZih0PVMobikudmFsKCksYSlyZXR1cm4gdDtzLnB1c2godCl9cmV0dXJuIHN9LHNldDpmdW5jdGlvbihlLHQpe3ZhciBuLHIsaT1lLm9wdGlvbnMsbz1TLm1ha2VBcnJheSh0KSxhPWkubGVuZ3RoO3doaWxlKGEtLSkoKHI9aVthXSkuc2VsZWN0ZWQ9LTE8Uy5pbkFycmF5KFMudmFsSG9va3Mub3B0aW9uLmdldChyKSxvKSkmJihuPSEwKTtyZXR1cm4gbnx8KGUuc2VsZWN0ZWRJbmRleD0tMSksb319fX0pLFMuZWFjaChbInJhZGlvIiwiY2hlY2tib3giXSxmdW5jdGlvbigpe1MudmFsSG9va3NbdGhpc109e3NldDpmdW5jdGlvbihlLHQpe2lmKEFycmF5LmlzQXJyYXkodCkpcmV0dXJuIGUuY2hlY2tlZD0tMTxTLmluQXJyYXkoUyhlKS52YWwoKSx0KX19LHkuY2hlY2tPbnx8KFMudmFsSG9va3NbdGhpc10uZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT09ZS5nZXRBdHRyaWJ1dGUoInZhbHVlIik/Im9uIjplLnZhbHVlfSl9KSx5LmZvY3VzaW49Im9uZm9jdXNpbiJpbiBDO3ZhciBtdD0vXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8seHQ9ZnVuY3Rpb24oZSl7ZS5zdG9wUHJvcGFnYXRpb24oKX07Uy5leHRlbmQoUy5ldmVudCx7dHJpZ2dlcjpmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1LGwsYyxmLHA9W258fEVdLGQ9di5jYWxsKGUsInR5cGUiKT9lLnR5cGU6ZSxoPXYuY2FsbChlLCJuYW1lc3BhY2UiKT9lLm5hbWVzcGFjZS5zcGxpdCgiLiIpOltdO2lmKG89Zj1hPW49bnx8RSwzIT09bi5ub2RlVHlwZSYmOCE9PW4ubm9kZVR5cGUmJiFtdC50ZXN0KGQrUy5ldmVudC50cmlnZ2VyZWQpJiYoLTE8ZC5pbmRleE9mKCIuIikmJihkPShoPWQuc3BsaXQoIi4iKSkuc2hpZnQoKSxoLnNvcnQoKSksdT1kLmluZGV4T2YoIjoiKTwwJiYib24iK2QsKGU9ZVtTLmV4cGFuZG9dP2U6bmV3IFMuRXZlbnQoZCwib2JqZWN0Ij09dHlwZW9mIGUmJmUpKS5pc1RyaWdnZXI9cj8yOjMsZS5uYW1lc3BhY2U9aC5qb2luKCIuIiksZS5ybmFtZXNwYWNlPWUubmFtZXNwYWNlP25ldyBSZWdFeHAoIihefFxcLikiK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIik6bnVsbCxlLnJlc3VsdD12b2lkIDAsZS50YXJnZXR8fChlLnRhcmdldD1uKSx0PW51bGw9PXQ/W2VdOlMubWFrZUFycmF5KHQsW2VdKSxjPVMuZXZlbnQuc3BlY2lhbFtkXXx8e30scnx8IWMudHJpZ2dlcnx8ITEhPT1jLnRyaWdnZXIuYXBwbHkobix0KSkpe2lmKCFyJiYhYy5ub0J1YmJsZSYmIXgobikpe2ZvcihzPWMuZGVsZWdhdGVUeXBlfHxkLG10LnRlc3QocytkKXx8KG89by5wYXJlbnROb2RlKTtvO289by5wYXJlbnROb2RlKXAucHVzaChvKSxhPW87YT09PShuLm93bmVyRG9jdW1lbnR8fEUpJiZwLnB1c2goYS5kZWZhdWx0Vmlld3x8YS5wYXJlbnRXaW5kb3d8fEMpfWk9MDt3aGlsZSgobz1wW2krK10pJiYhZS5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpKWY9byxlLnR5cGU9MTxpP3M6Yy5iaW5kVHlwZXx8ZCwobD0oWS5nZXQobywiZXZlbnRzIil8fE9iamVjdC5jcmVhdGUobnVsbCkpW2UudHlwZV0mJlkuZ2V0KG8sImhhbmRsZSIpKSYmbC5hcHBseShvLHQpLChsPXUmJm9bdV0pJiZsLmFwcGx5JiZWKG8pJiYoZS5yZXN1bHQ9bC5hcHBseShvLHQpLCExPT09ZS5yZXN1bHQmJmUucHJldmVudERlZmF1bHQoKSk7cmV0dXJuIGUudHlwZT1kLHJ8fGUuaXNEZWZhdWx0UHJldmVudGVkKCl8fGMuX2RlZmF1bHQmJiExIT09Yy5fZGVmYXVsdC5hcHBseShwLnBvcCgpLHQpfHwhVihuKXx8dSYmbShuW2RdKSYmIXgobikmJigoYT1uW3VdKSYmKG5bdV09bnVsbCksUy5ldmVudC50cmlnZ2VyZWQ9ZCxlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkmJmYuYWRkRXZlbnRMaXN0ZW5lcihkLHh0KSxuW2RdKCksZS5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpJiZmLnJlbW92ZUV2ZW50TGlzdGVuZXIoZCx4dCksUy5ldmVudC50cmlnZ2VyZWQ9dm9pZCAwLGEmJihuW3VdPWEpKSxlLnJlc3VsdH19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1TLmV4dGVuZChuZXcgUy5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTtTLmV2ZW50LnRyaWdnZXIocixudWxsLHQpfX0pLFMuZm4uZXh0ZW5kKHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIFMuZXZlbnQudHJpZ2dlcihlLHQsbiwhMCl9fSkseS5mb2N1c2lufHxTLmVhY2goe2ZvY3VzOiJmb2N1c2luIixibHVyOiJmb2N1c291dCJ9LGZ1bmN0aW9uKG4scil7dmFyIGk9ZnVuY3Rpb24oZSl7Uy5ldmVudC5zaW11bGF0ZShyLGUudGFyZ2V0LFMuZXZlbnQuZml4KGUpKX07Uy5ldmVudC5zcGVjaWFsW3JdPXtzZXR1cDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3duZXJEb2N1bWVudHx8dGhpcy5kb2N1bWVudHx8dGhpcyx0PVkuYWNjZXNzKGUscik7dHx8ZS5hZGRFdmVudExpc3RlbmVyKG4saSwhMCksWS5hY2Nlc3MoZSxyLCh0fHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMuZG9jdW1lbnR8fHRoaXMsdD1ZLmFjY2VzcyhlLHIpLTE7dD9ZLmFjY2VzcyhlLHIsdCk6KGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihuLGksITApLFkucmVtb3ZlKGUscikpfX19KTt2YXIgYnQ9Qy5sb2NhdGlvbix3dD17Z3VpZDpEYXRlLm5vdygpfSxUdD0vXD8vO1MucGFyc2VYTUw9ZnVuY3Rpb24oZSl7dmFyIHQsbjtpZighZXx8InN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBudWxsO3RyeXt0PShuZXcgQy5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyhlLCJ0ZXh0L3htbCIpfWNhdGNoKGUpe31yZXR1cm4gbj10JiZ0LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwYXJzZXJlcnJvciIpWzBdLHQmJiFufHxTLmVycm9yKCJJbnZhbGlkIFhNTDogIisobj9TLm1hcChuLmNoaWxkTm9kZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUudGV4dENvbnRlbnR9KS5qb2luKCJcbiIpOmUpKSx0fTt2YXIgQ3Q9L1xbXF0kLyxFdD0vXHI/XG4vZyxTdD0vXig/OnN1Ym1pdHxidXR0b258aW1hZ2V8cmVzZXR8ZmlsZSkkL2ksa3Q9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8a2V5Z2VuKS9pO2Z1bmN0aW9uIEF0KG4sZSxyLGkpe3ZhciB0O2lmKEFycmF5LmlzQXJyYXkoZSkpUy5lYWNoKGUsZnVuY3Rpb24oZSx0KXtyfHxDdC50ZXN0KG4pP2kobix0KTpBdChuKyJbIisoIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT10P2U6IiIpKyJdIix0LHIsaSl9KTtlbHNlIGlmKHJ8fCJvYmplY3QiIT09dyhlKSlpKG4sZSk7ZWxzZSBmb3IodCBpbiBlKUF0KG4rIlsiK3QrIl0iLGVbdF0scixpKX1TLnBhcmFtPWZ1bmN0aW9uKGUsdCl7dmFyIG4scj1bXSxpPWZ1bmN0aW9uKGUsdCl7dmFyIG49bSh0KT90KCk6dDtyW3IubGVuZ3RoXT1lbmNvZGVVUklDb21wb25lbnQoZSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsPT1uPyIiOm4pfTtpZihudWxsPT1lKXJldHVybiIiO2lmKEFycmF5LmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhUy5pc1BsYWluT2JqZWN0KGUpKVMuZWFjaChlLGZ1bmN0aW9uKCl7aSh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZvcihuIGluIGUpQXQobixlW25dLHQsaSk7cmV0dXJuIHIuam9pbigiJiIpfSxTLmZuLmV4dGVuZCh7c2VyaWFsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIFMucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsaXplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgZT1TLnByb3AodGhpcywiZWxlbWVudHMiKTtyZXR1cm4gZT9TLm1ha2VBcnJheShlKTp0aGlzfSkuZmlsdGVyKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy50eXBlO3JldHVybiB0aGlzLm5hbWUmJiFTKHRoaXMpLmlzKCI6ZGlzYWJsZWQiKSYma3QudGVzdCh0aGlzLm5vZGVOYW1lKSYmIVN0LnRlc3QoZSkmJih0aGlzLmNoZWNrZWR8fCFwZS50ZXN0KGUpKX0pLm1hcChmdW5jdGlvbihlLHQpe3ZhciBuPVModGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDpBcnJheS5pc0FycmF5KG4pP1MubWFwKG4sZnVuY3Rpb24oZSl7cmV0dXJue25hbWU6dC5uYW1lLHZhbHVlOmUucmVwbGFjZShFdCwiXHJcbiIpfX0pOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2UoRXQsIlxyXG4iKX19KS5nZXQoKX19KTt2YXIgTnQ9LyUyMC9nLGp0PS8jLiokLyxEdD0vKFs/Jl0pXz1bXiZdKi8scXQ9L14oLio/KTpbIFx0XSooW15cclxuXSopJC9nbSxMdD0vXig/OkdFVHxIRUFEKSQvLEh0PS9eXC9cLy8sT3Q9e30sUHQ9e30sUnQ9IiovIi5jb25jYXQoIioiKSxNdD1FLmNyZWF0ZUVsZW1lbnQoImEiKTtmdW5jdGlvbiBJdChvKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXsic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT0iKiIpO3ZhciBuLHI9MCxpPWUudG9Mb3dlckNhc2UoKS5tYXRjaChQKXx8W107aWYobSh0KSl3aGlsZShuPWlbcisrXSkiKyI9PT1uWzBdPyhuPW4uc2xpY2UoMSl8fCIqIiwob1tuXT1vW25dfHxbXSkudW5zaGlmdCh0KSk6KG9bbl09b1tuXXx8W10pLnB1c2godCl9fWZ1bmN0aW9uIFd0KHQsaSxvLGEpe3ZhciBzPXt9LHU9dD09PVB0O2Z1bmN0aW9uIGwoZSl7dmFyIHI7cmV0dXJuIHNbZV09ITAsUy5lYWNoKHRbZV18fFtdLGZ1bmN0aW9uKGUsdCl7dmFyIG49dChpLG8sYSk7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBufHx1fHxzW25dP3U/IShyPW4pOnZvaWQgMDooaS5kYXRhVHlwZXMudW5zaGlmdChuKSxsKG4pLCExKX0pLHJ9cmV0dXJuIGwoaS5kYXRhVHlwZXNbMF0pfHwhc1siKiJdJiZsKCIqIil9ZnVuY3Rpb24gRnQoZSx0KXt2YXIgbixyLGk9Uy5hamF4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChpW25dP2U6cnx8KHI9e30pKVtuXT10W25dKTtyZXR1cm4gciYmUy5leHRlbmQoITAsZSxyKSxlfU10LmhyZWY9YnQuaHJlZixTLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e30sYWpheFNldHRpbmdzOnt1cmw6YnQuaHJlZix0eXBlOiJHRVQiLGlzTG9jYWw6L14oPzphYm91dHxhcHB8YXBwLXN0b3JhZ2V8ListZXh0ZW5zaW9ufGZpbGV8cmVzfHdpZGdldCk6JC8udGVzdChidC5wcm90b2NvbCksZ2xvYmFsOiEwLHByb2Nlc3NEYXRhOiEwLGFzeW5jOiEwLGNvbnRlbnRUeXBlOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9VVRGLTgiLGFjY2VwdHM6eyIqIjpSdCx0ZXh0OiJ0ZXh0L3BsYWluIixodG1sOiJ0ZXh0L2h0bWwiLHhtbDoiYXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsanNvbjoiYXBwbGljYXRpb24vanNvbiwgdGV4dC9qYXZhc2NyaXB0In0sY29udGVudHM6e3htbDovXGJ4bWxcYi8saHRtbDovXGJodG1sLyxqc29uOi9cYmpzb25cYi99LHJlc3BvbnNlRmllbGRzOnt4bWw6InJlc3BvbnNlWE1MIix0ZXh0OiJyZXNwb25zZVRleHQiLGpzb246InJlc3BvbnNlSlNPTiJ9LGNvbnZlcnRlcnM6eyIqIHRleHQiOlN0cmluZywidGV4dCBodG1sIjohMCwidGV4dCBqc29uIjpKU09OLnBhcnNlLCJ0ZXh0IHhtbCI6Uy5wYXJzZVhNTH0sZmxhdE9wdGlvbnM6e3VybDohMCxjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/RnQoRnQoZSxTLmFqYXhTZXR0aW5ncyksdCk6RnQoUy5hamF4U2V0dGluZ3MsZSl9LGFqYXhQcmVmaWx0ZXI6SXQoT3QpLGFqYXhUcmFuc3BvcnQ6SXQoUHQpLGFqYXg6ZnVuY3Rpb24oZSx0KXsib2JqZWN0Ij09dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLHQ9dHx8e307dmFyIGMsZixwLG4sZCxyLGgsZyxpLG8sdj1TLmFqYXhTZXR1cCh7fSx0KSx5PXYuY29udGV4dHx8dixtPXYuY29udGV4dCYmKHkubm9kZVR5cGV8fHkuanF1ZXJ5KT9TKHkpOlMuZXZlbnQseD1TLkRlZmVycmVkKCksYj1TLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx3PXYuc3RhdHVzQ29kZXx8e30sYT17fSxzPXt9LHU9ImNhbmNlbGVkIixUPXtyZWFkeVN0YXRlOjAsZ2V0UmVzcG9uc2VIZWFkZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoaCl7aWYoIW4pe249e307d2hpbGUodD1xdC5leGVjKHApKW5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl09KG5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl18fFtdKS5jb25jYXQodFsyXSl9dD1uW2UudG9Mb3dlckNhc2UoKSsiICJdfXJldHVybiBudWxsPT10P251bGw6dC5qb2luKCIsICIpfSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gaD9wOm51bGx9LHNldFJlcXVlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09aCYmKGU9c1tlLnRvTG93ZXJDYXNlKCldPXNbZS50b0xvd2VyQ2FzZSgpXXx8ZSxhW2VdPXQpLHRoaXN9LG92ZXJyaWRlTWltZVR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWgmJih2Lm1pbWVUeXBlPWUpLHRoaXN9LHN0YXR1c0NvZGU6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoZSlpZihoKVQuYWx3YXlzKGVbVC5zdGF0dXNdKTtlbHNlIGZvcih0IGluIGUpd1t0XT1bd1t0XSxlW3RdXTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZXx8dTtyZXR1cm4gYyYmYy5hYm9ydCh0KSxsKDAsdCksdGhpc319O2lmKHgucHJvbWlzZShUKSx2LnVybD0oKGV8fHYudXJsfHxidC5ocmVmKSsiIikucmVwbGFjZShIdCxidC5wcm90b2NvbCsiLy8iKSx2LnR5cGU9dC5tZXRob2R8fHQudHlwZXx8di5tZXRob2R8fHYudHlwZSx2LmRhdGFUeXBlcz0odi5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm1hdGNoKFApfHxbIiJdLG51bGw9PXYuY3Jvc3NEb21haW4pe3I9RS5jcmVhdGVFbGVtZW50KCJhIik7dHJ5e3IuaHJlZj12LnVybCxyLmhyZWY9ci5ocmVmLHYuY3Jvc3NEb21haW49TXQucHJvdG9jb2wrIi8vIitNdC5ob3N0IT1yLnByb3RvY29sKyIvLyIrci5ob3N0fWNhdGNoKGUpe3YuY3Jvc3NEb21haW49ITB9fWlmKHYuZGF0YSYmdi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiB2LmRhdGEmJih2LmRhdGE9Uy5wYXJhbSh2LmRhdGEsdi50cmFkaXRpb25hbCkpLFd0KE90LHYsdCxUKSxoKXJldHVybiBUO2ZvcihpIGluKGc9Uy5ldmVudCYmdi5nbG9iYWwpJiYwPT1TLmFjdGl2ZSsrJiZTLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLHYudHlwZT12LnR5cGUudG9VcHBlckNhc2UoKSx2Lmhhc0NvbnRlbnQ9IUx0LnRlc3Qodi50eXBlKSxmPXYudXJsLnJlcGxhY2UoanQsIiIpLHYuaGFzQ29udGVudD92LmRhdGEmJnYucHJvY2Vzc0RhdGEmJjA9PT0odi5jb250ZW50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiYodi5kYXRhPXYuZGF0YS5yZXBsYWNlKE50LCIrIikpOihvPXYudXJsLnNsaWNlKGYubGVuZ3RoKSx2LmRhdGEmJih2LnByb2Nlc3NEYXRhfHwic3RyaW5nIj09dHlwZW9mIHYuZGF0YSkmJihmKz0oVHQudGVzdChmKT8iJiI6Ij8iKSt2LmRhdGEsZGVsZXRlIHYuZGF0YSksITE9PT12LmNhY2hlJiYoZj1mLnJlcGxhY2UoRHQsIiQxIiksbz0oVHQudGVzdChmKT8iJiI6Ij8iKSsiXz0iK3d0Lmd1aWQrKytvKSx2LnVybD1mK28pLHYuaWZNb2RpZmllZCYmKFMubGFzdE1vZGlmaWVkW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixTLmxhc3RNb2RpZmllZFtmXSksUy5ldGFnW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2giLFMuZXRhZ1tmXSkpLCh2LmRhdGEmJnYuaGFzQ29udGVudCYmITEhPT12LmNvbnRlbnRUeXBlfHx0LmNvbnRlbnRUeXBlKSYmVC5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLHYuY29udGVudFR5cGUpLFQuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0Iix2LmRhdGFUeXBlc1swXSYmdi5hY2NlcHRzW3YuZGF0YVR5cGVzWzBdXT92LmFjY2VwdHNbdi5kYXRhVHlwZXNbMF1dKygiKiIhPT12LmRhdGFUeXBlc1swXT8iLCAiK1J0KyI7IHE9MC4wMSI6IiIpOnYuYWNjZXB0c1siKiJdKSx2LmhlYWRlcnMpVC5zZXRSZXF1ZXN0SGVhZGVyKGksdi5oZWFkZXJzW2ldKTtpZih2LmJlZm9yZVNlbmQmJighMT09PXYuYmVmb3JlU2VuZC5jYWxsKHksVCx2KXx8aCkpcmV0dXJuIFQuYWJvcnQoKTtpZih1PSJhYm9ydCIsYi5hZGQodi5jb21wbGV0ZSksVC5kb25lKHYuc3VjY2VzcyksVC5mYWlsKHYuZXJyb3IpLGM9V3QoUHQsdix0LFQpKXtpZihULnJlYWR5U3RhdGU9MSxnJiZtLnRyaWdnZXIoImFqYXhTZW5kIixbVCx2XSksaClyZXR1cm4gVDt2LmFzeW5jJiYwPHYudGltZW91dCYmKGQ9Qy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7VC5hYm9ydCgidGltZW91dCIpfSx2LnRpbWVvdXQpKTt0cnl7aD0hMSxjLnNlbmQoYSxsKX1jYXRjaChlKXtpZihoKXRocm93IGU7bCgtMSxlKX19ZWxzZSBsKC0xLCJObyBUcmFuc3BvcnQiKTtmdW5jdGlvbiBsKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD10O2h8fChoPSEwLGQmJkMuY2xlYXJUaW1lb3V0KGQpLGM9dm9pZCAwLHA9cnx8IiIsVC5yZWFkeVN0YXRlPTA8ZT80OjAsaT0yMDA8PWUmJmU8MzAwfHwzMDQ9PT1lLG4mJihzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuY29udGVudHMsdT1lLmRhdGFUeXBlczt3aGlsZSgiKiI9PT11WzBdKXUuc2hpZnQoKSx2b2lkIDA9PT1yJiYocj1lLm1pbWVUeXBlfHx0LmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKSk7aWYocilmb3IoaSBpbiBzKWlmKHNbaV0mJnNbaV0udGVzdChyKSl7dS51bnNoaWZ0KGkpO2JyZWFrfWlmKHVbMF1pbiBuKW89dVswXTtlbHNle2ZvcihpIGluIG4pe2lmKCF1WzBdfHxlLmNvbnZlcnRlcnNbaSsiICIrdVswXV0pe289aTticmVha31hfHwoYT1pKX1vPW98fGF9aWYobylyZXR1cm4gbyE9PXVbMF0mJnUudW5zaGlmdChvKSxuW29dfSh2LFQsbikpLCFpJiYtMTxTLmluQXJyYXkoInNjcmlwdCIsdi5kYXRhVHlwZXMpJiZTLmluQXJyYXkoImpzb24iLHYuZGF0YVR5cGVzKTwwJiYodi5jb252ZXJ0ZXJzWyJ0ZXh0IHNjcmlwdCJdPWZ1bmN0aW9uKCl7fSkscz1mdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1LGw9e30sYz1lLmRhdGFUeXBlcy5zbGljZSgpO2lmKGNbMV0pZm9yKGEgaW4gZS5jb252ZXJ0ZXJzKWxbYS50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbYV07bz1jLnNoaWZ0KCk7d2hpbGUobylpZihlLnJlc3BvbnNlRmllbGRzW29dJiYobltlLnJlc3BvbnNlRmllbGRzW29dXT10KSwhdSYmciYmZS5kYXRhRmlsdGVyJiYodD1lLmRhdGFGaWx0ZXIodCxlLmRhdGFUeXBlKSksdT1vLG89Yy5zaGlmdCgpKWlmKCIqIj09PW8pbz11O2Vsc2UgaWYoIioiIT09dSYmdSE9PW8pe2lmKCEoYT1sW3UrIiAiK29dfHxsWyIqICIrb10pKWZvcihpIGluIGwpaWYoKHM9aS5zcGxpdCgiICIpKVsxXT09PW8mJihhPWxbdSsiICIrc1swXV18fGxbIiogIitzWzBdXSkpeyEwPT09YT9hPWxbaV06ITAhPT1sW2ldJiYobz1zWzBdLGMudW5zaGlmdChzWzFdKSk7YnJlYWt9aWYoITAhPT1hKWlmKGEmJmVbInRocm93cyJdKXQ9YSh0KTtlbHNlIHRyeXt0PWEodCl9Y2F0Y2goZSl7cmV0dXJue3N0YXRlOiJwYXJzZXJlcnJvciIsZXJyb3I6YT9lOiJObyBjb252ZXJzaW9uIGZyb20gIit1KyIgdG8gIitvfX19cmV0dXJue3N0YXRlOiJzdWNjZXNzIixkYXRhOnR9fSh2LHMsVCxpKSxpPyh2LmlmTW9kaWZpZWQmJigodT1ULmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIikpJiYoUy5sYXN0TW9kaWZpZWRbZl09dSksKHU9VC5nZXRSZXNwb25zZUhlYWRlcigiZXRhZyIpKSYmKFMuZXRhZ1tmXT11KSksMjA0PT09ZXx8IkhFQUQiPT09di50eXBlP2w9Im5vY29udGVudCI6MzA0PT09ZT9sPSJub3Rtb2RpZmllZCI6KGw9cy5zdGF0ZSxvPXMuZGF0YSxpPSEoYT1zLmVycm9yKSkpOihhPWwsIWUmJmx8fChsPSJlcnJvciIsZTwwJiYoZT0wKSkpLFQuc3RhdHVzPWUsVC5zdGF0dXNUZXh0PSh0fHxsKSsiIixpP3gucmVzb2x2ZVdpdGgoeSxbbyxsLFRdKTp4LnJlamVjdFdpdGgoeSxbVCxsLGFdKSxULnN0YXR1c0NvZGUodyksdz12b2lkIDAsZyYmbS50cmlnZ2VyKGk/ImFqYXhTdWNjZXNzIjoiYWpheEVycm9yIixbVCx2LGk/bzphXSksYi5maXJlV2l0aCh5LFtULGxdKSxnJiYobS50cmlnZ2VyKCJhamF4Q29tcGxldGUiLFtULHZdKSwtLVMuYWN0aXZlfHxTLmV2ZW50LnRyaWdnZXIoImFqYXhTdG9wIikpKX1yZXR1cm4gVH0sZ2V0SlNPTjpmdW5jdGlvbihlLHQsbil7cmV0dXJuIFMuZ2V0KGUsdCxuLCJqc29uIil9LGdldFNjcmlwdDpmdW5jdGlvbihlLHQpe3JldHVybiBTLmdldChlLHZvaWQgMCx0LCJzY3JpcHQiKX19KSxTLmVhY2goWyJnZXQiLCJwb3N0Il0sZnVuY3Rpb24oZSxpKXtTW2ldPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBtKHQpJiYocj1yfHxuLG49dCx0PXZvaWQgMCksUy5hamF4KFMuZXh0ZW5kKHt1cmw6ZSx0eXBlOmksZGF0YVR5cGU6cixkYXRhOnQsc3VjY2VzczpufSxTLmlzUGxhaW5PYmplY3QoZSkmJmUpKX19KSxTLmFqYXhQcmVmaWx0ZXIoZnVuY3Rpb24oZSl7dmFyIHQ7Zm9yKHQgaW4gZS5oZWFkZXJzKSJjb250ZW50LXR5cGUiPT09dC50b0xvd2VyQ2FzZSgpJiYoZS5jb250ZW50VHlwZT1lLmhlYWRlcnNbdF18fCIiKX0pLFMuX2V2YWxVcmw9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBTLmFqYXgoe3VybDplLHR5cGU6IkdFVCIsZGF0YVR5cGU6InNjcmlwdCIsY2FjaGU6ITAsYXN5bmM6ITEsZ2xvYmFsOiExLGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oKXt9fSxkYXRhRmlsdGVyOmZ1bmN0aW9uKGUpe1MuZ2xvYmFsRXZhbChlLHQsbil9fSl9LFMuZm4uZXh0ZW5kKHt3cmFwQWxsOmZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiB0aGlzWzBdJiYobShlKSYmKGU9ZS5jYWxsKHRoaXNbMF0pKSx0PVMoZSx0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJnQuaW5zZXJ0QmVmb3JlKHRoaXNbMF0pLHQubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpczt3aGlsZShlLmZpcnN0RWxlbWVudENoaWxkKWU9ZS5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gZX0pLmFwcGVuZCh0aGlzKSksdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKG4pe3JldHVybiBtKG4pP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLndyYXBJbm5lcihuLmNhbGwodGhpcyxlKSl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1TKHRoaXMpLHQ9ZS5jb250ZW50cygpO3QubGVuZ3RoP3Qud3JhcEFsbChuKTplLmFwcGVuZChuKX0pfSx3cmFwOmZ1bmN0aW9uKHQpe3ZhciBuPW0odCk7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLndyYXBBbGwobj90LmNhbGwodGhpcyxlKTp0KX0pfSx1bndyYXA6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucGFyZW50KGUpLm5vdCgiYm9keSIpLmVhY2goZnVuY3Rpb24oKXtTKHRoaXMpLnJlcGxhY2VXaXRoKHRoaXMuY2hpbGROb2Rlcyl9KSx0aGlzfX0pLFMuZXhwci5wc2V1ZG9zLmhpZGRlbj1mdW5jdGlvbihlKXtyZXR1cm4hUy5leHByLnBzZXVkb3MudmlzaWJsZShlKX0sUy5leHByLnBzZXVkb3MudmlzaWJsZT1mdW5jdGlvbihlKXtyZXR1cm4hIShlLm9mZnNldFdpZHRofHxlLm9mZnNldEhlaWdodHx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCl9LFMuYWpheFNldHRpbmdzLnhocj1mdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IEMuWE1MSHR0cFJlcXVlc3R9Y2F0Y2goZSl7fX07dmFyIEJ0PXswOjIwMCwxMjIzOjIwNH0sJHQ9Uy5hamF4U2V0dGluZ3MueGhyKCk7eS5jb3JzPSEhJHQmJiJ3aXRoQ3JlZGVudGlhbHMiaW4gJHQseS5hamF4PSR0PSEhJHQsUy5hamF4VHJhbnNwb3J0KGZ1bmN0aW9uKGkpe3ZhciBvLGE7aWYoeS5jb3JzfHwkdCYmIWkuY3Jvc3NEb21haW4pcmV0dXJue3NlbmQ6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPWkueGhyKCk7aWYoci5vcGVuKGkudHlwZSxpLnVybCxpLmFzeW5jLGkudXNlcm5hbWUsaS5wYXNzd29yZCksaS54aHJGaWVsZHMpZm9yKG4gaW4gaS54aHJGaWVsZHMpcltuXT1pLnhockZpZWxkc1tuXTtmb3IobiBpbiBpLm1pbWVUeXBlJiZyLm92ZXJyaWRlTWltZVR5cGUmJnIub3ZlcnJpZGVNaW1lVHlwZShpLm1pbWVUeXBlKSxpLmNyb3NzRG9tYWlufHxlWyJYLVJlcXVlc3RlZC1XaXRoIl18fChlWyJYLVJlcXVlc3RlZC1XaXRoIl09IlhNTEh0dHBSZXF1ZXN0IiksZSlyLnNldFJlcXVlc3RIZWFkZXIobixlW25dKTtvPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe28mJihvPWE9ci5vbmxvYWQ9ci5vbmVycm9yPXIub25hYm9ydD1yLm9udGltZW91dD1yLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLCJhYm9ydCI9PT1lP3IuYWJvcnQoKToiZXJyb3IiPT09ZT8ibnVtYmVyIiE9dHlwZW9mIHIuc3RhdHVzP3QoMCwiZXJyb3IiKTp0KHIuc3RhdHVzLHIuc3RhdHVzVGV4dCk6dChCdFtyLnN0YXR1c118fHIuc3RhdHVzLHIuc3RhdHVzVGV4dCwidGV4dCIhPT0oci5yZXNwb25zZVR5cGV8fCJ0ZXh0Iil8fCJzdHJpbmciIT10eXBlb2Ygci5yZXNwb25zZVRleHQ/e2JpbmFyeTpyLnJlc3BvbnNlfTp7dGV4dDpyLnJlc3BvbnNlVGV4dH0sci5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSkpfX0sci5vbmxvYWQ9bygpLGE9ci5vbmVycm9yPXIub250aW1lb3V0PW8oImVycm9yIiksdm9pZCAwIT09ci5vbmFib3J0P3Iub25hYm9ydD1hOnIub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09PXIucmVhZHlTdGF0ZSYmQy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7byYmYSgpfSl9LG89bygiYWJvcnQiKTt0cnl7ci5zZW5kKGkuaGFzQ29udGVudCYmaS5kYXRhfHxudWxsKX1jYXRjaChlKXtpZihvKXRocm93IGV9fSxhYm9ydDpmdW5jdGlvbigpe28mJm8oKX19fSksUy5hamF4UHJlZmlsdGVyKGZ1bmN0aW9uKGUpe2UuY3Jvc3NEb21haW4mJihlLmNvbnRlbnRzLnNjcmlwdD0hMSl9KSxTLmFqYXhTZXR1cCh7YWNjZXB0czp7c2NyaXB0OiJ0ZXh0L2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2VjbWFzY3JpcHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCJ9LGNvbnRlbnRzOntzY3JpcHQ6L1xiKD86amF2YXxlY21hKXNjcmlwdFxiL30sY29udmVydGVyczp7InRleHQgc2NyaXB0IjpmdW5jdGlvbihlKXtyZXR1cm4gUy5nbG9iYWxFdmFsKGUpLGV9fX0pLFMuYWpheFByZWZpbHRlcigic2NyaXB0IixmdW5jdGlvbihlKXt2b2lkIDA9PT1lLmNhY2hlJiYoZS5jYWNoZT0hMSksZS5jcm9zc0RvbWFpbiYmKGUudHlwZT0iR0VUIil9KSxTLmFqYXhUcmFuc3BvcnQoInNjcmlwdCIsZnVuY3Rpb24obil7dmFyIHIsaTtpZihuLmNyb3NzRG9tYWlufHxuLnNjcmlwdEF0dHJzKXJldHVybntzZW5kOmZ1bmN0aW9uKGUsdCl7cj1TKCI8c2NyaXB0PiIpLmF0dHIobi5zY3JpcHRBdHRyc3x8e30pLnByb3Aoe2NoYXJzZXQ6bi5zY3JpcHRDaGFyc2V0LHNyYzpuLnVybH0pLm9uKCJsb2FkIGVycm9yIixpPWZ1bmN0aW9uKGUpe3IucmVtb3ZlKCksaT1udWxsLGUmJnQoImVycm9yIj09PWUudHlwZT80MDQ6MjAwLGUudHlwZSl9KSxFLmhlYWQuYXBwZW5kQ2hpbGQoclswXSl9LGFib3J0OmZ1bmN0aW9uKCl7aSYmaSgpfX19KTt2YXIgX3QsenQ9W10sVXQ9Lyg9KVw/KD89JnwkKXxcP1w/LztTLmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29ucENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGU9enQucG9wKCl8fFMuZXhwYW5kbysiXyIrd3QuZ3VpZCsrO3JldHVybiB0aGlzW2VdPSEwLGV9fSksUy5hamF4UHJlZmlsdGVyKCJqc29uIGpzb25wIixmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9ITEhPT1lLmpzb25wJiYoVXQudGVzdChlLnVybCk/InVybCI6InN0cmluZyI9PXR5cGVvZiBlLmRhdGEmJjA9PT0oZS5jb250ZW50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiZVdC50ZXN0KGUuZGF0YSkmJiJkYXRhIik7aWYoYXx8Impzb25wIj09PWUuZGF0YVR5cGVzWzBdKXJldHVybiByPWUuanNvbnBDYWxsYmFjaz1tKGUuanNvbnBDYWxsYmFjayk/ZS5qc29ucENhbGxiYWNrKCk6ZS5qc29ucENhbGxiYWNrLGE/ZVthXT1lW2FdLnJlcGxhY2UoVXQsIiQxIityKTohMSE9PWUuanNvbnAmJihlLnVybCs9KFR0LnRlc3QoZS51cmwpPyImIjoiPyIpK2UuanNvbnArIj0iK3IpLGUuY29udmVydGVyc1sic2NyaXB0IGpzb24iXT1mdW5jdGlvbigpe3JldHVybiBvfHxTLmVycm9yKHIrIiB3YXMgbm90IGNhbGxlZCIpLG9bMF19LGUuZGF0YVR5cGVzWzBdPSJqc29uIixpPUNbcl0sQ1tyXT1mdW5jdGlvbigpe289YXJndW1lbnRzfSxuLmFsd2F5cyhmdW5jdGlvbigpe3ZvaWQgMD09PWk/UyhDKS5yZW1vdmVQcm9wKHIpOkNbcl09aSxlW3JdJiYoZS5qc29ucENhbGxiYWNrPXQuanNvbnBDYWxsYmFjayx6dC5wdXNoKHIpKSxvJiZtKGkpJiZpKG9bMF0pLG89aT12b2lkIDB9KSwic2NyaXB0In0pLHkuY3JlYXRlSFRNTERvY3VtZW50PSgoX3Q9RS5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLmJvZHkpLmlubmVySFRNTD0iPGZvcm0+PC9mb3JtPjxmb3JtPjwvZm9ybT4iLDI9PT1fdC5jaGlsZE5vZGVzLmxlbmd0aCksUy5wYXJzZUhUTUw9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciIT10eXBlb2YgZT9bXTooImJvb2xlYW4iPT10eXBlb2YgdCYmKG49dCx0PSExKSx0fHwoeS5jcmVhdGVIVE1MRG9jdW1lbnQ/KChyPSh0PUUuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSkuY3JlYXRlRWxlbWVudCgiYmFzZSIpKS5ocmVmPUUubG9jYXRpb24uaHJlZix0LmhlYWQuYXBwZW5kQ2hpbGQocikpOnQ9RSksbz0hbiYmW10sKGk9Ti5leGVjKGUpKT9bdC5jcmVhdGVFbGVtZW50KGlbMV0pXTooaT14ZShbZV0sdCxvKSxvJiZvLmxlbmd0aCYmUyhvKS5yZW1vdmUoKSxTLm1lcmdlKFtdLGkuY2hpbGROb2RlcykpKTt2YXIgcixpLG99LFMuZm4ubG9hZD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9dGhpcyxzPWUuaW5kZXhPZigiICIpO3JldHVybi0xPHMmJihyPWh0KGUuc2xpY2UocykpLGU9ZS5zbGljZSgwLHMpKSxtKHQpPyhuPXQsdD12b2lkIDApOnQmJiJvYmplY3QiPT10eXBlb2YgdCYmKGk9IlBPU1QiKSwwPGEubGVuZ3RoJiZTLmFqYXgoe3VybDplLHR5cGU6aXx8IkdFVCIsZGF0YVR5cGU6Imh0bWwiLGRhdGE6dH0pLmRvbmUoZnVuY3Rpb24oZSl7bz1hcmd1bWVudHMsYS5odG1sKHI/UygiPGRpdj4iKS5hcHBlbmQoUy5wYXJzZUhUTUwoZSkpLmZpbmQocik6ZSl9KS5hbHdheXMobiYmZnVuY3Rpb24oZSx0KXthLmVhY2goZnVuY3Rpb24oKXtuLmFwcGx5KHRoaXMsb3x8W2UucmVzcG9uc2VUZXh0LHQsZV0pfSl9KSx0aGlzfSxTLmV4cHIucHNldWRvcy5hbmltYXRlZD1mdW5jdGlvbih0KXtyZXR1cm4gUy5ncmVwKFMudGltZXJzLGZ1bmN0aW9uKGUpe3JldHVybiB0PT09ZS5lbGVtfSkubGVuZ3RofSxTLm9mZnNldD17c2V0T2Zmc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbD1TLmNzcyhlLCJwb3NpdGlvbiIpLGM9UyhlKSxmPXt9OyJzdGF0aWMiPT09bCYmKGUuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIikscz1jLm9mZnNldCgpLG89Uy5jc3MoZSwidG9wIiksdT1TLmNzcyhlLCJsZWZ0IiksKCJhYnNvbHV0ZSI9PT1sfHwiZml4ZWQiPT09bCkmJi0xPChvK3UpLmluZGV4T2YoImF1dG8iKT8oYT0ocj1jLnBvc2l0aW9uKCkpLnRvcCxpPXIubGVmdCk6KGE9cGFyc2VGbG9hdChvKXx8MCxpPXBhcnNlRmxvYXQodSl8fDApLG0odCkmJih0PXQuY2FsbChlLG4sUy5leHRlbmQoe30scykpKSxudWxsIT10LnRvcCYmKGYudG9wPXQudG9wLXMudG9wK2EpLG51bGwhPXQubGVmdCYmKGYubGVmdD10LmxlZnQtcy5sZWZ0K2kpLCJ1c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpOmMuY3NzKGYpfX0sUy5mbi5leHRlbmQoe29mZnNldDpmdW5jdGlvbih0KXtpZihhcmd1bWVudHMubGVuZ3RoKXJldHVybiB2b2lkIDA9PT10P3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe1Mub2Zmc2V0LnNldE9mZnNldCh0aGlzLHQsZSl9KTt2YXIgZSxuLHI9dGhpc1swXTtyZXR1cm4gcj9yLmdldENsaWVudFJlY3RzKCkubGVuZ3RoPyhlPXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbj1yLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcse3RvcDplLnRvcCtuLnBhZ2VZT2Zmc2V0LGxlZnQ6ZS5sZWZ0K24ucGFnZVhPZmZzZXR9KTp7dG9wOjAsbGVmdDowfTp2b2lkIDB9LHBvc2l0aW9uOmZ1bmN0aW9uKCl7aWYodGhpc1swXSl7dmFyIGUsdCxuLHI9dGhpc1swXSxpPXt0b3A6MCxsZWZ0OjB9O2lmKCJmaXhlZCI9PT1TLmNzcyhyLCJwb3NpdGlvbiIpKXQ9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlbHNle3Q9dGhpcy5vZmZzZXQoKSxuPXIub3duZXJEb2N1bWVudCxlPXIub2Zmc2V0UGFyZW50fHxuLmRvY3VtZW50RWxlbWVudDt3aGlsZShlJiYoZT09PW4uYm9keXx8ZT09PW4uZG9jdW1lbnRFbGVtZW50KSYmInN0YXRpYyI9PT1TLmNzcyhlLCJwb3NpdGlvbiIpKWU9ZS5wYXJlbnROb2RlO2UmJmUhPT1yJiYxPT09ZS5ub2RlVHlwZSYmKChpPVMoZSkub2Zmc2V0KCkpLnRvcCs9Uy5jc3MoZSwiYm9yZGVyVG9wV2lkdGgiLCEwKSxpLmxlZnQrPVMuY3NzKGUsImJvcmRlckxlZnRXaWR0aCIsITApKX1yZXR1cm57dG9wOnQudG9wLWkudG9wLVMuY3NzKHIsIm1hcmdpblRvcCIsITApLGxlZnQ6dC5sZWZ0LWkubGVmdC1TLmNzcyhyLCJtYXJnaW5MZWZ0IiwhMCl9fX0sb2Zmc2V0UGFyZW50OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vZmZzZXRQYXJlbnQ7d2hpbGUoZSYmInN0YXRpYyI9PT1TLmNzcyhlLCJwb3NpdGlvbiIpKWU9ZS5vZmZzZXRQYXJlbnQ7cmV0dXJuIGV8fHJlfSl9fSksUy5lYWNoKHtzY3JvbGxMZWZ0OiJwYWdlWE9mZnNldCIsc2Nyb2xsVG9wOiJwYWdlWU9mZnNldCJ9LGZ1bmN0aW9uKHQsaSl7dmFyIG89InBhZ2VZT2Zmc2V0Ij09PWk7Uy5mblt0XT1mdW5jdGlvbihlKXtyZXR1cm4gJCh0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZih4KGUpP3I9ZTo5PT09ZS5ub2RlVHlwZSYmKHI9ZS5kZWZhdWx0Vmlldyksdm9pZCAwPT09bilyZXR1cm4gcj9yW2ldOmVbdF07cj9yLnNjcm9sbFRvKG8/ci5wYWdlWE9mZnNldDpuLG8/bjpyLnBhZ2VZT2Zmc2V0KTplW3RdPW59LHQsZSxhcmd1bWVudHMubGVuZ3RoKX19KSxTLmVhY2goWyJ0b3AiLCJsZWZ0Il0sZnVuY3Rpb24oZSxuKXtTLmNzc0hvb2tzW25dPUZlKHkucGl4ZWxQb3NpdGlvbixmdW5jdGlvbihlLHQpe2lmKHQpcmV0dXJuIHQ9V2UoZSxuKSxQZS50ZXN0KHQpP1MoZSkucG9zaXRpb24oKVtuXSsicHgiOnR9KX0pLFMuZWFjaCh7SGVpZ2h0OiJoZWlnaHQiLFdpZHRoOiJ3aWR0aCJ9LGZ1bmN0aW9uKGEscyl7Uy5lYWNoKHtwYWRkaW5nOiJpbm5lciIrYSxjb250ZW50OnMsIiI6Im91dGVyIithfSxmdW5jdGlvbihyLG8pe1MuZm5bb109ZnVuY3Rpb24oZSx0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoJiYocnx8ImJvb2xlYW4iIT10eXBlb2YgZSksaT1yfHwoITA9PT1lfHwhMD09PXQ/Im1hcmdpbiI6ImJvcmRlciIpO3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZSx0LG4pe3ZhciByO3JldHVybiB4KGUpPzA9PT1vLmluZGV4T2YoIm91dGVyIik/ZVsiaW5uZXIiK2FdOmUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50WyJjbGllbnQiK2FdOjk9PT1lLm5vZGVUeXBlPyhyPWUuZG9jdW1lbnRFbGVtZW50LE1hdGgubWF4KGUuYm9keVsic2Nyb2xsIithXSxyWyJzY3JvbGwiK2FdLGUuYm9keVsib2Zmc2V0IithXSxyWyJvZmZzZXQiK2FdLHJbImNsaWVudCIrYV0pKTp2b2lkIDA9PT1uP1MuY3NzKGUsdCxpKTpTLnN0eWxlKGUsdCxuLGkpfSxzLG4/ZTp2b2lkIDAsbil9fSl9KSxTLmVhY2goWyJhamF4U3RhcnQiLCJhamF4U3RvcCIsImFqYXhDb21wbGV0ZSIsImFqYXhFcnJvciIsImFqYXhTdWNjZXNzIiwiYWpheFNlbmQiXSxmdW5jdGlvbihlLHQpe1MuZm5bdF09ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMub24odCxlKX19KSxTLmZuLmV4dGVuZCh7YmluZDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMub24oZSxudWxsLHQsbil9LHVuYmluZDpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm9mZihlLG51bGwsdCl9LGRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLm9uKHQsZSxuLHIpfSx1bmRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gMT09PWFyZ3VtZW50cy5sZW5ndGg/dGhpcy5vZmYoZSwiKioiKTp0aGlzLm9mZih0LGV8fCIqKiIsbil9LGhvdmVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubW91c2VlbnRlcihlKS5tb3VzZWxlYXZlKHR8fGUpfX0pLFMuZWFjaCgiYmx1ciBmb2N1cyBmb2N1c2luIGZvY3Vzb3V0IHJlc2l6ZSBzY3JvbGwgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNldXAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNlbGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSxmdW5jdGlvbihlLG4pe1MuZm5bbl09ZnVuY3Rpb24oZSx0KXtyZXR1cm4gMDxhcmd1bWVudHMubGVuZ3RoP3RoaXMub24obixudWxsLGUsdCk6dGhpcy50cmlnZ2VyKG4pfX0pO3ZhciBYdD0vXltcc1x1RkVGRlx4QTBdK3xbXHNcdUZFRkZceEEwXSskL2c7Uy5wcm94eT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsaTtpZigic3RyaW5nIj09dHlwZW9mIHQmJihuPWVbdF0sdD1lLGU9biksbShlKSlyZXR1cm4gcj1zLmNhbGwoYXJndW1lbnRzLDIpLChpPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodHx8dGhpcyxyLmNvbmNhdChzLmNhbGwoYXJndW1lbnRzKSkpfSkuZ3VpZD1lLmd1aWQ9ZS5ndWlkfHxTLmd1aWQrKyxpfSxTLmhvbGRSZWFkeT1mdW5jdGlvbihlKXtlP1MucmVhZHlXYWl0Kys6Uy5yZWFkeSghMCl9LFMuaXNBcnJheT1BcnJheS5pc0FycmF5LFMucGFyc2VKU09OPUpTT04ucGFyc2UsUy5ub2RlTmFtZT1BLFMuaXNGdW5jdGlvbj1tLFMuaXNXaW5kb3c9eCxTLmNhbWVsQ2FzZT1YLFMudHlwZT13LFMubm93PURhdGUubm93LFMuaXNOdW1lcmljPWZ1bmN0aW9uKGUpe3ZhciB0PVMudHlwZShlKTtyZXR1cm4oIm51bWJlciI9PT10fHwic3RyaW5nIj09PXQpJiYhaXNOYU4oZS1wYXJzZUZsb2F0KGUpKX0sUy50cmltPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOihlKyIiKS5yZXBsYWNlKFh0LCIiKX0sImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZCYmZGVmaW5lKCJqcXVlcnkiLFtdLGZ1bmN0aW9uKCl7cmV0dXJuIFN9KTt2YXIgVnQ9Qy5qUXVlcnksR3Q9Qy4kO3JldHVybiBTLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oZSl7cmV0dXJuIEMuJD09PVMmJihDLiQ9R3QpLGUmJkMualF1ZXJ5PT09UyYmKEMualF1ZXJ5PVZ0KSxTfSwidW5kZWZpbmVkIj09dHlwZW9mIGUmJihDLmpRdWVyeT1DLiQ9UyksU30pOwpqUXVlcnkubm9Db25mbGljdCgpOw=="}},"time_used":224,"timings":{"blocked":127,"dns":0,"connect":0,"send":0,"wait":95,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/plan3.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.982Z","timestamp":1785148618982,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/plan3.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/lato/v23/S6uyw4BMUTPHjxAwXg.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.464Z","timestamp":1785148619464,"http_version":"HTTP/3","security_state":"","security_info":null,"request":{"raw":"GET /s/lato/v23/S6uyw4BMUTPHjxAwXg.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://equinuxglobalassets.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 25284\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 07:07:43 GMT\r\nexpires: Fri, 23 Jul 2027 07:07:43 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Tue, 26 Apr 2022 15:46:28 GMT\r\ncontent-type: font/woff2\r\nage: 358156\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"font/woff2","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/plan2.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.980Z","timestamp":1785148618980,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/plan2.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu173w3aXo.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.466Z","timestamp":1785148619466,"http_version":"HTTP/3","security_state":"","security_info":null,"request":{"raw":"GET /s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu173w3aXo.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://equinuxglobalassets.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 19464\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 02:45:22 GMT\r\nexpires: Thu, 22 Jul 2027 02:45:22 GMT\r\ncache-control: public, max-age=31536000\r\nage: 460297\r\nlast-modified: Mon, 11 Jul 2022 18:54:07 GMT\r\ncontent-type: font/woff2\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"font/woff2","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fChc4.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.469Z","timestamp":1785148619469,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /s/roboto/v30/KFOlCnqEu92Fr1MmSU5fChc4.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://equinuxglobalassets.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/divi-100-hamburger-menu/assets/js/scripts.js?ver=20160602","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.939Z","timestamp":1785148618939,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/divi-100-hamburger-menu/assets/js/scripts.js?ver=20160602 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 589\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:22 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":589,"size_decoded":804,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"7f54513ed47622370645fa30f87e1421","sha1":"556055c492aa71ef86ebfedafa6ba67ae866dea7","sha256":"f5affbfbc0acaa206d12c1e50180024ddbf816de164e2a11da5a10342b13343e","sha512":"3021899f14f963645b1eed116f04358e0772fc2b9b2a3025e054cdd018e2b9f3cffc10effb58efa16ed681ed517fdab737da4eed4327d2066ff374c50e06f748","ssdeep":"","tlshash":"c0f0282eaff900d7126f2435a76b11496627c20f8a548d00f6accbf49f91a246670138","first_seen":"2023-03-07T13:54:27Z","last_seen":"2026-08-08T19:43:19.586666Z","times_seen":223,"resource_available":true,"data":"alF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoJCkgewogIC8qKgogICAqIENoZWNrcyBpZiBib2R5IGNsYXNzIGV4aXN0cwogICAqLwogIGlmICgkKCcuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51JykubGVuZ3RoID4gMCkgewogICAgdmFyIGljb25OYW1lID0gJ2V0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbicsCiAgICAgIHRvZ2dsZWROYW1lID0gaWNvbk5hbWUgKyAnLS10b2dnbGVkJzsKCiAgICAvKioKICAgICAqIEFwcGVuZHMgaGFtYnVyZ2VyIGJhcnMgdG8gbWVudQogICAgICovCiAgICAkKCIubW9iaWxlX21lbnVfYmFyIikKICAgICAgLmFkZENsYXNzKGljb25OYW1lKQogICAgICAuaHRtbCgnPGRpdj48L2Rpdj48ZGl2PjwvZGl2PjxkaXY+PC9kaXY+Jyk7CgogICAgLyoqCiAgICAgKiBIYW5kbGUgY2xpY2sgZXZlbnQKICAgICAqLwogICAgJCgnLicgKyBpY29uTmFtZSkub24oJ2NsaWNrJywgZnVuY3Rpb24gKGUpIHsKICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAkKCcuJyArIGljb25OYW1lKS50b2dnbGVDbGFzcyh0b2dnbGVkTmFtZSk7CiAgICB9KTsKICB9Cn0pOw=="}},"time_used":343,"timings":{"blocked":249,"dns":0,"connect":0,"send":0,"wait":94,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/pwa-for-wp/assets/js/pwaforwp-download.js?ver=1.7.49","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.956Z","timestamp":1785148618956,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/pwa-for-wp/assets/js/pwaforwp-download.js?ver=1.7.49 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 831\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:28 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":831,"size_decoded":1046,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"82d1196031e74e67b2c77b44af193477","sha1":"52181e306b74510e2f14aa501d048ad0f5922387","sha256":"b038fe2cc26cff66d0773eb43c78dda1f1ebd55dfa732144a5e1f5fa49a09810","sha512":"00e843cfa60c273cf80f5412407e6ad4410d6624251fdaf1a4df19316406d61ac4bf2f71cf3f9b996180ee5eaf338aa0d049524c27531b68e3986475728e5ea8","ssdeep":"","tlshash":"fd014929fb9c41f50969307dda2911c8ea3e00ba14018c687d1cdc957724d0d71e8efb","first_seen":"2025-02-17T22:32:49.769254Z","last_seen":"2026-07-27T10:37:38.213261Z","times_seen":9,"resource_available":true,"data":"KGZ1bmN0aW9uKCl7CglzZXRUaW1lb3V0KCgpPT57CgkJZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbihldmVudCl7CgkJCWlmKGV2ZW50LnRhcmdldC50YWdOYW1lID09PSAiQSIpewkJCQoJCQl2YXIgaXNkb3dubG9kID0gZXZlbnQudGFyZ2V0LmF0dHJpYnV0ZXNbImRvd25sb2FkIl0gPyAiMSIgOiAiMCI7CgkJCWlmKGlzZG93bmxvZCA9PSAxKXsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQl2YXIgdXJsID0gZXZlbnQudGFyZ2V0LmF0dHJpYnV0ZXNbImhyZWYiXS52YWx1ZTsKCQkJCWV2ZW50LnRhcmdldC5yZW1vdmVBdHRyaWJ1dGUoImhyZWYiKTsKCQkJCWV2ZW50LnRhcmdldC5zZXRBdHRyaWJ1dGUoImxpbmsiLHVybCk7CgkJCQl2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgkJCSAgICB4aHIub3BlbignR0VUJywgdXJsLCB0cnVlKTsKCQkJICAgIHhoci5yZXNwb25zZVR5cGUgPSAnYmxvYic7CgkJCSAgICB4aHIub25sb2FkID0gZnVuY3Rpb24oZSkgewoJCQkgICAgICBpZiAodGhpcy5zdGF0dXMgPT0gMjAwKSB7CgkJCSAgICAgICAgdmFyIG15QmxvYiA9IHRoaXMucmVzcG9uc2U7CgkJCSAgICAgICAgdmFyIGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7CgkJCSAgICAgICAgbGluay5ocmVmID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwobXlCbG9iKTsKCQkJICAgICAgICBsaW5rLmRvd25sb2FkID0gdXJsOwoJCQkgICAgICAgIGxpbmsuY2xpY2soKTsKCQkJICAgICAgfQoJCQkgICAgfTsKCQkJICAgIHhoci5zZW5kKCk7CgkJCX0KCQkJfQoJCX0pCgoJfSwxMDAwKQp9KSgp"}},"time_used":459,"timings":{"blocked":362,"dns":0,"connect":0,"send":0,"wait":97,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/affiliate-wp/assets/css/forms.min.css?ver=2.9.6.1","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.599Z","timestamp":1785148618599,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/affiliate-wp/assets/css/forms.min.css?ver=2.9.6.1 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 4455\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:14 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":4455,"size_decoded":4664,"mime_type":"text/css","magic":"ASCII text, with very long lines (4455), with no line terminators","md5":"aa39e641d8e8348c6fc083182c94d32f","sha1":"cbc174e8e4ff300d8150e5c0d6e8133b4debdb59","sha256":"ee564a0080a642f8dbe317a9596032900545837e52d20cb9aee450e6b8122293","sha512":"4a126173df7e2fce58982963a50669e83ebd4f1ddbaacf01153b988321221d42e0b84dc8af9bb16d6be8c9b6e0bcaef82c269f7170d834c57640795d987b6e52","ssdeep":"96:oBRmU4GvylUcfhU5je0YQXfdaSD1nbLwePUqbF+4y4Sf4p:J62caSlMePBbfNES","tlshash":"57910f3185a9227a9607fb0d7de2badfa73521a0b3cb15fd4d423014cf885197e1af89","first_seen":"2023-04-09T17:39:08Z","last_seen":"2026-07-27T10:37:50.41409Z","times_seen":37,"resource_available":false,"data":"I2FmZndwLWdlbmVyYXRlLXJlZi11cmwgaW5wdXQsLmFmZndwLWZvcm0gbGFiZWwraW5wdXQsLmFmZndwLWZvcm0gbGFiZWwrdGV4dGFyZWEsdGFibGUuYWZmd3AtdGFibGV7d2lkdGg6MTAwJX10YWJsZS5hZmZ3cC10YWJsZXt0ZXh0LWFsaWduOmxlZnQ7Ym9yZGVyOm5vbmU7bWFyZ2luOjAgMCAyMXB4O2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZX10YWJsZS5hZmZ3cC10YWJsZSB0ZCx0YWJsZS5hZmZ3cC10YWJsZSB0aHt0ZXh0LWFsaWduOmxlZnQ7Ym9yZGVyOjFweCBzb2xpZCAjZWVlO2NvbG9yOiM2NjY7cGFkZGluZzouM2VtIDFlbTttYXgtd2lkdGg6MTAwJX10YWJsZS5hZmZ3cC10YWJsZSB0aHtiYWNrZ3JvdW5kOiNmYWZhZmE7Zm9udC13ZWlnaHQ6NzAwfS5hZmZ3cC1mb3Jte21hcmdpbi1ib3R0b206MjBweH0uYWZmd3AtZm9ybSBmaWVsZHNldHtib3JkZXI6bm9uZX0uYWZmd3AtZm9ybSBsZWdlbmR7Zm9udC1zaXplOjEyMCU7bWFyZ2luLWJvdHRvbToxZW19LmFmZndwLWZvcm0gaW5wdXRbdHlwZT10ZXh0XSwuYWZmd3AtZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXSwuYWZmd3AtZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwuYWZmd3AtZm9ybSBpbnB1dFt0eXBlPXVybF0sLmFmZndwLWZvcm0gdGV4dGFyZWF7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS5hZmZ3cC1mb3JtIGlucHV0e2JvcmRlcjoxcHggc29saWQgI2VhZWFlYTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoNTEsNTEsNTEsLjEpfS5hZmZ3cC1mb3JtIGlucHV0W3R5cGU9dGV4dF0ucmVxdWlyZWQsLmFmZndwLWZvcm0gaW5wdXRbdHlwZT1wYXNzd29yZF0ucmVxdWlyZWQsLmFmZndwLWZvcm0gaW5wdXRbdHlwZT1lbWFpbF0ucmVxdWlyZWQsLmFmZndwLWZvcm0gaW5wdXRbdHlwZT11cmxdLnJlcXVpcmVke2NvbG9yOmluaGVyaXR9LmFmZndwLWZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF17ZGlzcGxheTppbmxpbmUtYmxvY2t9LmFmZndwLWZvcm0gbGFiZWx7Y3Vyc29yOnBvaW50ZXJ9LmFmZndwLXdyYXB7bWFyZ2luLWJvdHRvbToyMHB4fS5hZmZ3cC1lcnJvcnMsLmFmZndwLW5vdGljZXstd2Via2l0LWJvcmRlci1yYWRpdXM6MnB4Oy1tb3otYm9yZGVyLXJhZGl1czoycHg7Ym9yZGVyLXJhZGl1czoycHg7Ym9yZGVyOjFweCBzb2xpZCAjRTZEQjU1O21hcmdpbjowIDAgMjFweDtiYWNrZ3JvdW5kOiNGRkZGRTA7Y29sb3I6IzMzM30uYWZmd3AtZXJyb3IsLmFmZndwLW5vdGljZXtwYWRkaW5nOjEwcHh9cC5hZmZ3cC1lcnJvcnttYXJnaW46MCFpbXBvcnRhbnR9I2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQgaDQsI2FmZndwLWdyYXBocy1maWx0ZXJ7bWFyZ2luLWJvdHRvbToyMHB4fSNhZmZ3cC1hZmZpbGlhdGUtZGFzaGJvYXJkICNhZmZ3cC1hZmZpbGlhdGUtZGFzaGJvYXJkLXRhYnN7bWFyZ2luOjAgMCAyMHB4O3BhZGRpbmc6MDtib3JkZXI6bm9uZX0jYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZCAjYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZC10YWJzIGxpe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6MCAxMHB4IDAgMDttYXJnaW46MH0jYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZCAjYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZC10YWJzIGxpLmFjdGl2ZXtmb250LXdlaWdodDo3MDB9I2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQgI2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQtdGFicyBsaSBhe3RleHQtZGVjb3JhdGlvbjpub25lfSNhZmZ3cC1hZmZpbGlhdGUtZGFzaGJvYXJkIC5hZmZ3cC1ncmFwaHttYXJnaW4tYm90dG9tOjIwcHh9I2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQgLmFmZndwLWdyYXBoIHRhYmxle3dpZHRoOmF1dG99I2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQtdmlzaXRze3RhYmxlLWxheW91dDpmaXhlZH0jYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZC12aXNpdHMgLnJlZmVycmluZy11cmwsI2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQtdmlzaXRzIC52aXNpdC11cmx7d2lkdGg6MzAlfSNhZmZ3cC1hZmZpbGlhdGUtZGFzaGJvYXJkLXZpc2l0cyAucmVmZXJyYWwtc3RhdHVze3dpZHRoOjE1JX0jYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZC12aXNpdHMgLnZpc2l0LWRhdGV7d2lkdGg6MjUlfSNhZmZ3cC1hZmZpbGlhdGUtZGFzaGJvYXJkIC5hZmZ3cC1zZW5kLW5vdGlmaWNhdGlvbnMtd3JhcCBsYWJlbCwuYWZmd3AtZm9ybSAuYWZmd3AtdG9zLC5hZmZ3cC1mb3JtIC5hZmZ3cC11c2VyLXJlbWVtYmVye3dpZHRoOmF1dG99I2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQtcGF5b3V0cy1zZXJ2aWNle21hcmdpbi1ib3R0b206NTBweH0uYWZmd3AtZm9ybSBzZWxlY3QjYWZmd3AtcGF5b3V0LXNlcnZpY2UtYWNjb3VudC10eXBlLC5hZmZ3cC1mb3JtIHNlbGVjdCNhZmZ3cC1wYXlvdXQtc2VydmljZS1jb3VudHJ5e3dpZHRoOjEwMCV9LnZpc2l0LWNvbnZlcnRlZCBpe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoycHg7bGVmdDoycHh9LnZpc2l0LWNvbnZlcnRlZCBpOmJlZm9yZXtmb250LWZhbWlseTpkYXNoaWNvbnM7Zm9udC1zdHlsZTpub3JtYWx9LnZpc2l0LWNvbnZlcnRlZC55ZXMgaTpiZWZvcmV7Y29udGVudDoiXGYxNDciO2NvbG9yOiM1ZTk1ZWZ9LnZpc2l0LWNvbnZlcnRlZC5ubyBpOmJlZm9yZXtjb250ZW50OiJcZjE1OCI7Y29sb3I6I2VmNmM1ZX0uYWZmd3AtY3JlYXRpdmUgcHJle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wMSk7Ym9yZGVyOjFweCBzb2xpZCAjZWFlYWVhO2JvcmRlcjoxcHggc29saWQgcmdiYSg1MSw1MSw1MSwuMSk7bGluZS1oZWlnaHQ6MS41O21heC13aWR0aDoxMDAlO292ZXJmbG93OmF1dG87cGFkZGluZzoxZW07d2hpdGUtc3BhY2U6cHJlO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtd3JhcDpicmVhay13b3JkfS5hZmZ3cC1jcmVhdGl2ZSBjb2RlLC5hZmZ3cC1jcmVhdGl2ZSBwcmV7LXdlYmtpdC1oeXBoZW5zOm5vbmU7LW1vei1oeXBoZW5zOm5vbmU7LW1zLWh5cGhlbnM6bm9uZTtoeXBoZW5zOm5vbmV9LmFmZndwLXRhYmxlLXdyYXB7b3ZlcmZsb3cteDphdXRvfS5hZmZ3cC10YWJsZXt3b3JkLXdyYXA6YnJlYWstd29yZDt0YWJsZS1sYXlvdXQ6YXV0b30uYWZmd3AtY3JlYXRpdmV7bWFyZ2luLWJvdHRvbTo0MHB4O3BhZGRpbmctYm90dG9tOjIwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2VhZWFlYTtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDUxLDUxLDUxLC4xKX0uYWZmd3AtY3JlYXRpdmU6bGFzdC1vZi10eXBle2JvcmRlci1ib3R0b206bm9uZTtwYWRkaW5nLWJvdHRvbTowfS5zY3JlZW4tcmVhZGVyLXRleHR7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luOi0xcHg7cGFkZGluZzowO2hlaWdodDoxcHg7d2lkdGg6MXB4O292ZXJmbG93OmhpZGRlbjtjbGlwOnJlY3QoMCAwIDAgMCk7Ym9yZGVyOjA7d29yZC13cmFwOm5vcm1hbCFpbXBvcnRhbnR9LmFmZndwLXRhYmxlLXJlc3BvbnNpdmUgdGQ6YmVmb3Jle2NvbnRlbnQ6YXR0cihkYXRhLXRoKSAiOlwwMGEwIjtmb250LXdlaWdodDo3MDA7ZGlzcGxheTpub25lfUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsjYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZC1jYW1wYWlnbi1zdGF0cyAuYWZmd3AtdGFibGUtcmVzcG9uc2l2ZSB0ZC5hZmZ3cC10YWJsZS1uby1kYXRhe2Rpc3BsYXk6YmxvY2t9I2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQtcGF5b3V0cyAuYWZmd3AtdGFibGUtcmVzcG9uc2l2ZSB0ZC5hZmZ3cC10YWJsZS1uby1kYXRhOmJlZm9yZSwjYWZmd3AtYWZmaWxpYXRlLWRhc2hib2FyZC1yZWZlcnJhbHMgLmFmZndwLXRhYmxlLXJlc3BvbnNpdmUgdGQuYWZmd3AtdGFibGUtbm8tZGF0YTpiZWZvcmUsI2FmZndwLWFmZmlsaWF0ZS1kYXNoYm9hcmQtdmlzaXRzIC5hZmZ3cC10YWJsZS1yZXNwb25zaXZlIHRkLmFmZndwLXRhYmxlLW5vLWRhdGE6YmVmb3Jle2Rpc3BsYXk6bm9uZX0uYWZmd3AtdGFibGUtcmVzcG9uc2l2ZSB0ZDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MjBweH0uYWZmd3AtdGFibGUtcmVzcG9uc2l2ZSB0ZDpmaXJzdC1jaGlsZHtiYWNrZ3JvdW5kLWNvbG9yOiNmYWZhZmF9LmFmZndwLXRhYmxlLXJlc3BvbnNpdmUgdGQ6YmVmb3Jle2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5hZmZ3cC10YWJsZS1yZXNwb25zaXZlIHRoe2Rpc3BsYXk6bm9uZX0uYWZmd3AtdGFibGUtcmVzcG9uc2l2ZSB0ZHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LXdlYmtpdC1mbGV4O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LXBhY2s6anVzdGlmeTstd2Via2l0LWp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn19"}},"time_used":345,"timings":{"blocked":251,"dns":0,"connect":0,"send":0,"wait":94,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/chaty/js/cht-front-script.min.js?ver=1627838794","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.651Z","timestamp":1785148618651,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/chaty/js/cht-front-script.min.js?ver=1627838794 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 55160\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:12 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":55160,"size_decoded":55377,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (55160), with no line terminators","md5":"ab66f25aa55e87ee2a747e6f07397c97","sha1":"3da6bd0899a09d6b3d9cafe62fa250ddfe2f3439","sha256":"322998bdbd9777b10d8a706f97ed4f446e5b238e86c37649be7deb54096f5888","sha512":"3c09169b76d8b4f18d76c7e22f086ea7d98b9f3a1e710e375214cbfb3d9999b8d36227884b58013ae67d51b5181f87819d139e219aa655ddee7399a7f05b969d","ssdeep":"768:Ohi/IfEZTTPdy8v5+dwvPMoY/K3fmot312Wg:On+Y/K3P4","tlshash":"93438940e21594bf01ff22a565fe71240139d1eadc1489b2b9f9e0f89579cfaf026f62","first_seen":"2023-03-07T12:01:36Z","last_seen":"2026-07-27T10:37:50.415531Z","times_seen":69,"resource_available":true,"data":"ZnVuY3Rpb24gbGF1bmNoX2NoYXR5KHQpeyh2b2lkIDA9PXR8fCJ3aWRnZXRfaW5kZXgiPT10KSYmKHQ9MSksalF1ZXJ5KCIjY2hhdHktd2lkZ2V0LTAiKS5sZW5ndGgmJmpRdWVyeSgiI2NoYXR5LXdpZGdldC0wIC5jaGF0eS1jdGEtYnV0dG9uIC5vcGVuLWNoYXR5IikudHJpZ2dlcigiY2xpY2siKX1mdW5jdGlvbiBjbG9zZV9jaGF0eSgpe2pRdWVyeSgiLmNoYXR5LmFjdGl2ZSAuY2hhdHktb3BlbiIpLmxlbmd0aCYmalF1ZXJ5KCIuY2hhdHkuYWN0aXZlIC5jaGF0eS1vcGVuIikuZWFjaChmdW5jdGlvbigpe2pRdWVyeSh0aGlzKS5maW5kKCIuY2hhdHktY3RhLWNsb3NlIikudHJpZ2dlcigiY2xpY2siKX0pfSFmdW5jdGlvbih0KXsidXNlIHN0cmljdCI7ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJqcXVlcnkiXSx0KToidW5kZWZpbmVkIiE9dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHM/bW9kdWxlLmV4cG9ydHM9dChyZXF1aXJlKCJqcXVlcnkiKSk6dChqUXVlcnkpfShmdW5jdGlvbih0LGUpe2Z1bmN0aW9uIGEoYSl7aWYodCgiI2NoYXR5LXdpZGdldC0iK2EpLmRhdGEoImFuaW1hdGlvbiIpIT1lJiYibm9uZSIhPXQoIiNjaGF0eS13aWRnZXQtIithKS5kYXRhKCJhbmltYXRpb24iKSl7dmFyIG49ImNoYXR5LWFuaW1hdGlvbi0iK3QoIiNjaGF0eS13aWRnZXQtIithKS5kYXRhKCJhbmltYXRpb24iKTt0KCIjY2hhdHktd2lkZ2V0LSIrYSsiIC4iK24pLnJlbW92ZUNsYXNzKG4pfX1mdW5jdGlvbiBuKCl7dmFyIGU9ITE7WS5sZW5ndGgmJnQuZWFjaChZLGZ1bmN0aW9uKHQsYSl7UChhLnRyaWdnZXJzLmhhc19jb3VudHJpZXMpJiYhXyhhLnRyaWdnZXJzLmNvdW50cmllcykmJmEudHJpZ2dlcnMuY291bnRyaWVzLmxlbmd0aCYmKGU9ITApfSksZT8oWj1xKCksIiIhPVo/aSgpOmMoKSk6aSgpfWZ1bmN0aW9uIGMoKXt2YXIgZT0iaHR0cHM6Ly93d3cuY2xvdWRmbGFyZS5jb20vY2RuLWNnaS90cmFjZSI7dC5nZXQoZSxmdW5jdGlvbih0KXt2YXIgZT10Lm1hdGNoKCJsb2M9KC4qKSIpO2UubGVuZ3RoPjEmJihlPWVbMV0sZSYmKGU9ZS50b1VwcGVyQ2FzZSgpLCIiPT1lJiYoZT0iLSIpLEwoZSksaSgpKSl9KX1mdW5jdGlvbiBpKCl7WS5sZW5ndGgmJih0LmVhY2goWSxmdW5jdGlvbihlLGEpe3ZhciBuPSIiLGM9IiIsaT0wLHI9e30sZD1XKGEpO2lmKGQ9ZCYmTihhKSxkPWQmJkQoYSksdC5lYWNoKGEuY2hhbm5lbHMsZnVuY3Rpb24odCxlKXt2YXIgYT1zKGUpO2EmJihpKysscj1lKX0pLGQmJmk+MCYmIXQoIiNjaGF0eS13aWRnZXQtIithLmlkKS5sZW5ndGgpe3ZhciBnPUMoYS5zZXR0aW5ncyk7Zz0icmlnaHQiPT1nPyJyaWdodCI6ImxlZnQiO3ZhciB5PWsoYSkscD0iPGRpdiBzdHlsZT0nZGlzcGxheTogbm9uZScgY2xhc3M9J2NoYXR5IGNoYXR5LWlkLSIrYS5pZCsiIGNoYXR5LXdpZGdldC0iK2EuaWQrIiBjaGF0eS1rZXktIitlKyInIGlkPSdjaGF0eS13aWRnZXQtIithLmlkKyInIGRhdGEta2V5PSciK2UrIicgZGF0YS1pZD0nIithLmlkKyInIGRhdGEtaWRlbnRpZmllcj0nIithLmlkZW50aWZpZXIrIicgZGF0YS1ub25jZT0nIithLnNldHRpbmdzLndpZGdldF90b2tlbisiJyA+PGRpdiBjbGFzcz0nY2hhdHktd2lkZ2V0ICIrZysiLXBvc2l0aW9uJz48ZGl2IGNsYXNzPSdjaGF0eS1jaGFubmVscyc+PGRpdiBjbGFzcz0nY2hhdHktY2hhbm5lbC1saXN0Jz48L2Rpdj48ZGl2IGNsYXNzPSdjaGF0eS1pLXRyaWdnZXInPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PiI7dCgiYm9keSIpLmFwcGVuZChwKSxQKGEudHJpZ2dlcnMuYXV0b19oaWRlX3dpZGdldCkmJnBhcnNlSW50KGEudHJpZ2dlcnMuaGlkZV9hZnRlcik+MCYmKHQoIiNjaGF0eS13aWRnZXQtIithLmlkKS5hZGRDbGFzcygiYXV0by1oaWRlLWNoYXR5IiksdCgiI2NoYXR5LXdpZGdldC0iK2EuaWQpLmF0dHIoImRhdGEtdGltZSIsYS50cmlnZ2Vycy5oaWRlX2FmdGVyKSk7dmFyIHU9UShhLmlkLCJjLXdpZGdldCIpO2lmKHQoIiNjaGF0eS13aWRnZXQtIithLmlkKS5hZGRDbGFzcyhhLnNldHRpbmdzLnNob3dfY3RhKSwxPT1pKXsidmVydGljYWwiIT1hLnNldHRpbmdzLmljb25fdmlldyYmKHk9InJpZ2h0IiE9Zz8icmlnaHQiOiJsZWZ0Iik7dmFyIGY9bChyLGEuaWQseSk7dCgiI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktaS10cmlnZ2VyIikuaHRtbChmKSx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIiKS5hZGRDbGFzcygic2luZ2xlLWNoYW5uZWwiKSx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWNoYW5uZWwiKS5hZGRDbGFzcygic2luZ2xlIiksdCgiI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktd2lkZ2V0IikuYWRkQ2xhc3MoImhhcy1zaW5nbGUiKTt2YXIgbT1hLnNldHRpbmdzLmN0YV90ZXh0OyJmaXJzdF9jbGljayI9PWEuc2V0dGluZ3Muc2hvd19jdGEmJih1Pyh0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS10b29sdGlwIikucmVtb3ZlQ2xhc3MoImNoYXR5LXRvb2x0aXAiKSx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWNoYW5uZWwiKS5hZGRDbGFzcygiYWN0aXZlIikuYWRkQ2xhc3MoImNoYXR5LXRvb2x0aXAiKS5hZGRDbGFzcygicG9zLSIreSksdCgiI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jaGFubmVsIikuYXBwZW5kKCI8c3BhbiBjbGFzcz0nb24taG92ZXItdGV4dCc+IittKyI8L3NwYW4+IikuYWRkQ2xhc3MoImFjdGl2ZSIpLmFkZENsYXNzKCJoYXMtb24taG92ZXIiKSx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWNoYW5uZWwgYSIpLmFwcGVuZCgiPHNwYW4gY2xhc3M9J29uLWhvdmVyLXRleHQnPiIrbSsiPC9zcGFuPiIpLmFkZENsYXNzKCJoYXMtb24taG92ZXIiKSk6dCgiI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jaGFubmVsIGEiKS5hcHBlbmQoIjxzcGFuIGNsYXNzPSdvbi1ob3Zlci10ZXh0Jz4iK20rIjwvc3Bhbj4iKS5yZW1vdmVDbGFzcygiYWN0aXZlIikuYWRkQ2xhc3MoImhhcy1vbi1ob3ZlciIpKSwiYWxsX3RpbWUiPT1hLnNldHRpbmdzLnNob3dfY3RhJiZ0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LXRvb2x0aXAiKS5hcHBlbmQoIjxzcGFuIGNsYXNzPSdvbi1ob3Zlci10ZXh0Jz4iK20rIjwvc3Bhbj4iKS5hZGRDbGFzcygiYWN0aXZlIikuYWRkQ2xhc3MoImhhcy1vbi1ob3ZlciIpO3ZhciB2PXI7KCJJbnN0YWdyYW0iIT12LmNoYW5uZWxfdHlwZXx8IiNmZmZmZmYiIT12Lmljb25fY29sb3ImJiIjZmZmIiE9di5pY29uX2NvbG9yKSYmKG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC4iK3YuY2hhbm5lbF90eXBlKyItY2hhbm5lbCAuY29sb3ItZWxlbWVudHsgZmlsbDogIit2Lmljb25fY29sb3IrIjsgY29sb3I6ICIrdi5pY29uX2NvbG9yKyI7fSIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYW5uZWwtaWNvbi0iK3YuY2hhbm5lbF90eXBlKyIgLmNvbG9yLWVsZW1lbnR7IGZpbGw6ICIrdi5pY29uX2NvbG9yKyI7IGNvbG9yOiAiK3YuaWNvbl9jb2xvcisiO30iKSxuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuIit2LmNoYW5uZWxfdHlwZSsiLWNoYW5uZWwgLmNoYXR5LWN1c3RvbS1pY29uIHsgYmFja2dyb3VuZC1jb2xvcjogIit2Lmljb25fY29sb3IrIjsgfSIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLiIrdi5jaGFubmVsX3R5cGUrIi1jaGFubmVsIC5jaGF0eS1zdmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAiK3YuaWNvbl9jb2xvcisiO30iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGFubmVsLWljb24tIit2LmNoYW5uZWxfdHlwZSsiIC5jaGF0eS1zdmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAiK3YuaWNvbl9jb2xvcisiO30iLCJDb250YWN0X1VzIj09di5jaGFubmVsX3R5cGUmJihuKz0iLmNoYXR5LWNvbnRhY3QtZm9ybS1ib3ggI2NoYXR5LXN1Ym1pdC1idXR0b24tIithLmlkKyIge2JhY2tncm91bmQtY29sb3I6ICIrdi5jb250YWN0X2Zvcm1fc2V0dGluZ3MuYnV0dG9uX2JnX2NvbG9yKyI7IGNvbG9yOiAiK3YuY29udGFjdF9mb3JtX3NldHRpbmdzLmJ1dHRvbl90ZXh0X2NvbG9yKyI7fSAiKX1lbHNle3QuZWFjaChhLmNoYW5uZWxzLGZ1bmN0aW9uKGUsYyl7dmFyIGk9cyhjKTtpZihpKXt4KGMuY2hhbm5lbF90eXBlKSYmKGMuY2hhbm5lbF90eXBlPWMuY2hhbm5lbCk7dmFyIG89bChjLGEuaWQseSk7dCgiI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbC1saXN0IikuYXBwZW5kKG8pLCgiSW5zdGFncmFtIiE9Yy5jaGFubmVsX3R5cGV8fCIjZmZmZmZmIiE9Yy5pY29uX2NvbG9yJiYiI2ZmZiIhPWMuaWNvbl9jb2xvcikmJihuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuIitjLmNoYW5uZWxfdHlwZSsiLWNoYW5uZWwgLmNvbG9yLWVsZW1lbnR7IGZpbGw6ICIrYy5pY29uX2NvbG9yKyI7IGNvbG9yOiAiK2MuaWNvbl9jb2xvcisiO30iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGFubmVsLWljb24tIitjLmNoYW5uZWxfdHlwZSsiIC5jb2xvci1lbGVtZW50eyBmaWxsOiAiK2MuaWNvbl9jb2xvcisiOyBjb2xvcjogIitjLmljb25fY29sb3IrIjt9Iiksbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLiIrYy5jaGFubmVsX3R5cGUrIi1jaGFubmVsIC5jaGF0eS1jdXN0b20taWNvbiB7IGJhY2tncm91bmQtY29sb3I6ICIrYy5pY29uX2NvbG9yKyI7IH0iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC4iK2MuY2hhbm5lbF90eXBlKyItY2hhbm5lbCAuY2hhdHktc3ZnIHsgYmFja2dyb3VuZC1jb2xvcjogIitjLmljb25fY29sb3IrIjt9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhbm5lbC1pY29uLSIrYy5jaGFubmVsX3R5cGUrIiAuY2hhdHktc3ZnIHsgYmFja2dyb3VuZC1jb2xvcjogIitjLmljb25fY29sb3IrIjt9IiwiQ29udGFjdF9VcyI9PWMuY2hhbm5lbF90eXBlJiYobis9Ii5jaGF0eS1jb250YWN0LWZvcm0tYm94ICNjaGF0eS1zdWJtaXQtYnV0dG9uLSIrYS5pZCsiIHtiYWNrZ3JvdW5kLWNvbG9yOiAiK2MuY29udGFjdF9mb3JtX3NldHRpbmdzLmJ1dHRvbl9iZ19jb2xvcisiOyBjb2xvcjogIitjLmNvbnRhY3RfZm9ybV9zZXR0aW5ncy5idXR0b25fdGV4dF9jb2xvcisiO30gIil9fSk7dmFyIHc9RihhLnNldHRpbmdzLGEuaWQpLG09YS5zZXR0aW5ncy5jdGFfdGV4dDsiZmlyc3RfY2xpY2siPT1hLnNldHRpbmdzLnNob3dfY3RhJiYodXx8KG09IiIpKTt2YXIgYj15OyJob3Jpem9udGFsIj09YS5zZXR0aW5ncy5pY29uX3ZpZXcmJihiPSJsZWZ0Ij09Zz8icmlnaHQiOiJsZWZ0Iik7dmFyIEk9JzxkaXYgY2xhc3M9ImNoYXR5LWNoYW5uZWwgY2hhdHktY3RhLW1haW4gY2hhdHktdG9vbHRpcCBoYXMtb24taG92ZXIgcG9zLScrYisnIGFjdGl2ZSIgZGF0YS13aWRnZXQ9IicrYS5pZCsnIiA+PHNwYW4gY2xhc3M9Im9uLWhvdmVyLXRleHQiPicrbSsnPC9zcGFuPjxkaXYgY2xhc3M9ImNoYXR5LWN0YS1idXR0b24iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ib3Blbi1jaGF0eSI+Jyt3Kyc8L2J1dHRvbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im9wZW4tY2hhdHktY2hhbm5lbCI+PC9idXR0b24+PC9kaXY+PC9kaXY+Jzt0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIiKS5odG1sKEkpO3ZhciBqPSc8ZGl2IGNsYXNzPSJjaGF0eS1jaGFubmVsIGNoYXR5LWN0YS1jbG9zZSBjaGF0eS10b29sdGlwIHBvcy0nK3krJyIgZGF0YS1ob3Zlcj0iJythLnNldHRpbmdzLmNsb3NlX3RleHQrJyI+PGRpdiBjbGFzcz0iY2hhdHktY3RhLWJ1dHRvbiI+PGJ1dHRvbiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJjaGF0eS1zdmciPjxzdmcgdmlld0JveD0iMCAwIDUyIDUyIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxlbGxpcHNlIGN4PSIyNiIgY3k9IjI2IiByeD0iMjYiIHJ5PSIyNiIgZmlsbD0iJythLnNldHRpbmdzLndpZGdldF9jb2xvcisnIj48L2VsbGlwc2U+PHJlY3Qgd2lkdGg9IjI3LjE0MzMiIGhlaWdodD0iMy44OTg1NyIgcng9IjEuOTQ5MjgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4LjM1IDE1LjY1OTkpIHNjYWxlKDAuOTk4MDM4IDEuMDAxOTYpIHJvdGF0ZSg0NSkiIGZpbGw9IndoaXRlIj48L3JlY3Q+PHJlY3Qgd2lkdGg9IjI3LjE0MzMiIGhlaWdodD0iMy44OTg1NyIgcng9IjEuOTQ5MjgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDM3LjUwNTYgMTguNDIyKSBzY2FsZSgwLjk5ODAzOCAxLjAwMTk2KSByb3RhdGUoMTM1KSIgZmlsbD0id2hpdGUiPjwvcmVjdD48L3N2Zz48L3NwYW4+PC9idXR0b24+PC9kaXY+PC9kaXY+Jzt0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIiKS5hcHBlbmQoail9dmFyIHU9UShhLmlkLCJjLXdpZGdldCIpOyF1fHwib3BlbiI9PWEuc2V0dGluZ3MuZGVmYXVsdF9zdGF0ZSYmMSE9aXx8KFUoYS5zZXR0aW5ncyxhLmlkKSxBKGEuc2V0dGluZ3MsYS5pZCkpO3ZhciBNPTA7Im9wZW4iIT1hLnNldHRpbmdzLmRlZmF1bHRfc3RhdGV8fFAoYS5zZXR0aW5ncy5zaG93X2Nsb3NlX2J1dHRvbil8fCh0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygiY2hhdHktbm8tY2xvc2UtYnV0dG9uIikuYWRkQ2xhc3MoImNoYXR5LW9wZW4iKSxNPTEpLFAoYS5zZXR0aW5ncy5pc19nb29nbGVfYW5hbHl0aWNzX2VuYWJsZWQpJiYodCgiI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbC1saXN0IC5jaGF0eS1jaGFubmVsIikuYWRkQ2xhc3MoImhhcy1nYWUiKSx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIuc2luZ2xlLWNoYW5uZWwgLmNoYXR5LWNoYW5uZWwiKS5hZGRDbGFzcygiaGFzLWdhZSIpLHQoIi5jaGF0eS1vdXRlci1mb3Jtcy5jaGF0eS13aGF0c2FwcC1mb3JtLmNoYXR5LWZvcm0tIithLmlkKyIgZm9ybS5hZGQtYW5hbHl0aWNzIikuYWRkQ2xhc3MoImZvcm0tZ29vZ2xlLWFuYWx5dGljcyIpKSxQKGEuc2V0dGluZ3MuaGFzX2N1c3RvbV9jc3MpJiYhXyhhLnNldHRpbmdzLmN1c3RvbV9jc3MpJiYoYys9YS5zZXR0aW5ncy5jdXN0b21fY3NzKSwiaG92ZXIiPT1hLnNldHRpbmdzLmRlZmF1bHRfc3RhdGU/dCgiI2NoYXR5LXdpZGdldC0iK2EuaWQpLmFkZENsYXNzKCJvcGVuLW9uLWhvdmVyIik6Im9wZW4iPT1hLnNldHRpbmdzLmRlZmF1bHRfc3RhdGUmJih0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygiZGVmYXVsdC1vcGVuIiksKHV8fCFQKGEuc2V0dGluZ3Muc2hvd19jbG9zZV9idXR0b24pKSYmdCgiI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktd2lkZ2V0IikuYWRkQ2xhc3MoImNoYXR5LW9wZW4iKSk7dmFyIFQ9aChhLnNldHRpbmdzLndpZGdldF9zaXplLGEuc2V0dGluZ3MuY3VzdG9tX3dpZGdldF9zaXplKTtpZihUPXBhcnNlSW50KFQpLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1jaGFubmVsIHt3aWR0aDogIitUKyJweDsgaGVpZ2h0OiAiK1QrInB4OyB9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbCA+IGEge3dpZHRoOiAiK1QrInB4OyBoZWlnaHQ6ICIrVCsicHg7IH0iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1jaGFubmVsID4gYSAuY2hhdHktY3VzdG9tLWljb24ge2Rpc3BsYXk6YmxvY2s7IHdpZHRoOiAiK1QrInB4OyBoZWlnaHQ6ICIrVCsicHg7IGxpbmUtaGVpZ2h0OiAiK1QrInB4OyBmb250LXNpemU6ICIrcGFyc2VJbnQoVC8yKSsicHg7IH0iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1jaGFubmVsIGJ1dHRvbiB7d2lkdGg6ICIrVCsicHg7IGhlaWdodDogIitUKyJweDsgbWFyZ2luOiAwOyBwYWRkaW5nOjA7IG91dGxpbmU6IG5vbmU7IGJvcmRlci1yYWRpdXM6IDUwJTt9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbCAuY2hhdHktc3ZnIHt3aWR0aDogIitUKyJweDsgaGVpZ2h0OiAiK1QrInB4OyB9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbCAuY2hhdHktc3ZnIGltZyB7d2lkdGg6ICIrVCsicHg7IGhlaWdodDogIitUKyJweDsgfSIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYXR5LWNoYW5uZWwgc3Bhbi5jaGF0eS1pY29uIHt3aWR0aDogIitUKyJweDsgaGVpZ2h0OiAiK1QrInB4OyB9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbCBhIHt3aWR0aDogIitUKyJweDsgaGVpZ2h0OiAiK1QrInB4OyB9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbCAuY2hhdHktc3ZnIC5jaGF0eS1jdXN0b20tY2hhbm5lbC1pY29uIHt3aWR0aDogIitUKyJweDsgaGVpZ2h0OiAiK1QrInB4OyBsaW5lLWhlaWdodDogIitUKyJweDsgZGlzcGxheTogYmxvY2s7IGZvbnQtc2l6ZToiK3BhcnNlSW50KFQvMikrInB4OyB9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jdGEtYnV0dG9uIHtiYWNrZ3JvdW5kLWNvbG9yOiAiK2Euc2V0dGluZ3Mud2lkZ2V0X2NvbG9yKyI7IH0iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWN0YS1idXR0b24gYnV0dG9uIHtiYWNrZ3JvdW5kLWNvbG9yOiAiK2Euc2V0dGluZ3Mud2lkZ2V0X2NvbG9yKyI7IH0iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoLXBlbmRpbmctbXNnIHtiYWNrZ3JvdW5kLWNvbG9yOiAiK2Euc2V0dGluZ3MucGVuZGluZ19tZXNnX2NvdW50X2JnY29sb3IrIjsgY29sb3I6ICIrYS5zZXR0aW5ncy5wZW5kaW5nX21lc2dfY291bnRfY29sb3IrIjsgfSIsInZlcnRpY2FsIj09YS5zZXR0aW5ncy5pY29uX3ZpZXcpe24rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS1jaGFubmVsLWxpc3Qge2hlaWdodDogIitpKihUKzgpKyJweDsgfSIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYXR5LWNoYW5uZWwtbGlzdCB7d2lkdGg6ICIrKFQrOCkrInB4OyB9Ijtmb3IodmFyIHo9MDtpPj16O3orKyluKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktb3BlbiAuY2hhdHktY2hhbm5lbC1saXN0IC5jaGF0eS1jaGFubmVsOm50aC1jaGlsZCgiKyh6KzEpKyIpIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtIisoVCs4KSooaS16LU0pKyJweCk7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtIisoVCs4KSooaS16LU0pKyJweCk7fSJ9ZWxzZXt0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygiaG9yLW1vZGUiKSxuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktY2hhbm5lbC1saXN0IHt3aWR0aDogIitpKihUKzgpKyJweDsgfSIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYXR5LWNoYW5uZWwtbGlzdCB7aGVpZ2h0OiAiK1QrInB4OyB9Ijtmb3IodmFyIHo9MDtpPj16O3orKyluKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktd2lkZ2V0LmxlZnQtcG9zaXRpb24uaG9yLW1vZGUuY2hhdHktb3BlbiAuY2hhdHktY2hhbm5lbC1saXN0IC5jaGF0eS1jaGFubmVsOm50aC1jaGlsZCgiKyh6KzEpKyIpIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgiKyhUKzgpKihpLXotTSkrInB4KTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCIrKFQrOCkqKGktei1NKSsicHgpO30iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS13aWRnZXQucmlnaHQtcG9zaXRpb24uaG9yLW1vZGUuY2hhdHktb3BlbiAuY2hhdHktY2hhbm5lbC1saXN0IC5jaGF0eS1jaGFubmVsOm50aC1jaGlsZCgiKyh6KzEpKyIpIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtIisoVCs4KSooaS16LU0pKyJweCk7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtIisoVCs4KSooaS16LU0pKyJweCk7fSJ9dmFyIEI9YS5zZXR0aW5ncy5ib3R0b21fc3BhY2luZyxFPWEuc2V0dGluZ3Muc2lkZV9zcGFjaW5nO24rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS13aWRnZXQge2JvdHRvbTogIitCKyJweH0iLCJsZWZ0Ij09Zz8obis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYXR5LXdpZGdldCB7bGVmdDogIitFKyJweDsgcmlnaHQ6IGF1dG87fSIsbis9Ii5jaGF0eS1vdXRlci1mb3Jtcy5wb3MtbGVmdC5jaGF0eS1mb3JtLSIrYS5pZCsiIHtsZWZ0OiAiK0UrInB4fSIsdCgiLmNoYXR5LWZvcm0tIithLmlkKS5hZGRDbGFzcygicG9zLWxlZnQiKSk6KG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS13aWRnZXQge3JpZ2h0OiAiK0UrInB4OyBsZWZ0OmF1dG87fSIsdCgiLmNoYXR5LWZvcm0tIithLmlkKS5hZGRDbGFzcygicG9zLXJpZ2h0Iiksbis9Ii5jaGF0eS1vdXRlci1mb3Jtcy5wb3MtcmlnaHQuY2hhdHktZm9ybS0iK2EuaWQrIiB7cmlnaHQ6ICIrRSsicHg7IGxlZnQ6YXV0bzt9IiksdCgiLmNoYXR5LWZvcm0tIithLmlkKS5zaG93KCk7dmFyIHE9VCsxNStwYXJzZUludChCKTtuKz0iLmNoYXR5LW91dGVyLWZvcm1zLmFjdGl2ZS5jaGF0eS1mb3JtLSIrYS5pZCsiIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtIitxKyJweCk7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtIitxKyJweCl9ICIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYXR5LXRvb2x0aXA6YWZ0ZXIge2JhY2tncm91bmQtY29sb3I6ICIrYS5zZXR0aW5ncy5jdGFfYmdfY29sb3IrIjsgY29sb3I6ICIrYS5zZXR0aW5ncy5jdGFfdGV4dF9jb2xvcisifSIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYXR5LXRvb2x0aXAucG9zLXRvcDpiZWZvcmUge2JvcmRlci10b3AtY29sb3I6ICIrYS5zZXR0aW5ncy5jdGFfYmdfY29sb3IrIjsgfSIsbis9IiNjaGF0eS13aWRnZXQtIithLmlkKyIgLmNoYXR5LXRvb2x0aXAucG9zLWxlZnQ6YmVmb3JlIHtib3JkZXItbGVmdC1jb2xvcjogIithLnNldHRpbmdzLmN0YV9iZ19jb2xvcisiOyB9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktdG9vbHRpcC5wb3MtcmlnaHQ6YmVmb3JlIHtib3JkZXItcmlnaHQtY29sb3I6ICIrYS5zZXR0aW5ncy5jdGFfYmdfY29sb3IrIjt9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAub24taG92ZXItdGV4dCB7YmFja2dyb3VuZC1jb2xvcjogIithLnNldHRpbmdzLmN0YV9iZ19jb2xvcisiOyBjb2xvcjogIithLnNldHRpbmdzLmN0YV90ZXh0X2NvbG9yKyJ9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktdG9vbHRpcC5wb3MtdG9wIC5vbi1ob3Zlci10ZXh0OmJlZm9yZSB7Ym9yZGVyLXRvcC1jb2xvcjogIithLnNldHRpbmdzLmN0YV9iZ19jb2xvcisiOyB9IixuKz0iI2NoYXR5LXdpZGdldC0iK2EuaWQrIiAuY2hhdHktdG9vbHRpcC5wb3MtbGVmdCAub24taG92ZXItdGV4dDpiZWZvcmUge2JvcmRlci1sZWZ0LWNvbG9yOiAiK2Euc2V0dGluZ3MuY3RhX2JnX2NvbG9yKyI7IH0iLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS10b29sdGlwLnBvcy1yaWdodCAub24taG92ZXItdGV4dDpiZWZvcmUge2JvcmRlci1yaWdodC1jb2xvcjogIithLnNldHRpbmdzLmN0YV9iZ19jb2xvcisiO30iO3ZhciBMPVEoYS5pZCwidi13aWRnZXQiKTtpZihMJiYoUChhLnRyaWdnZXJzLmV4aXRfaW50ZW50KXx8UChhLnRyaWdnZXJzLmhhc190aW1lX2RlbGF5KSYmcGFyc2VJbnQoYS50cmlnZ2Vycy50aW1lX2RlbGF5KT4wfHxQKGEudHJpZ2dlcnMuaGFzX2Rpc3BsYXlfYWZ0ZXJfcGFnZV9zY3JvbGwpJiZwYXJzZUludChhLnRyaWdnZXJzLmRpc3BsYXlfYWZ0ZXJfcGFnZV9zY3JvbGwpPjApPyhQKGEudHJpZ2dlcnMuaGFzX3RpbWVfZGVsYXkpJiZwYXJzZUludChhLnRyaWdnZXJzLnRpbWVfZGVsYXkpPjAmJihldD0hMCxwYXJzZUludChhLnRyaWdnZXJzLnRpbWVfZGVsYXkpPmF0JiYoYXQ9YS50cmlnZ2Vycy50aW1lX2RlbGF5KSx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCkuYWRkQ2xhc3MoIm9uLWNoYXR5LWRlbGF5IiksdCgiI2NoYXR5LXdpZGdldC0iK2EuaWQpLmFkZENsYXNzKCJkZWxheS10aW1lLSIrcGFyc2VJbnQoYS50cmlnZ2Vycy50aW1lX2RlbGF5KSksdCgiI2NoYXR5LXdpZGdldC0iK2EuaWQpLmF0dHIoImRhdGEtdGltZSIscGFyc2VJbnQoYS50cmlnZ2Vycy50aW1lX2RlbGF5KSkpLFAoYS50cmlnZ2Vycy5oYXNfZGlzcGxheV9hZnRlcl9wYWdlX3Njcm9sbCkmJnBhcnNlSW50KGEudHJpZ2dlcnMuZGlzcGxheV9hZnRlcl9wYWdlX3Njcm9sbCk+MCYmKG50PSEwLHQoIiNjaGF0eS13aWRnZXQtIithLmlkKS5hZGRDbGFzcygib24tY2hhdHktc2Nyb2xsIiksdCgiI2NoYXR5LXdpZGdldC0iK2EuaWQpLmFkZENsYXNzKCJwYWdlLXNjcm9sbC0iK3BhcnNlSW50KGEudHJpZ2dlcnMuZGlzcGxheV9hZnRlcl9wYWdlX3Njcm9sbCkpLHQoIiNjaGF0eS13aWRnZXQtIithLmlkKS5hdHRyKCJkYXRhLXNjcm9sbCIscGFyc2VJbnQoYS50cmlnZ2Vycy5kaXNwbGF5X2FmdGVyX3BhZ2Vfc2Nyb2xsKSkpLFAoYS50cmlnZ2Vycy5leGl0X2ludGVudCkmJihjdD0hMCx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCkuYWRkQ2xhc3MoIm9uLWNoYXR5LWV4aXQtaW50ZW50IikpKToobyhhLmlkKSx0KCIjY2hhdHktd2lkZ2V0LSIrYS5pZCkuYWRkQ2xhc3MoImFjdGl2ZSIpKSwhXyhhLnNldHRpbmdzLmZvbnRfZmFtaWx5KSYmIm5vbmUiIT1hLnNldHRpbmdzLmZvbnRfZmFtaWx5KXt2YXIgTz1hLnNldHRpbmdzLmZvbnRfZmFtaWx5Oy0xIT10LmluQXJyYXkoTywkKT8iU3lzdGVtIFN0YWNrIj09TyYmKE89Ii1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFNlZ29lIFVJLFJvYm90byxPeHlnZW4tU2FucyxVYnVudHUsQ2FudGFyZWxsLEhlbHZldGljYSBOZXVlLHNhbnMtc2VyaWYiKToodCgiaGVhZCIpLmFwcGVuZCgnPGxpbmsgcmVsPSJwcmVsb2FkIiBhcz0ic3R5bGUiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT0nK08rJyZkaXNwbGF5PXN3YXAiPicpLHQoImhlYWQiKS5hcHBlbmQoJzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PScrTysnJmRpc3BsYXk9c3dhcCI+JykpLG4rPSIjY2hhdHktd2lkZ2V0LSIrYS5pZCsiLCAjY2hhdHktd2lkZ2V0LSIrYS5pZCsiIC5jaGF0eS10b29sdGlwOmFmdGVyIHtmb250LWZhbWlseTogIitPKyJ9In19Y3QmJlMoKSwiIiE9biYmKHQoIiNjdXN0b20tY2hhdHktY3NzIikubGVuZ3RofHx0KCJoZWFkIikuYXBwZW5kKCI8c3R5bGUgaWQ9J2N1c3RvbS1jaGF0eS1jc3MnPjwvc3R5bGU+IiksdCgiI2N1c3RvbS1jaGF0eS1jc3MiKS5hcHBlbmQobikpLCIiIT1jJiYodCgiI2N1c3RvbS1hZHZhbmNlLWNoYXR5LWNzcyIpLmxlbmd0aHx8dCgiaGVhZCIpLmFwcGVuZCgiPHN0eWxlIGlkPSdjdXN0b20tYWR2YW5jZS1jaGF0eS1jc3MnPjwvc3R5bGU+IiksdCgiI2N1c3RvbS1hZHZhbmNlLWNoYXR5LWNzcyIpLmFwcGVuZChjKSksZT09WS5sZW5ndGgtMX0pLHQoIiNjdXN0b20tYWR2YW5jZS1jaGF0eS1jc3MiKS5sZW5ndGh8fHQoImhlYWQiKS5hcHBlbmQoIjxzdHlsZSBpZD0nY3VzdG9tLWFkdmFuY2UtY2hhdHktY3NzJz48L3N0eWxlPiIpLHQoIiNjdXN0b20tYWR2YW5jZS1jaGF0eS1jc3MiKS5hcHBlbmQoaHQpKSx6KCksSSgpfWZ1bmN0aW9uIHModCl7aWYoUCh0LmlzX2FnZW50KSl7aWYodC5hZ2VudF9kYXRhLmxlbmd0aCYmKCFLJiZQKHQuaXNfYWdlbnRfZGVza3RvcCl8fEsmJlAodC5pc19hZ2VudF9tb2JpbGUpKSlyZXR1cm4hMH1lbHNlIGlmKCghSyYmUCh0LmlzX2Rlc2t0b3ApfHxLJiZQKHQuaXNfbW9iaWxlKSkmJigiIiE9dC52YWx1ZXx8IkNvbnRhY3RfVXMiPT10LmNoYW5uZWwpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIG8obil7aWYodCgiI2NoYXR5LXdpZGdldC0iK24rIiAuY2hhdHktY2hhbm5lbC5jaGF0eS1kZWZhdWx0LW9wZW4iKS5sZW5ndGgpe3ZhciBjPXQoIiNjaGF0eS13aWRnZXQtIituKyIgLmNoYXR5LWNoYW5uZWwuY2hhdHktZGVmYXVsdC1vcGVuIGEuY2hhdHktd2hhdHNhcHAtZm9ybSIpLmRhdGEoImZvcm0iKTtpZighXyhjKSl7dmFyIGk9UShuLCJjLSIrdCgiI2NoYXR5LXdpZGdldC0iK24rIiAuY2hhdHktY2hhbm5lbC5jaGF0eS1kZWZhdWx0LW9wZW4iKS5kYXRhKCJjaGFubmVsIikpO2lmKGkmJih0KCIjIitjKS5hZGRDbGFzcygiaXMtYWN0aXZlIiksdCgiIyIrYykubGVuZ3RoKSl7dmFyIHM9dCgiI2NoYXR5LXdpZGdldC0iK24rIiAuY2hhdHktY2hhbm5lbC5jaGF0eS1kZWZhdWx0LW9wZW4gYS5jaGF0eS13aGF0c2FwcC1mb3JtIikuaHRtbCgpO2lmKGEobiksdCgiI2NoYXR5LXdpZGdldC0iK24pLmZpbmQoIi5jaC1wZW5kaW5nLW1zZyIpLnJlbW92ZSgpLHQoIiNjaGF0eS13aWRnZXQtIituKyIgLmNoYXR5LXdpZGdldCIpLnJlbW92ZUNsYXNzKCJjaGF0eS1vcGVuIiksdCgiI2NoYXR5LXdpZGdldC0iK24pLmFkZENsYXNzKCJmb3JtLW9wZW4iKSx0KCIjIitjKS5hZGRDbGFzcygiYWN0aXZlIiksdCgiI2NoYXR5LXdpZGdldC0iK24rIiAub3Blbi1jaGF0eS1jaGFubmVsIikuaHRtbChzKSx0KCIjY2hhdHktd2lkZ2V0LSIrbikuYWRkQ2xhc3MoImFjdGl2ZSIpLHQoIiNjaGF0eS13aWRnZXQtIituKS5hZGRDbGFzcygiYWN0aXZlIiksdCgiI2NoYXR5LXdpZGdldC0iK24pLmhhc0NsYXNzKCJhdXRvLWhpZGUtY2hhdHkiKSl7dmFyIG89cGFyc2VJbnQodCgiI2NoYXR5LXdpZGdldC0iK24pLmRhdGEoInRpbWUiKSk7bz4wJiYobys9cnQsdCgiI2NoYXR5LXdpZGdldC0iK24pLmFkZENsYXNzKCJoaWRlLWFmdGVyLSIrbykpfWlmKCJvbiI9PWNoYXR5X3NldHRpbmdzLmRhdGFfYW5hbHl0aWNzX3NldHRpbmdzKXt2YXIgaD1bXSxyPXQoIiNjaGF0eS13aWRnZXQtIituKyIgLmNoYXR5LWNoYW5uZWwuY2hhdHktZGVmYXVsdC1vcGVuIikuZGF0YSgiY2hhbm5lbCIpLGw9UShuLCJ2LSIrcik7aWYobCYmInVuZGVmaW5lZCIhPXR5cGVvZiByJiYoSChuLCJ2LSIrciksaC5wdXNoKHIpKSwhdHQmJmgubGVuZ3RoKXt2YXIgZD10KCIjY2hhdHktd2lkZ2V0LSIrbikuZGF0YSgibm9uY2UiKTt0LmFqYXgoe3VybDpjaGF0eV9zZXR0aW5ncy5hamF4X3VybCxkYXRhOnt3aWRnZXRJZDpuLGNoYW5uZWxzOmgsdXNlcklkOm4saXNNb2JpbGU6Syx3aWRnZXROb25jZTpkLGFjdGlvbjoidXBkYXRlX2NoYXR5X2NoYW5uZWxfdmlld3MifSx0eXBlOiJwb3N0IixzdWNjZXNzOmZ1bmN0aW9uKHQpe30sZXJyb3I6ZnVuY3Rpb24odCxlLGEpe21vbml0b3JFcnJvckxvZyh0LGUsYSl9fSl9fXJldHVybn19fWlmKHQoIiNjaGF0eS13aWRnZXQtIituKS5hZGRDbGFzcygiYWN0aXZlIiksdCgiI2NoYXR5LXdpZGdldC0iK24pLmhhc0NsYXNzKCJhdXRvLWhpZGUtY2hhdHkiKSl7dmFyIG89cGFyc2VJbnQodCgiI2NoYXR5LXdpZGdldC0iK24pLmRhdGEoInRpbWUiKSk7bz4wJiYobys9cnQsdCgiI2NoYXR5LXdpZGdldC0iK24pLmFkZENsYXNzKCJoaWRlLWFmdGVyLSIrbykpfXZhciBnPVEobiwidi13aWRnZXQiKTtpZihnKXtIKG4sInYtd2lkZ2V0Iik7dmFyIHIsaD0odCgiI2NoYXR5LXdpZGdldC0iK24pLmRhdGEoInVzZXIiKSxbXSkseT0wLHA9MCx1PXQoIiNjaGF0eS13aWRnZXQtIituKS5kYXRhKCJrZXkiKTtpZih0eXBlb2YgWVt1XSE9ZSl7dmFyIGY9RygiYWN0aXZlY2hhdHlXaWRnZXRzIik7bnVsbCE9Zj8oZj1mLnNwbGl0KCIsIiksLTE9PXQuaW5BcnJheShuLGYpJiYoZi5wdXNoKG4pLGY9Zi5qb2luKCIsIiksUigiYWN0aXZlY2hhdHlXaWRnZXRzIixmLDEpKSk6KGY9bixSKCJhY3RpdmVjaGF0eVdpZGdldHMiLGYsMSkpfWlmKHQoIiNjaGF0eS13aWRnZXQtIituKyIgLmNoYXR5LXdpZGdldCIpLmhhc0NsYXNzKCJoYXMtc2luZ2xlIikpe3k9MSxyPXQoIiNjaGF0eS13aWRnZXQtIituKyIgLmNoYXR5LWNoYW5uZWwiKS5kYXRhKCJjaGFubmVsIik7dmFyIGw9UShuLCJ2LSIrcik7bCYmInVuZGVmaW5lZCIhPXR5cGVvZiByJiYoSChuLCJ2LSIrciksaC5wdXNoKHIpKX1lbHNlIHQoIiNjaGF0eS13aWRnZXQtIituKyIgLmNoYXR5LXdpZGdldCIpLmhhc0NsYXNzKCJjaGF0eS1vcGVuIikmJihwPTEsdCgiI2NoYXR5LXdpZGdldC0iK24rIiAuY2hhdHktY2hhbm5lbC1saXN0IC5jaGF0eS1jaGFubmVsIikuZWFjaChmdW5jdGlvbigpe3I9dCh0aGlzKS5kYXRhKCJjaGFubmVsIik7dmFyIGU9UShuLCJ2LSIrcik7ZSYmInVuZGVmaW5lZCIhPXR5cGVvZiByJiYoSChuLCJ2LSIrciksaC5wdXNoKHIpKX0pKTtpZihnJiYhdHQpe3ZhciBkPXQoIiNjaGF0eS13aWRnZXQtIituKS5kYXRhKCJub25jZSIpO3R0fHx0LmFqYXgoe3VybDpjaGF0eV9zZXR0aW5ncy5hamF4X3VybCxkYXRhOnt3aWRnZXRJZDpuLGNoYW5uZWxzOmgsdXNlcklkOm4saXNNb2JpbGU6Syxpc09wZW46cCxpc1NpbmdsZTp5LHdpZGdldE5vbmNlOmQsYWN0aW9uOiJ1cGRhdGVfY2hhdHlfd2lkZ2V0X3ZpZXdzIn0sdHlwZToicG9zdCIsc3VjY2VzczpmdW5jdGlvbih0KXt9LGVycm9yOmZ1bmN0aW9uKHQsZSxhKXttb25pdG9yRXJyb3JMb2codCxlLGEpfX0pfX19ZnVuY3Rpb24gaCh0LGUpe3JldHVybiB0fWZ1bmN0aW9uIHIodCxlKXtzd2l0Y2godCl7Y2FzZSJjaGF0LXNtaWxlIjpyZXR1cm4nPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSItNDk2LjggNTA3LjEgNTQgNTQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZC1jb2xvcjpuZXcgLTQ5Ni44IDUwNy4xIDU0IDU0OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHN0eWxlIHR5cGU9InRleHQvY3NzIj4uY2hhdHktc3RzMXtmaWxsOiNGRkZGRkY7fSAuY2hhdHktc3RzMntmaWxsOm5vbmU7c3Ryb2tlOiM4MDgwODA7c3Ryb2tlLXdpZHRoOjEuNTtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQ7fTwvc3R5bGU+PGc+PGNpcmNsZSBjeD0iLTQ2OS44IiBjeT0iNTM0LjEiIHI9IjI3IiBmaWxsPSInK2UrJyIvPjwvZz48cGF0aCBjbGFzcz0iY2hhdHktc3RzMSIgZD0iTS00NTkuNSw1MjMuNUgtNDgyYy0yLjEsMC0zLjcsMS43LTMuNywzLjd2MTMuMWMwLDIuMSwxLjcsMy43LDMuNywzLjdoMTkuM2w1LjQsNS40YzAuMiwwLjIsMC40LDAuMiwwLjcsMC4yYzAuMiwwLDAuMiwwLDAuNCwwYzAuNC0wLjIsMC42LTAuNiwwLjYtMC45di0yMS41Qy00NTUuOCw1MjUuMi00NTcuNSw1MjMuNS00NTkuNSw1MjMuNXoiLz48cGF0aCBjbGFzcz0iY2hhdHktc3RzMiIgZD0iTS00NzYuNSw1MzcuM2MyLjUsMS4xLDguNSwyLjEsMTMtMi43Ii8+PHBhdGggY2xhc3M9ImNoYXR5LXN0czIiIGQ9Ik0tNDYwLjgsNTM0LjVjLTAuMS0xLjItMC44LTMuNC0zLjMtMi44Ii8+PC9zdmc+JztjYXNlImNoYXQtYnViYmxlIjpyZXR1cm4nPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSItNDk2LjkgNTA3LjEgNTQgNTQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZC1jb2xvcjpuZXcgLTQ5Ni45IDUwNy4xIDU0IDU0OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHN0eWxlIHR5cGU9InRleHQvY3NzIj4uY2hhdHktc3RzMXtmaWxsOiNGRkZGRkY7fTwvc3R5bGU+PGc+PGNpcmNsZSAgY3g9Ii00NjkuOSIgY3k9IjUzNC4xIiByPSIyNyIgZmlsbD0iJytlKyciLz48L2c+PHBhdGggY2xhc3M9ImNoYXR5LXN0czEiIGQ9Ik0tNDcyLjYsNTIyLjFoNS4zYzMsMCw2LDEuMiw4LjEsMy40YzIuMSwyLjEsMy40LDUuMSwzLjQsOC4xYzAsNi00LjYsMTEtMTAuNiwxMS41djQuNGMwLDAuNC0wLjIsMC43LTAuNSwwLjkgICBjLTAuMiwwLTAuMiwwLTAuNCwwYy0wLjIsMC0wLjUtMC4yLTAuNy0wLjRsLTQuNi01Yy0zLDAtNi0xLjItOC4xLTMuNHMtMy40LTUuMS0zLjQtOC4xQy00ODQuMSw1MjcuMi00NzguOSw1MjIuMS00NzIuNiw1MjIuMXogICBNLTQ2Mi45LDUzNS4zYzEuMSwwLDEuOC0wLjcsMS44LTEuOGMwLTEuMS0wLjctMS44LTEuOC0xLjhjLTEuMSwwLTEuOCwwLjctMS44LDEuOEMtNDY0LjYsNTM0LjYtNDYzLjksNTM1LjMtNDYyLjksNTM1LjN6ICAgTS00NjkuOSw1MzUuM2MxLjEsMCwxLjgtMC43LDEuOC0xLjhjMC0xLjEtMC43LTEuOC0xLjgtMS44Yy0xLjEsMC0xLjgsMC43LTEuOCwxLjhDLTQ3MS43LDUzNC42LTQ3MSw1MzUuMy00NjkuOSw1MzUuM3ogICBNLTQ3Nyw1MzUuM2MxLjEsMCwxLjgtMC43LDEuOC0xLjhjMC0xLjEtMC43LTEuOC0xLjgtMS44Yy0xLjEsMC0xLjgsMC43LTEuOCwxLjhDLTQ3OC44LDUzNC42LTQ3OC4xLDUzNS4zLTQ3Nyw1MzUuM3oiLz48L3N2Zz4nO2Nhc2UiY2hhdC1kYiI6cmV0dXJuJzxzdmcgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iLTQ5NiA1MDcuMSA1NCA1NCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kLWNvbG9yOm5ldyAtNDk2IDUwNy4xIDU0IDU0OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHN0eWxlIHR5cGU9InRleHQvY3NzIj4uY2hhdHktc3RzMXtmaWxsOiNGRkZGRkY7fTwvc3R5bGU+PGc+PGNpcmNsZSAgY3g9Ii00NjkiIGN5PSI1MzQuMSIgcj0iMjciIGZpbGw9IicrZSsnIi8+PC9nPjxwYXRoIGNsYXNzPSJjaGF0eS1zdHMxIiBkPSJNLTQ2NC42LDUyNy43aC0xNS42Yy0xLjksMC0zLjUsMS42LTMuNSwzLjV2MTAuNGMwLDEuOSwxLjYsMy41LDMuNSwzLjVoMTIuNmw1LDVjMC4yLDAuMiwwLjMsMC4yLDAuNywwLjJjMC4yLDAsMC4yLDAsMC4zLDBjMC4zLTAuMiwwLjUtMC41LDAuNS0wLjl2LTE4LjJDLTQ2MS4xLDUyOS4zLTQ2Mi43LDUyNy43LTQ2NC42LDUyNy43eiIvPjxwYXRoIGNsYXNzPSJjaGF0eS1zdHMxIiBkPSJNLTQ1OS40LDUyMi41SC00NzVjLTEuOSwwLTMuNSwxLjYtMy41LDMuNWgxMy45YzIuOSwwLDUuMiwyLjMsNS4yLDUuMnYxMS42bDEuOSwxLjljMC4yLDAuMiwwLjMsMC4yLDAuNywwLjJjMC4yLDAsMC4yLDAsMC4zLDBjMC4zLTAuMiwwLjUtMC41LDAuNS0wLjl2LTE4Qy00NTUuOSw1MjQuMS00NTcuNSw1MjIuNS00NTkuNCw1MjIuNXoiLz48L3N2Zz4nO2RlZmF1bHQ6cmV0dXJuJzxzdmcgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iLTQ5NiA1MDcuNyA1NCA1NCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kLWNvbG9yOm5ldyAtNDk2IDUwNy43IDU0IDU0OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHN0eWxlIHR5cGU9InRleHQvY3NzIj4uY2hhdHktc3RzMXtmaWxsOiAjRkZGRkZGO30uY2hhdHktc3Qwe2ZpbGw6ICM4MDgwODA7fTwvc3R5bGU+PGc+PGNpcmNsZSBjeD0iLTQ2OSIgY3k9IjUzNC43IiByPSIyNyIgZmlsbD0iJytlKyciLz48L2c+PHBhdGggY2xhc3M9ImNoYXR5LXN0czEiIGQ9Ik0tNDU5LjksNTIzLjdoLTIwLjNjLTEuOSwwLTMuNCwxLjUtMy40LDMuNHYxNS4zYzAsMS45LDEuNSwzLjQsMy40LDMuNGgxMS40bDUuOSw0LjljMC4yLDAuMiwwLjMsMC4yLDAuNSwwLjIgaDAuM2MwLjMtMC4yLDAuNS0wLjUsMC41LTAuOHYtNC4yaDEuN2MxLjksMCwzLjQtMS41LDMuNC0zLjR2LTE1LjNDLTQ1Ni41LDUyNS4yLTQ1OCw1MjMuNy00NTkuOSw1MjMuN3oiLz48cGF0aCBjbGFzcz0iY2hhdHktc3QwIiBkPSJNLTQ3Ny43LDUzMC41aDExLjljMC41LDAsMC44LDAuNCwwLjgsMC44bDAsMGMwLDAuNS0wLjQsMC44LTAuOCwwLjhoLTExLjljLTAuNSwwLTAuOC0wLjQtMC44LTAuOGwwLDBDLTQ3OC42LDUzMC44LTQ3OC4yLDUzMC41LTQ3Ny43LDUzMC41eiIvPjxwYXRoIGNsYXNzPSJjaGF0eS1zdDAiIGQ9Ik0tNDc3LjcsNTMzLjVoNy45YzAuNSwwLDAuOCwwLjQsMC44LDAuOGwwLDBjMCwwLjUtMC40LDAuOC0wLjgsMC44aC03LjljLTAuNSwwLTAuOC0wLjQtMC44LTAuOGwwLDBDLTQ3OC42LDUzMy45LTQ3OC4yLDUzMy41LTQ3Ny43LDUzMy41eiIvPjwvc3ZnPid9fWZ1bmN0aW9uIGwoZSxhLG4pe3ZhciBjPSIiO2lmKCFQKGUuaXNfYWdlbnQpKXt4KGUuY2hhbm5lbF90eXBlKSYmKGUuY2hhbm5lbF90eXBlPWUuY2hhbm5lbCk7dmFyIGk9YihlLGEpLHM9dShlLGksbixhKTtpZigiQ29udGFjdF9VcyI9PWUuY2hhbm5lbF90eXBlKWMrPSIgaGFzLWNoYXR5LWJveCBjaGF0eS1jb250YWN0LWZvcm0iO2Vsc2UgaWYoIldoYXRzYXBwIj09ZS5jaGFubmVsX3R5cGUmJlAoZS5oYXNfd2VsY29tZV9tZXNzYWdlKSYmIV8oZS5jaGF0X3dlbGNvbWVfbWVzc2FnZSkmJlAoZS5pc19kZWZhdWx0X29wZW4pKXt2YXIgbz1RKGEsImMtIitlLmNoYW5uZWxfdHlwZSk7byYmKGMrPSIgY2hhdHktZGVmYXVsdC1vcGVuIil9cmV0dXJuIjxkaXYgY2xhc3M9J2NoYXR5LWNoYW5uZWwgIitlLmNoYW5uZWwrIi1jaGFubmVsIitjKyInIGlkPSciK2UuY2hhbm5lbCsiLSIrYSsiLWNoYW5uZWwnIGRhdGEtaWQ9JyIrZS5jaGFubmVsX3R5cGUrIi0iK2ErIicgZGF0YS13aWRnZXQ9JyIrYSsiJyBkYXRhLWNoYW5uZWw9JyIrZS5jaGFubmVsKyInPiIrcysiPC9kaXY+In1pZihlLmFnZW50X2RhdGEubGVuZ3RoKXt2YXIgaD0wLHI9W107aWYodC5lYWNoKGUuYWdlbnRfZGF0YSxmdW5jdGlvbih0LGUpeyIiIT1lLnZhbHVlJiYoaCsrLHI9ZSl9KSxoPjApe3ZhciBpLHMsbD12KGEpO3JldHVybiBudWxsPT1sJiYobD0tMSksZChlLGEpLGk9YihlLGEpLHM9dShlLGksbixhKSwoIkluc3RhZ3JhbSIhPWUuY2hhbm5lbHx8IiNmZmZmZmYiIT1lLmljb25fY29sb3ImJiIjZmZmIiE9ZS5pY29uX2NvbG9yKSYmKGh0Kz0iLmNoYXR5LWFnZW50LSIrYSsiLSIrZS5jaGFubmVsKyIgLmNvbG9yLWVsZW1lbnQge2ZpbGw6ICIrZS5pY29uX2NvbG9yKyI7IGNvbG9yOiAiK2UuaWNvbl9jb2xvcisiO30iKSxodCs9Ii5jaGF0eS1hZ2VudC0iK2ErIi0iK2UuY2hhbm5lbCsiIC5jaGF0eS1jdXN0b20taWNvbiB7IGJhY2tncm91bmQtY29sb3I6ICIrZS5pY29uX2NvbG9yKyI7fSIsaHQrPSIuY2hhdHktYWdlbnQtIithKyItIitlLmNoYW5uZWwrIiAuY2hhdHktc3ZnLWltZyB7IGJhY2tncm91bmQtY29sb3I6ICIrZS5pY29uX2NvbG9yKyI7fSIsIjxkaXYgZGF0YS1mb3JtPSdjaGF0eS1mb3JtLSIrYSsiLSIrZS5jaGFubmVsX3R5cGUrIicgY2xhc3M9J2NoYXR5LWNoYW5uZWwgY2hhdHktYWdlbnQtYnV0dG9uIGNoYXR5LWFnZW50LSIrYSsiLSIrZS5jaGFubmVsKyIgIitlLmNoYW5uZWwrIi1jaGFubmVsIitjKyInIGlkPSciK2UuY2hhbm5lbCsiLSIrYSsiLWNoYW5uZWwnIGRhdGEtaWQ9JyIrZS5jaGFubmVsX3R5cGUrIi0iK2ErIicgZGF0YS13aWRnZXQ9JyIrYSsiJyBkYXRhLWNoYW5uZWw9JyIrZS5jaGFubmVsKyInPiIrcysiPC9kaXY+In19fWZ1bmN0aW9uIGQoZSxhKXt2YXIgbj0iIixjPXYoYSk7bnVsbD09YyYmKGM9LTEpLG4rPSI8ZGl2IHN0eWxlPSdkaXNwbGF5Om5vbmU7JyBjbGFzcz0nY2hhdHktb3V0ZXItZm9ybXMgY2hhdHktYWdlbnQtZGF0YSBjaGF0eS1hZ2VudC1kYXRhLSIrYSsiIGNoYXR5LWZvcm0tIithKyInIGRhdGEtY2hhbm5lbD0nIitlLmNoYW5uZWxfdHlwZSsiJyBpZD0nY2hhdHktZm9ybS0iK2ErIi0iK2UuY2hhbm5lbF90eXBlKyInIGRhdGEtd2lkZ2V0PSciK2ErIicgZGF0YS1pbmRleD0nIitjKyInPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LWZvcm0nPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LWZvcm0tYm9keSc+IixuKz0iPGRpdiByb2xlPSdidXR0b24nIGNsYXNzPSdjaGF0eS1jbG9zZS1hZ2VudC1saXN0Jz48c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMzMCAzMzAnIHhtbG5zOnY9J2h0dHBzOi8vdmVjdGEuaW8vbmFubyc+PHBhdGggZD0nTTMyNS42MDcgNzkuMzkzYy01Ljg1Ny01Ljg1Ny0xNS4zNTUtNS44NTgtMjEuMjEzLjAwMWwtMTM5LjM5IDEzOS4zOTNMMjUuNjA3IDc5LjM5M2MtNS44NTctNS44NTctMTUuMzU1LTUuODU4LTIxLjIxMy4wMDFzLTUuODU4IDE1LjM1NSAwIDIxLjIxM2wxNTAuMDA0IDE1MGExNSAxNSAwIDAgMCAyMS4yMTItLjAwMWwxNDkuOTk2LTE1MGM1Ljg1OS01Ljg1NyA1Ljg1OS0xNS4zNTUuMDAxLTIxLjIxM3onLz48L3N2Zz48L2Rpdj4iLG4rPSI8ZGl2IGNsYXNzPSdjaGF0eS1hZ2VudC1oZWFkZXIgYWdlbnQtaW5mby0iK2ErIi0iK2UuY2hhbm5lbCsiJz4iLF8oZS5oZWFkZXJfdGV4dCl8fChuKz0iPGRpdiBjbGFzcz0nYWdlbnQtbWFpbi1oZWFkZXInPiIrZS5oZWFkZXJfdGV4dCsiPC9kaXY+IiksXyhlLmhlYWRlcl9zdWJfdGV4dCl8fChuKz0iPGRpdiBjbGFzcz0nYWdlbnQtc3ViLWhlYWRlcic+IitlLmhlYWRlcl9zdWJfdGV4dCsiPC9kaXY+Iiksbis9IjwvZGl2PiIsdC5lYWNoKGUuYWdlbnRfZGF0YSxmdW5jdGlvbih0LGMpe2lmKCIiIT1jLnZhbHVlKXt2YXIgaT1jLnN2Z19pY29uO18oYy5hZ2VudF9pbWFnZSl8fChpPSI8aW1nIGNsYXNzPSdjaGF0eS1hZ2VudC1pbWcnIHNyYz0nIitjLmFnZW50X2ltYWdlKyInIGFsdD0nIitjLmFnZW50X3RpdGxlKyInIC8+Iik7dmFyIHM9ZyhjLGUsYSx0LGksYy5hZ2VudF90aXRsZSk7bis9IjxkaXYgY2xhc3M9J2NoYXR5LWFnZW50IGFnZW50LWluZm8tIithKyItIitlLmNoYW5uZWwrIiBhZ2VudC1pbmZvLSIrdCsiJz4iK3MrIjwvZGl2PiJ9aHQrPSIuYWdlbnQtaW5mby0iK2ErIi0iK2UuY2hhbm5lbCsiLmFnZW50LWluZm8tIit0KyIgLmNoYXR5LWFnZW50LWljb24gaW1nIHsgYmFja2dyb3VuZC1jb2xvcjogIitjLmFnZW50X2JnX2NvbG9yKyI7IH0gIiwoIkluc3RhZ3JhbSIhPWUuY2hhbm5lbHx8IiNmZmZmZmYiIT1jLmFnZW50X2JnX2NvbG9yJiYiI2ZmZiIhPWMuYWdlbnRfYmdfY29sb3IpJiYoaHQrPSIuYWdlbnQtaW5mby0iK2ErIi0iK2UuY2hhbm5lbCsiLmFnZW50LWluZm8tIit0KyIgLmNoYXR5LWFnZW50LWljb24gLmNvbG9yLWVsZW1lbnQgeyBmaWxsOiAiK2MuYWdlbnRfYmdfY29sb3IrIjsgfSAiKSxodCs9Ii5hZ2VudC1pbmZvLSIrYSsiLSIrZS5jaGFubmVsKyIuYWdlbnQtaW5mby0iK3QrIiAuY2hhdHktY3VzdG9tLWljb24geyBiYWNrZ3JvdW5kLWNvbG9yOiAiK2MuYWdlbnRfYmdfY29sb3IrIjsgfSAifSksbis9IjwvZGl2PiIsbis9IjwvZGl2PiIsbis9IjwvZGl2PiIsaHQrPSIuY2hhdHktYWdlbnQtaGVhZGVyLmFnZW50LWluZm8tIithKyItIitlLmNoYW5uZWwrIiB7IGJhY2tncm91bmQtY29sb3I6ICIrZS5oZWFkZXJfYmdfY29sb3IrIjsgY29sb3I6ICIrZS5oZWFkZXJfdGV4dF9jb2xvcisiIH0gIixodCs9Ii5hZ2VudC1pbmZvLSIrYSsiLSIrZS5jaGFubmVsKyIgLmNoYXR5LWNsb3NlLWFnZW50LWxpc3Qgc3ZnIHsgZmlsbDogIitlLmhlYWRlcl90ZXh0X2NvbG9yKyIgfSAiLHQoImJvZHkiKS5hcHBlbmQobil9ZnVuY3Rpb24gZyhlLGEsbixjLGkscyl7dmFyIG89ZS52YWx1ZSxoPSJfYmxhbmsiO2lmKCJXaGF0c2FwcCI9PWEuY2hhbm5lbF90eXBlKXt2YXIgcj15KGUudmFsdWUpO0s/KGg9IiIsbz0iaHR0cHM6Ly93YS5tZS8iK3IpOihoPSJfYmxhbmsiLG89Imh0dHBzOi8vd2ViLndoYXRzYXBwLmNvbS9zZW5kLz9waG9uZT0iK3IpfWVsc2UiV2VDaGF0Ij09YS5jaGFubmVsX3R5cGU/KGg9IiIsbz0iamF2YXNjcmlwdDo7Iik6IkVtYWlsIj09YS5jaGFubmVsX3R5cGU/KGg9IiIsbz0ibWFpbHRvOiIrZS52YWx1ZSk6IkZhY2Vib29rX01lc3NlbmdlciI9PWEuY2hhbm5lbF90eXBlP2g9Sz8iIjoiX2JsYW5rIjoiU01TIj09YS5jaGFubmVsX3R5cGU/KGg9IiIsbz0ic21zOiIrZS52YWx1ZSk6IlRlbGVncmFtIj09YS5jaGFubmVsX3R5cGU/KG89cChlLnZhbHVlLCJAIiksbz0iaHR0cHM6Ly90ZWxlZ3JhbS5tZS8iK28saD0iX2JsYW5rIik6IlR3aXR0ZXIiPT1hLmNoYW5uZWxfdHlwZT9vPSJodHRwczovL3R3aXR0ZXIuY29tLyIrdC50cmltKGUudmFsdWUpOiJQaG9uZSI9PWEuY2hhbm5lbF90eXBlPyhoPSIiLG89InRlbDoiK3QudHJpbShlLnZhbHVlKSk6IlNreXBlIj09YS5jaGFubmVsX3R5cGU/KGg9IiIsbz0ic2t5cGU6Iit0LnRyaW0oZS52YWx1ZSkrIj9jaGF0Iik6IlNuYXBjaGF0Ij09YS5jaGFubmVsX3R5cGU/bz0iaHR0cHM6Ly93d3cuc25hcGNoYXQuY29tL2FkZC8iK3QudHJpbShlLnZhbHVlKToiVmtvbnRha3RlIj09YS5jaGFubmVsX3R5cGU/bz0iaHR0cHM6Ly92ay5tZS8iK3QudHJpbShlLnZhbHVlKToiTGlua2VkaW4iPT1hLmNoYW5uZWxfdHlwZT9vPSJwZXJzb25hbCI9PWUubGlua190eXBlPyJodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vIit0LnRyaW0oZS52YWx1ZSk6Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55LyIrdC50cmltKGUudmFsdWUpOiJWaWJlciI9PWEuY2hhbm5lbF90eXBlPyhvPXAoZS52YWx1ZSwiKyIpLGlzTmFOKG8pfHwobz1vLnJlcGxhY2UoIisiLCIiKSxuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC8oaVBvZHxpUGhvbmV8aVBhZCkvKSYmKG89IisiK28pLG89InZpYmVyOi8vY2hhdD9udW1iZXI9IitvKSxoPSIiKToiVGlrVG9rIj09YS5jaGFubmVsX3R5cGUmJihvPXAodC50cmltKGUudmFsdWUpLCJAIiksbz0iaHR0cHM6Ly93d3cudGlrdG9rLmNvbS9AIitvLGg9IiIpO3JldHVybiI8YSBocmVmPSciK28rIicgdGFyZ2V0PSciK2grIic+PHNwYW4gY2xhc3M9J2NoYXR5LWFnZW50LWljb24nPiIraSsiPC9zcGFuPjxzcGFuIGNsYXNzPSdjaGF0eS1hZ2VudC10aXRsZSc+IitzKyI8L3NwYW4+PC9hPiJ9ZnVuY3Rpb24geSh0KXtyZXR1cm4gdD1wKHQsIisiKSx0PXQucmVwbGFjZSgvIC9nLCIiKSx0PXQucmVwbGFjZSgvLS9nLCIiKSx0PXQucmVwbGFjZSgvXy9nLCIiKX1mdW5jdGlvbiBwKGUsYSl7Zm9yKGU9dC50cmltKGUpO2UuY2hhckF0KDApPT1hOyllPWUuc3Vic3RyaW5nKDEpO2Zvcig7ZS5jaGFyQXQoZS5sZW5ndGgtMSk9PWE7KWU9ZS5zdWJzdHJpbmcoMCxlLmxlbmd0aC0xKTtyZXR1cm4gZX1mdW5jdGlvbiB1KGUsYSxuLGMpe3ZhciBpPSIiO2lmKFAoZS5pc19hZ2VudCkpZS51cmw9ImphdmFzY3JpcHQ6OyIsZS50YXJnZXQ9IiI7ZWxzZSBpZigiV2hhdHNhcHAiPT1lLmNoYW5uZWxfdHlwZSlpZihQKGUuaGFzX3dlbGNvbWVfbWVzc2FnZSkmJiFfKGUuY2hhdF93ZWxjb21lX21lc3NhZ2UpKWUudXJsPSJqYXZhc2NyaXB0OjsiLGUudGFyZ2V0PSIiLGkrPSIgaGFzLWNoYXR5LWJveCBjaGF0eS13aGF0c2FwcC1mb3JtIixtKGUsYyk7ZWxzZXt2YXIgcz0iIjtpZighXyhlLnByZV9zZXRfbWVzc2FnZSkpe3M9ZGVjb2RlVVJJKGUucHJlX3NldF9tZXNzYWdlKTt2YXIgbz10KCJ0aXRsZSIpLnRleHQoKTtzPV8obyk/cy5yZXBsYWNlKC97dGl0bGV9L2csIiIpOnMucmVwbGFjZSgve3RpdGxlfS9nLG8pLHM9cy5yZXBsYWNlKC97dXJsfS9nLHdpbmRvdy5sb2NhdGlvbikscz1lbmNvZGVVUklDb21wb25lbnQocyl9Sz8oZS50YXJnZXQ9IiIsZS51cmw9Imh0dHBzOi8vd2EubWUvIitlLnZhbHVlKyI/dGV4dD0iK3MpOihlLnRhcmdldD0iX2JsYW5rIixQKGUuaXNfdXNlX3dlYl92ZXJzaW9uKT9lLnVybD0iaHR0cHM6Ly93YS5tZS8iK2UudmFsdWUrIj90ZXh0PSIrczplLnVybD0iaHR0cHM6Ly93ZWIud2hhdHNhcHAuY29tLz9waG9uZT0iK2UudmFsdWUrIiZ0ZXh0PSIrcyl9ZWxzZSBpZigiV2VDaGF0Ij09ZS5jaGFubmVsX3R5cGUpXyhlLnFyX2NvZGVfaW1hZ2VfdXJsKXx8KHcoZSxjKSxlLnVybD0iamF2YXNjcmlwdDo7IixlLnRhcmdldD0iIixpKz0iIGhhcy1jaGF0eS1ib3ggY2hhdHktcXItY29kZS1mb3JtIik7ZWxzZSBpZigiQ29udGFjdF9VcyI9PWUuY2hhbm5lbF90eXBlKWYoZSxjKSxlLnVybD0iamF2YXNjcmlwdDo7IixlLnRhcmdldD0iIixpKz0iIGhhcy1jaGF0eS1ib3ggY2hhdHktY29udGFjdC11cy1mb3JtIjtlbHNlIGlmKCJFbWFpbCI9PWUuY2hhbm5lbF90eXBlKXtpZighXyhlLm1haWxfc3ViamVjdCkpe3ZhciBoPWRlY29kZVVSSShlLm1haWxfc3ViamVjdCksbz10KCJ0aXRsZSIpLnRleHQoKTtoPV8obyk/aC5yZXBsYWNlKC97dGl0bGV9L2csIiIpOmgucmVwbGFjZSgve3RpdGxlfS9nLG8pLGg9aC5yZXBsYWNlKC97dXJsfS9nLHdpbmRvdy5sb2NhdGlvbiksaD1lbmNvZGVVUklDb21wb25lbnQoaCksZS51cmwrPSI/c3ViamVjdD0iK2h9fWVsc2UiVmliZXIiPT1lLmNoYW5uZWxfdHlwZT8oZS52YWx1ZT1wKGUudmFsdWUsIisiKSxLJiYhaXNOYU4oZS52YWx1ZSkmJm5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goLyhpUG9kfGlQaG9uZXxpUGFkKS8pJiYoZS52YWx1ZT0iKyIrZS52YWx1ZSksZS51cmw9InZpYmVyOi8vY2hhdD9udW1iZXI9IitlLnZhbHVlLGUudGFyZ2V0PSIiKToiVmtvbnRha3RlIj09ZS5jaGFubmVsX3R5cGUmJihlLnVybD0iaHR0cHM6Ly92ay5tZS8iK3QudHJpbShlLnZhbHVlKSk7dmFyIHI9IiI7cmV0dXJuIF8oZS5jbGlja19ldmVudCl8fChyPSdvbmNsaWNrPSInK2UuY2xpY2tfZXZlbnQrJyInLGUudGFyZ2V0PSIiLGUudXJsPSJqYXZhc2NyaXB0OjsiKSwiPGEgaHJlZj0nIitlLnVybCsiJyAiK3IrIiB0YXJnZXQ9JyIrZS50YXJnZXQrIicgY2xhc3M9J2NoYXR5LXRvb2x0aXAgcG9zLSIrbitpKyInIGRhdGEtZm9ybT0nY2hhdHktZm9ybS0iK2MrIi0iK2UuY2hhbm5lbF90eXBlKyInIGRhdGEtaG92ZXI9JyIrZS5ob3Zlcl90ZXh0KyInPiIrYSsiPC9hPiJ9ZnVuY3Rpb24gZihlLGEpe3ZhciBuPSIiLGM9dihhKTtudWxsPT1jJiYoYz0tMSksbis9IjxkaXYgc3R5bGU9J2Rpc3BsYXk6bm9uZTsnIGNsYXNzPSdjaGF0eS1vdXRlci1mb3JtcyBjaGF0eS1jb250YWN0LWZvcm0tYm94IGNoYXR5LWZvcm0tIithKyInIGRhdGEtY2hhbm5lbD0nIitlLmNoYW5uZWxfdHlwZSsiJyBpZD0nY2hhdHktZm9ybS0iK2ErIi0iK2UuY2hhbm5lbF90eXBlKyInIGRhdGEtd2lkZ2V0PSciK2ErIicgZGF0YS1pbmRleD0nIitjKyInPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LWZvcm0nPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LWZvcm0tYm9keSc+IixuKz0iPGRpdiByb2xlPSdidXR0b24nIGNsYXNzPSdjbG9zZS1jaGF0eS1mb3JtJz48ZGl2IGNsYXNzPSdjaGF0eS1jbG9zZS1idXR0b24nPjwvZGl2PjwvZGl2PiIsbis9Ijxmb3JtIGNsYXNzPSdjaGF0eS1hamF4LWNvbnRhY3QtZm9ybScgaWQ9J2NoYXR5LWFqYXgtY29udGFjdC1mb3JtLSIrYysiJyBtZXRob2Q9J3Bvc3QnIGRhdGEtY2hhbm5lbD0nIitlLmNoYW5uZWxfdHlwZSsiJyBkYXRhLXdpZGdldD0nIithKyInIGRhdGEtdG9rZW49JyIrZS53aWRnZXRfdG9rZW4rIicgZGF0YS1pbmRleD0nIitlLndpZGdldF9pbmRleCsiJz4iLG4rPSI8ZGl2IGNsYXNzPSdjaGF0eS1jb250YWN0LWZvcm0tYm9keSc+IixuKz0iPGRpdiBjbGFzcz0nY2hhdHktY29udGFjdC1mb3JtLXRpdGxlJz4iK2UuY29udGFjdF9mb3JtX3NldHRpbmdzLmNvbnRhY3RfZm9ybV90aXRsZSsiPC9kaXY+IixuKz0iPGRpdiBjbGFzcz0nY2hhdHktY29udGFjdC1pbnB1dHMnPiIsdC5lYWNoKGUuY29udGFjdF9maWVsZHMsZnVuY3Rpb24odCxlKXtuKz0iPGRpdiBjbGFzcz0nY2hhdHktY29udGFjdC1pbnB1dCc+Ijt2YXIgYz1QKGUuaXNfcmVxdWlyZWQpPyJpcy1yZXF1aXJlZCI6IiI7bis9InRleHRhcmVhIj09ZS50eXBlPyI8dGV4dGFyZWEgdHlwZT0nIitlLnR5cGUrIicgY2xhc3M9J2NoYXR5LXRleHRhcmVhLWZpZWxkICIrYysiIGZpZWxkLSIrZS5maWVsZCsiJyBwbGFjZWhvbGRlcj0nIitlLnBsYWNlaG9sZGVyKyInIG5hbWU9JyIrZS5maWVsZCsiJyBpZD0nIitlLmZpZWxkKyItIithKyInID48L3RleHRhcmVhPiI6IjxpbnB1dCB0eXBlPSciK2UudHlwZSsiJyBjbGFzcz0nY2hhdHktaW5wdXQtZmllbGQgIitjKyIgZmllbGQtIitlLmZpZWxkKyInIHBsYWNlaG9sZGVyPSciK2UucGxhY2Vob2xkZXIrIicgbmFtZT0nIitlLmZpZWxkKyInIGlkPSciK2UuZmllbGQrIi0iK2ErIicgLz4iLG4rPSI8L2Rpdj4ifSksbis9IjxkaXYgY2xhc3M9J2NoYXR5LWNvbnRhY3QtZm9ybS1idXR0b24nPjxidXR0b24gdHlwZT0nc3VibWl0JyBpZD0nY2hhdHktc3VibWl0LWJ1dHRvbi0iK2ErIicgY2xhc3M9J2NoYXR5LXN1Ym1pdC1idXR0b24nPiIrZS5jb250YWN0X2Zvcm1fc2V0dGluZ3MuYnV0dG9uX3RleHQrIjwvYnV0dG9uPjwvZGl2PiIsbis9IjwvZGl2PiIsbis9IjwvZGl2PiIsbis9IjwvZm9ybT4iLG4rPSI8L2Rpdj4iLG4rPSI8L2Rpdj4iLG4rPSI8L2Rpdj4iLHQoImJvZHkiKS5hcHBlbmQobil9ZnVuY3Rpb24gbShlLGEpe3ZhciBuPSIiLGM9dihhKTtudWxsPT1jJiYoYz0tMSk7dmFyIGk9Imh0dHBzOi8vd2ViLndoYXRzYXBwLmNvbS9zZW5kIixzPSIiO2lmKEs/aT0iaHR0cHM6Ly93YS5tZS8iK2UudmFsdWU6KGk9UChlLmlzX3VzZV93ZWJfdmVyc2lvbik/Imh0dHBzOi8vd2ViLndoYXRzYXBwLmNvbS9zZW5kIjoiaHR0cHM6Ly93YS5tZS8iK2UudmFsdWUscz0iX2JsYW5rIiksbis9IjxkaXYgc3R5bGU9J2Rpc3BsYXk6bm9uZTsnIGNsYXNzPSdjaGF0eS1vdXRlci1mb3JtcyBjaGF0eS13aGF0c2FwcC1mb3JtIGNoYXR5LWZvcm0tIithKyInIGRhdGEtY2hhbm5lbD0nIitlLmNoYW5uZWxfdHlwZSsiJyBpZD0nY2hhdHktZm9ybS0iK2ErIi0iK2UuY2hhbm5lbF90eXBlKyInIGRhdGEtd2lkZ2V0PSciK2ErIicgZGF0YS1pbmRleD0nIitjKyInPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LXdoYXRzYXBwLWZvcm0nPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LXdoYXRzYXBwLWJvZHknPiIsbis9IjxkaXYgcm9sZT0nYnV0dG9uJyBjbGFzcz0nY2xvc2UtY2hhdHktZm9ybSBpcy13aGF0c2FwcC1idG4nPjxkaXYgY2xhc3M9J2NoYXR5LWNsb3NlLWJ1dHRvbic+PC9kaXY+PC9kaXY+IixuKz0iPGRpdiBjbGFzcz0nY2hhdHktd2hhdHNhcHAtbWVzc2FnZSc+PC9kaXY+IixuKz0iPC9kaXY+IixuKz0iPGRpdiBjbGFzcz0nY2hhdHktd2hhdHNhcHAtZm9vdGVyJz4iLG4rPSI8Zm9ybSBhY3Rpb249JyIraSsiJyB0YXJnZXQ9JyIrcysiJyBjbGFzcz0nd2hhdHNhcHAtY2hhdHktZm9ybSAiKyhQKGUuaXNfZGVmYXVsdF9vcGVuKT8iYWRkLWFuYWx5dGljcyI6IiIpKyInIGRhdGEtd2lkZ2V0PSciK2ErIicgZGF0YS1jaGFubmVsPSciK2UuY2hhbm5lbF90eXBlKyInPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LXdoYXRzYXBwLWRhdGEnPiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LXdoYXRzYXBwLWZpZWxkJz4iLG4rPSI8aW5wdXQgbmFtZT0ndGV4dCcgdHlwZT0ndGV4dCcgY2xhc3M9J2NzYXNzLXdoYXRzYXBwLWlucHV0JyAvPiIsbis9IjwvZGl2PiIsbis9IjxkaXYgY2xhc3M9J2NoYXR5LXdoYXRzYXBwLWJ1dHRvbic+IixuKz0iPGJ1dHRvbiB0eXBlPSdzdWJtaXQnID4iLG4rPSI8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDI0IDI0JyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnPjxwYXRoIGZpbGw9JyNmZmZmZmYnIGQ9J00xLjEwMSAyMS43NTdMMjMuOCAxMi4wMjggMS4xMDEgMi4zbC4wMTEgNy45MTIgMTMuNjIzIDEuODE2LTEzLjYyMyAxLjgxNy0uMDExIDcuOTEyeic+PC9wYXRoPjwvc3ZnPiIsbis9IjwvYnV0dG9uPiIsbis9IjwvZGl2PiIsbis9IjwvZGl2PiIsIUsmJlAoZS5pc191c2Vfd2ViX3ZlcnNpb24pJiYobis9IjxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J3Bob25lJyB2YWx1ZT0nIitlLnZhbHVlKyInIC8+Iiksbis9IjwvZm9ybT4iLG4rPSI8L2Rpdj4iLG4rPSI8L2Rpdj4iLG4rPSI8L2Rpdj4iLHQoImJvZHkiKS5hcHBlbmQobiksdCgiI2NoYXR5LWZvcm0tIithKyItIitlLmNoYW5uZWxfdHlwZSsiIC5jaGF0eS13aGF0c2FwcC1tZXNzYWdlIikuaHRtbChlLmNoYXRfd2VsY29tZV9tZXNzYWdlKSwhXyhlLnByZV9zZXRfbWVzc2FnZSkpe3ZhciBvPWUucHJlX3NldF9tZXNzYWdlLGg9dCgidGl0bGUiKS50ZXh0KCk7bz1fKGgpP28ucmVwbGFjZSgve3RpdGxlfS9nLCIiKTpvLnJlcGxhY2UoL3t0aXRsZX0vZyxoKSxvPW8ucmVwbGFjZSgve3VybH0vZyx3aW5kb3cubG9jYXRpb24pLHQoIiNjaGF0eS1mb3JtLSIrYSsiLSIrZS5jaGFubmVsX3R5cGUrIiAuY3Nhc3Mtd2hhdHNhcHAtaW5wdXQiKS52YWwobyl9dCgiI2NoYXR5LWZvcm0tIithKyItIitlLmNoYW5uZWxfdHlwZSkuc2hvdygpfWZ1bmN0aW9uIHYoZSl7dmFyIGE9bnVsbDtyZXR1cm4gWS5sZW5ndGgmJnQuZWFjaChZLGZ1bmN0aW9uKHQsbil7bi5pZD09ZSYmKGE9dCl9KSxhfWZ1bmN0aW9uIHcoZSxhKXt2YXIgbj0iIixjPXYoYSk7bnVsbD09YyYmKGM9LTEpLG4rPSI8ZGl2IHN0eWxlPSdkaXNwbGF5Om5vbmU7JyBjbGFzcz0nY2hhdHktb3V0ZXItZm9ybXMgY2hhdHktZm9ybS0iK2ErIicgZGF0YS1jaGFubmVsPSciK2UuY2hhbm5lbF90eXBlKyInIGlkPSdjaGF0eS1mb3JtLSIrYSsiLSIrZS5jaGFubmVsX3R5cGUrIicgZGF0YS13aWRnZXQ9JyIrYSsiJyBkYXRhLWluZGV4PSciK2MrIic+IixuKz0iPGRpdiBjbGFzcz0nY2hhdHktZm9ybSc+IixuKz0iPGRpdiBjbGFzcz0nY2hhdHktZm9ybS1ib2R5Jz4iLG4rPSI8ZGl2IHJvbGU9J2J1dHRvbicgY2xhc3M9J2Nsb3NlLWNoYXR5LWZvcm0gaXMtd2hhdHNhcHAtYnRuJz48ZGl2IGNsYXNzPSdjaGF0eS1jbG9zZS1idXR0b24nPjwvZGl2PjwvZGl2PiIsbis9IjxkaXYgY2xhc3M9J3FyLWNvZGUtaW1hZ2UnPjxpbWcgc3JjPSciK2UucXJfY29kZV9pbWFnZV91cmwrIicgYWx0PSciK2UudGl0bGUrIicgLz48L2Rpdj4iLG4rPSI8L2Rpdj4iLG4rPSI8L2Rpdj4iLG4rPSI8L2Rpdj4iLHQoImJvZHkiKS5hcHBlbmQobil9ZnVuY3Rpb24gXyhlKXtyZXR1cm4gbnVsbD09ZXx8IiI9PWV8fCIiPT10LnRyaW0oZSk/ITA6ITF9ZnVuY3Rpb24gYih0KXtyZXR1cm4iIiE9dC5jdXN0b21faW1hZ2VfdXJsJiYibnVsbCIhPXQuY3VzdG9tX2ltYWdlX3VybD8iPHNwYW4gY2xhc3M9J2NoYXR5LWljb24gY2hhbm5lbC1pY29uLSIrdC5jaGFubmVsX3R5cGUrIic+PHNwYW4gY2xhc3M9J2NoYXR5LXN2ZyBjaGF0eS1zdmctaW1nJz48aW1nIHNyYz0nIit0LmN1c3RvbV9pbWFnZV91cmwrIicgYWx0PSciK3QuaG92ZXJfdGV4dCsiJyAvPjwvc3Bhbj48L3NwYW4+IjoiPHNwYW4gY2xhc3M9J2NoYXR5LWljb24gY2hhbm5lbC1pY29uLSIrdC5jaGFubmVsX3R5cGUrIic+PHNwYW4gY2xhc3M9J2NoYXR5LXN2Zyc+Iit0LnN2Z19pY29uKyI8L3NwYW4+PC9zcGFuPiJ9ZnVuY3Rpb24geChlKXtyZXR1cm4iIj09ZXx8IiI9PXQudHJpbShlKXx8bnVsbD09ZXx8Im51bGwiPT1lPyEwOiExfWZ1bmN0aW9uIEModCl7cmV0dXJuImN1c3RvbSI9PXQucG9zaXRpb24/dC5jdXN0b21fcG9zaXRpb246dC5wb3NpdGlvbn1mdW5jdGlvbiBrKHQpe2lmKCJ2ZXJ0aWNhbCIhPXQuc2V0dGluZ3MuaWNvbl92aWV3KXJldHVybiJ0b3AiO3ZhciBlPUModC5zZXR0aW5ncyk7cmV0dXJuInJpZ2h0Ij09ZT8ibGVmdCI6InJpZ2h0In1mdW5jdGlvbiBJKCl7aWYodCgiLmNoYXR5LmF1dG8taGlkZS1jaGF0eSIpLmxlbmd0aCYmKEo9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtydCsrO3ZhciBlPXJ0O2lmKHQoIi5jaGF0eS5hdXRvLWhpZGUtY2hhdHkuaGlkZS1hZnRlci0iK3J0KS5sZW5ndGgpe3ZhciBhPXQoIi5jaGF0eS5hdXRvLWhpZGUtY2hhdHkuaGlkZS1hZnRlci0iK2UpLmRhdGEoImlkIik7dCgiLmNoYXR5LWZvcm0tIithKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksdCgiLmNoYXR5LmF1dG8taGlkZS1jaGF0eS5oaWRlLWFmdGVyLSIrZSkucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLHQoIiNjaGF0eS13aWRnZXQtMCIrYSkucmVtb3ZlQ2xhc3MoImF1dG8taGlkZS1jaGF0eSIpfTA9PXQoIi5jaGF0eS5hdXRvLWhpZGUtY2hhdHkiKS5sZW5ndGgmJmNsZWFySW50ZXJ2YWwoSil9LDFlMykpLGV0JiYoWD1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2lmKHN0KyssdCgiLmNoYXR5LmRlbGF5LXRpbWUtIitzdCkubGVuZ3RoKXt2YXIgZT10KCIuY2hhdHkuZGVsYXktdGltZS0iK3N0KS5kYXRhKCJpZCIpO1QoZSl9fSwxZTMpKSxudCl7dCh3aW5kb3cpLm9uKCJzY3JvbGwiLGZ1bmN0aW9uKCl7aWYobnQpe3ZhciBlPXQoZG9jdW1lbnQpLmhlaWdodCgpLXQod2luZG93KS5oZWlnaHQoKSxhPXQod2luZG93KS5zY3JvbGxUb3AoKTtpZigwIT1lKXt2YXIgbj1wYXJzZUludChhL2UqMTAwKTtpZihuPj1vdCl7dmFyIGM9b3Q7b3Q9bjtmb3IodmFyIGk9YztuPj1pO2krKyktMT09dC5pbkFycmF5KGksaXQpJiZ0KCIuY2hhdHkub24tY2hhdHktc2Nyb2xsLnBhZ2Utc2Nyb2xsLSIraSkubGVuZ3RoJiZ0KCIuY2hhdHkub24tY2hhdHktc2Nyb2xsLnBhZ2Utc2Nyb2xsLSIraSkuZWFjaChmdW5jdGlvbigpe3ZhciBlPXQodGhpcykuZGF0YSgiaWQiKTt0KHRoaXMpLnJlbW92ZUNsYXNzKCJvbi1jaGF0eS1zY3JvbGwiKSxUKGUpfSk7b3Q9bn19fX0pO3dpbmRvdy5pbm5lcldpZHRoPmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aH19ZnVuY3Rpb24gaigpe2Z1bmN0aW9uIGUoKXtpZihjdCl7dmFyIHQ9bG9jYXRpb24uaGFzaCxlPXQuc3BsaXQoIiMhLyIpLGE9ZVsxXTtpZigiIiE9PWEpe3ZhciBuPXdpbmRvdy5sb2NhdGlvbi5oYXNoOyIiPT09biYmTSgpfX19aWYod2luZG93Lmhpc3RvcnkmJndpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZSYmY3Qpe3ZhciBhPTEwMDt3aW5kb3cuaGlzdG9yeS5zdGF0ZSYmd2luZG93Lmhpc3Rvcnkuc3RhdGUucGFnZSYmKGE9d2luZG93Lmhpc3Rvcnkuc3RhdGUucGFnZSksd2luZG93Lmhpc3RvcnkucHVzaFN0YXRlKHtwYWdlOmErMX0sIiIpLHdpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZSh7cGFnZTphKzJ9LCIiKSx3aW5kb3cub25wb3BzdGF0ZT1mdW5jdGlvbigpe2UoKX0sd2luZG93Lmhpc3Rvcnkub25wb3BzdGF0ZT1mdW5jdGlvbigpe2UoKX0sd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIixmdW5jdGlvbigpe2UoKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImJhY2tidXR0b24iLGZ1bmN0aW9uKCl7ZSgpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImJhY2tidXR0b24iLGZ1bmN0aW9uKCl7ZSgpfSksdCh3aW5kb3cpLm9uKCJwb3BzdGF0ZSIsZnVuY3Rpb24oKXtlKCl9KX19ZnVuY3Rpb24gUygpe0s/aigpOnQoZG9jdW1lbnQpLm1vdXNlbGVhdmUoZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSh0LGUsYSl7dC5hZGRFdmVudExpc3RlbmVyPyh0LmFkZEV2ZW50TGlzdGVuZXIoZSxhLCExKSxNKCkpOnQuYXR0YWNoRXZlbnQmJnQuYXR0YWNoRXZlbnQoIm9uIitlLGEpfWUoZG9jdW1lbnQsIm1vdXNlb3V0IixmdW5jdGlvbih0KXtudWxsPT10LnRvRWxlbWVudCYmbnVsbD09dC5yZWxhdGVkVGFyZ2V0JiZNKCl9KX0pfWZ1bmN0aW9uIE0oKXtjdCYmdCgiLm9uLWNoYXR5LWV4aXQtaW50ZW50IikubGVuZ3RoJiZ0KCIub24tY2hhdHktZXhpdC1pbnRlbnQiKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKS5kYXRhKCJpZCIpO3QodGhpcykucmVtb3ZlQ2xhc3MoIm9uLWNoYXR5LWV4aXQtaW50ZW50IiksVChlKSx0KCIjY2hhdHktd2lkZ2V0LSIrZSsiIC5jaGF0eS13aWRnZXQiKS5hcHBlbmQoIjxkaXYgY2xhc3M9J2NoYXR5LWV4aXQtaW50ZW50Jz48L2Rpdj4iKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dCgiLmNoYXR5LWV4aXQtaW50ZW50IikuYWRkQ2xhc3MoImFuaW1hdGUiKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dCgiLmNoYXR5LWV4aXQtaW50ZW50IikucmVtb3ZlQ2xhc3MoImFuaW1hdGUiKX0sMjUwMCl9LDUwMCl9KX1mdW5jdGlvbiBUKGUpe28oZSksdCgiLmNoYXR5LXdpZGdldC0iK2UpLnJlbW92ZUNsYXNzKCJvbi1jaGF0eS1kZWxheSIpLHQoIi5jaGF0eS13aWRnZXQtIitlKS5yZW1vdmVDbGFzcygib24tY2hhdHktZXhpdC1pbnRlbnQiKSx0KCIuY2hhdHktd2lkZ2V0LSIrZSkucmVtb3ZlQ2xhc3MoIm9uLWNoYXR5LXNjcm9sbCIpLHQoIi5jaGF0eS5vbi1jaGF0eS1kZWxheSIpLmxlbmd0aHx8KGNsZWFySW50ZXJ2YWwoWCksZXQ9ITEpLHQoIi5jaGF0eS5vbi1jaGF0eS1leGl0LWludGVudCIpLmxlbmd0aHx8KGN0PSExKSx0KCIuY2hhdHkub24tY2hhdHktc2Nyb2xsIikubGVuZ3RofHwobnQ9ITEpfWZ1bmN0aW9uIHooKXt0KCIuY2hhdHktdG9vbHRpcCIpLmVhY2goZnVuY3Rpb24oKXsiIj09dCh0aGlzKS5kYXRhKCJob3ZlciIpJiZ0KHRoaXMpLnJlbW92ZUNsYXNzKCJsZWZ0IikucmVtb3ZlQ2xhc3MoInJpZ2h0IikucmVtb3ZlQ2xhc3MoInRvcCIpLnJlbW92ZUNsYXNzKCJjaGF0eS10b29sdGlwIil9KX1mdW5jdGlvbiBGKHQsZSl7cmV0dXJuIiI9PXQud2lkZ2V0X2ljb24/dC53aWRnZXRfaWNvbj0iY2hhdC1iYXNlIjoiY2hhdC1pbWFnZSI9PXQud2lkZ2V0X2ljb24mJl8odC53aWRnZXRfaWNvbl91cmwpJiYodC53aWRnZXRfaWNvbj0iY2hhdC1iYXNlIiksImNoYXQtaW1hZ2UiPT10LndpZGdldF9pY29uPyI8c3BhbiBjbGFzcz0nY2hhdHktc3ZnJyBzdHlsZT0nYmFja2dyb3VuZC1jb2xvcjogIit0LndpZGdldF9jb2xvcisiJz48aW1nIHNyYz0nIit0LndpZGdldF9pY29uX3VybCsiJyBhbHQ9J0NoYXR5IFdpZGdldCcgLz48L3NwYW4+IjonPHNwYW4gY2xhc3M9ImNoYXR5LXN2ZyI+JytyKHQud2lkZ2V0X2ljb24sdC53aWRnZXRfY29sb3IpKyI8L3NwYW4+In1mdW5jdGlvbiBBKGUsYSl7dmFyIG49UShhLCJjLXdpZGdldCIpO24mJiJub25lIiE9ZS5hdHRlbnRpb25fZWZmZWN0JiYiIiE9ZS5hdHRlbnRpb25fZWZmZWN0JiYodCgiI2NoYXR5LXdpZGdldC0iK2EpLmF0dHIoImRhdGEtYW5pbWF0aW9uIixlLmF0dGVudGlvbl9lZmZlY3QpLHQoIiNjaGF0eS13aWRnZXQtIithKyIgLmNoYXR5LXdpZGdldCIpLmhhc0NsYXNzKCJoYXMtc2luZ2xlIik/dCgiI2NoYXR5LXdpZGdldC0iK2ErIiAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jaGFubmVsIC5jaGF0eS1zdmciKS5hZGRDbGFzcygiY2hhdHktYW5pbWF0aW9uLSIrZS5hdHRlbnRpb25fZWZmZWN0KTp0KCIjY2hhdHktd2lkZ2V0LSIrYSsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWN0YS1tYWluIC5jaGF0eS1jdGEtYnV0dG9uIikuYWRkQ2xhc3MoImNoYXR5LWFuaW1hdGlvbi0iK2UuYXR0ZW50aW9uX2VmZmVjdCkpfWZ1bmN0aW9uIFUoZSxhKXt2YXIgbj1RKGEsImMtd2lkZ2V0Iik7biYmUChlLmlzX3BlbmRpbmdfbWVzZ19lbmFibGVkKSYmcGFyc2VJbnQoZS5wZW5kaW5nX21lc2dfY291bnQpPjAmJih0KCIjY2hhdHktd2lkZ2V0LSIrYSsiIC5jaGF0eS13aWRnZXQiKS5oYXNDbGFzcygiaGFzLXNpbmdsZSIpPyJzaGVlbiI9PWUuYXR0ZW50aW9uX2VmZmVjdHx8InNwaW4iPT1lLmF0dGVudGlvbl9lZmZlY3R8fCJwdWxzZSI9PWUuYXR0ZW50aW9uX2VmZmVjdD90KCIjY2hhdHktd2lkZ2V0LSIrYSsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWNoYW5uZWwiKS5hcHBlbmQoIjxzcGFuIGNsYXNzPSdjaC1wZW5kaW5nLW1zZyc+IitlLnBlbmRpbmdfbWVzZ19jb3VudCsiPC9zcGFuPiIpOnQoIiNjaGF0eS13aWRnZXQtIithKyIgLmNoYXR5LWktdHJpZ2dlciAuY2hhdHktY2hhbm5lbCAuY2hhdHktc3ZnIikuYXBwZW5kKCI8c3BhbiBjbGFzcz0nY2gtcGVuZGluZy1tc2cnPiIrZS5wZW5kaW5nX21lc2dfY291bnQrIjwvc3Bhbj4iKToianVtcCI9PWUuYXR0ZW50aW9uX2VmZmVjdHx8IndhZ2dsZSI9PWUuYXR0ZW50aW9uX2VmZmVjdHx8ImJsaW5rIj09ZS5hdHRlbnRpb25fZWZmZWN0fHwicHVsc2UtaWNvbiI9PWUuYXR0ZW50aW9uX2VmZmVjdD90KCIjY2hhdHktd2lkZ2V0LSIrYSsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWN0YS1tYWluIC5jaGF0eS1jdGEtYnV0dG9uIikuYXBwZW5kKCI8c3BhbiBjbGFzcz0nY2gtcGVuZGluZy1tc2cnPiIrZS5wZW5kaW5nX21lc2dfY291bnQrIjwvc3Bhbj4iKTp0KCIjY2hhdHktd2lkZ2V0LSIrYSsiIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWN0YS1tYWluIikuYXBwZW5kKCI8c3BhbiBjbGFzcz0nY2gtcGVuZGluZy1tc2cnPiIrZS5wZW5kaW5nX21lc2dfY291bnQrIjwvc3Bhbj4iKSl9ZnVuY3Rpb24gQih0KXtmb3IodD10LnRvU3RyaW5nKCk7dC5sZW5ndGg8MjspdD0iMCIrdDtyZXR1cm4gdH1mdW5jdGlvbiBEKHQpe3ZhciBlPSEwO2lmKFAodC50cmlnZ2Vycy5oYXNfZGF5X2hvdXJzX3NjaGVkdWxpbmdfcnVsZXMpJiZ0LnRyaWdnZXJzLmRheV9ob3Vyc19zY2hlZHVsaW5nX3J1bGVzLmxlbmd0aD4wKXt2YXIgYT10LnRyaWdnZXJzLmRheV9ob3Vyc19zY2hlZHVsaW5nX3J1bGVzO2lmKGEubGVuZ3RoPjApe2U9ITE7dmFyIG49bmV3IERhdGU7bj1FKG4sdC50cmlnZ2Vycy5kYXlfdGltZV9kaWZmKTtmb3IodmFyIGM9bi5nZXRIb3VycygpLGk9bi5nZXRNaW51dGVzKCkscz1uLmdldERheSgpLG89MDtvPGEubGVuZ3RoO28rKyl7dmFyIGg9MCxyPTAsbD0wOy0xPT1hW29dLmRheXM/bD0xOmFbb10uZGF5cz49MCYmYVtvXS5kYXlzPD02P2Fbb10uZGF5cz09cyYmKGw9MSk6Nz09YVtvXS5kYXlzP3M+PTAmJjQ+PXMmJihsPTEpOjg9PWFbb10uZGF5cz9zPj0xJiY1Pj1zJiYobD0xKTo5PT1hW29dLmRheXMmJig1PT1zfHw2PT1zKSYmKGw9MSksMT09bCYmKGM+YVtvXS5zdGFydF9ob3VycyYmYzxhW29dLmVuZF9ob3Vycz9oPTE6Yz09YVtvXS5zdGFydF9ob3VycyYmYzxhW29dLmVuZF9ob3Vycz9pPj1hW29dLnN0YXJ0X21pbiYmKGg9MSk6Yz5hW29dLnN0YXJ0X2hvdXJzJiZjPT1hW29dLmVuZF9ob3Vycz9pPD1hW29dLmVuZF9taW4mJihoPTEpOmM9PWFbb10uc3RhcnRfaG91cnMmJmM9PWFbb10uZW5kX2hvdXJzJiZpPj1hW29dLnN0YXJ0X21pbiYmaTw9YVtvXS5lbmRfbWluJiYoaD0xKSwxPT1oJiZpPj1hW29dLnN0YXJ0X21pbiYmaTw9YVtvXS5lbmRfbWluJiYocj0xKSksMT09aCYmMT09bCYmKGU9MSksMT09ZSYmKG89YS5sZW5ndGgrMSl9fX1yZXR1cm4gZX1mdW5jdGlvbiBQKHQpe3JldHVybiIxIj09dHx8MT09dHx8MT09dHx8InRydWUiPT10fHwieWVzIj09dHx8Im9uIj09dD8hMDohMX1mdW5jdGlvbiBFKHQsZSl7aWYoaXNOYU4oZSkpe3ZhciBhPW5ldyBEYXRlKHQudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7dGltZVpvbmU6ZX0pKSxuPXQuZ2V0VGltZSgpLWEuZ2V0VGltZSgpO3JldHVybiBuZXcgRGF0ZSh0LmdldFRpbWUoKS1uKX12YXIgYz1uZXcgRGF0ZTtpZihjPWMudG9Mb2NhbGVTdHJpbmcoImVuLVVTIix7dGltZVpvbmU6IlVUQyJ9KSxjPW5ldyBEYXRlKGMpLC0xIT1lLmluZGV4T2YoIisiKSl7dmFyIGk9ZS5yZXBsYWNlKCIrIiwiIikscz1wYXJzZUludChpKSxvPTYwKnBhcnNlRmxvYXQoaSVzKTtvPWMuZ2V0VVRDTWludXRlcygpK28sbz41OSYmKHMrPXBhcnNlSW50KG8vNjApLG8lPTYwKSxjLnNldFVUQ0hvdXJzKGMuZ2V0VVRDSG91cnMoKStzLG8pfWVsc2UgaWYoLTEhPWUuaW5kZXhPZigiLSIpKXt2YXIgaT1lLnJlcGxhY2UoIi0iLCIiKSxzPXBhcnNlSW50KGkpLG89NjAqcGFyc2VGbG9hdChpJXMpO289Yy5nZXRVVENNaW51dGVzKCktbywwPm8mJihzLT1wYXJzZUludChvLzYwKSxvJT02MCksYy5zZXRVVENIb3VycyhjLmdldFVUQ0hvdXJzKCktcywtbyl9dmFyIG49dC5nZXRUaW1lKCktYy5nZXRUaW1lKCk7cmV0dXJuIG5ldyBEYXRlKHQuZ2V0VGltZSgpLW4pfWZ1bmN0aW9uIE4odCl7aWYodC50cmlnZ2Vycy5oYXNfZGF0ZV9zY2hlZHVsaW5nX3J1bGVzKXt2YXIgZT10LnRyaWdnZXJzLmRhdGVfc2NoZWR1bGluZ19ydWxlcy5zdGFydF9kYXRlX3RpbWUsYT10LnRyaWdnZXJzLmRhdGVfc2NoZWR1bGluZ19ydWxlcy5lbmRfZGF0ZV90aW1lLG49bmV3IERhdGU7bj1FKG4sdC50cmlnZ2Vycy50aW1lX2RpZmYpO3ZhciBjPW4uZ2V0RnVsbFllYXIoKSsiLSIrQihuLmdldE1vbnRoKCkrMSkrIi0iK0Iobi5nZXREYXRlKCkpKyIgIitCKG4uZ2V0SG91cnMoKSkrIjoiK0Iobi5nZXRNaW51dGVzKCkpKyI6IitCKG4uZ2V0U2Vjb25kcygpKTtyZXR1cm4iIj09YSYmYz49ZT8hMDoiIj09ZSYmYT49Yz8hMDoiIiE9ZSYmIiIhPWEmJmM+PWUmJmE+PWM/ITA6ITF9cmV0dXJuITB9ZnVuY3Rpb24gVyhlKXtyZXR1cm4gUChlLnRyaWdnZXJzLmhhc19jb3VudHJpZXMpJiYhXyhlLnRyaWdnZXJzLmNvdW50cmllcykmJmUudHJpZ2dlcnMuY291bnRyaWVzLmxlbmd0aCYmKFo9cSgpLCItIiE9WiYmLTE9PXQuaW5BcnJheShaLGUudHJpZ2dlcnMuY291bnRyaWVzKSk/ITE6ITB9ZnVuY3Rpb24gcSgpe3JldHVybiBaPSIiLCJ1bmRlZmluZWQiIT10eXBlb2YgU3RvcmFnZSYmbnVsbCE9d2luZG93LnNlc3Npb25TdG9yYWdlLmdldEl0ZW0oImNoYXR5X3VzZXJfY291bnRyeV9jb2RlIik/Wj13aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgiY2hhdHlfdXNlcl9jb3VudHJ5X2NvZGUiKTpWKCJjaGF0eV91c2VyX2NvdW50cnlfY29kZSIpJiYoWj1HKCJjaGF0eV91c2VyX2NvdW50cnlfY29kZSIpKSxafWZ1bmN0aW9uIEwodCl7InVuZGVmaW5lZCIhPXR5cGVvZiBTdG9yYWdlP251bGw9PXdpbmRvdy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCJjaGF0eV91c2VyX2NvdW50cnlfY29kZSIpJiZ3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgiY2hhdHlfdXNlcl9jb3VudHJ5X2NvZGUiLHQpOlYoImNoYXR5X3VzZXJfY291bnRyeV9jb2RlIil8fFIoImNoYXR5X3VzZXJfY291bnRyeV9jb2RlIix0LDM2NSl9ZnVuY3Rpb24gTyh0LGUpe3ZhciBhPUcoImNoYXR5V2lkZ2V0XyIrdCksbj1bXTtpZihudWxsIT1hJiYiIiE9YSYmKG49SlNPTi5wYXJzZShhKSksbi5sZW5ndGg+MClmb3IodmFyIGM9MDtjPG4ubGVuZ3RoO2MrKylpZihuW2NdLms9PWUpcmV0dXJuIG5bY10udjtyZXR1cm4gbnVsbH1mdW5jdGlvbiBIKHQsZSl7dmFyIGE9RygiY2hhdHlXaWRnZXRfIit0KSxuPVtdO251bGwhPWEmJiIiIT1hJiYobj1KU09OLnBhcnNlKGEpKTt2YXIgYz0hMTtpZihuLmxlbmd0aD4wKWZvcih2YXIgaT0wO2k8bi5sZW5ndGg7aSsrKW5baV0uaz09ZSYmKGM9ITAsbltpXS52PW5ldyBEYXRlKTtjfHxuLnB1c2goe2s6ZSx2Om5ldyBEYXRlfSksYT1KU09OLnN0cmluZ2lmeShuKSxSKCJjaGF0eVdpZGdldF8iK3QsYSwiNyIpfWZ1bmN0aW9uIFEodCxlKXt2YXIgYT1PKHQsZSk7aWYobnVsbCE9YSYmIiIhPWEpe2E9bmV3IERhdGUoYSk7dmFyIG49TWF0aC5hYnMobmV3IERhdGUtYSksYz1NYXRoLmZsb29yKG4vODY0ZTUpO3JldHVybiBjPj0yPyEwOiExfXJldHVybiEwfWZ1bmN0aW9uIFIodCxlLGEpe3ZhciBuPW5ldyBEYXRlO24uc2V0VGltZShuLmdldFRpbWUoKSsyNCphKjYwKjYwKjFlMyk7dmFyIGM9ImV4cGlyZXM9IituLnRvVVRDU3RyaW5nKCk7ZG9jdW1lbnQuY29va2llPXQrIj0iK2UrIjsgIitjKyI7IHBhdGg9LzsgU2FtZVNpdGU9TGF4In1mdW5jdGlvbiBHKHQpe2Zvcih2YXIgdD10KyI9IixlPWRvY3VtZW50LmNvb2tpZS5zcGxpdCgiOyIpLGE9MDthPGUubGVuZ3RoO2ErKyl7Zm9yKHZhciBuPWVbYV07IiAiPT1uLmNoYXJBdCgwKTspbj1uLnN1YnN0cmluZygxKTtpZigwPT1uLmluZGV4T2YodCkpcmV0dXJuIG4uc3Vic3RyaW5nKHQubGVuZ3RoLG4ubGVuZ3RoKX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBWKHQpe3ZhciBlPUcodCk7cmV0dXJuIiIhPWUmJm51bGwhPT1lPyEwOiExfXZhciBYLEosWT1bXSxaPSIiLEs9LyhhbmRyb2lkfGJiXGQrfG1lZWdvKS4rbW9iaWxlfGF2YW50Z298YmFkYVwvfGJsYWNrYmVycnl8YmxhemVyfGNvbXBhbHxlbGFpbmV8ZmVubmVjfGhpcHRvcHxpZW1vYmlsZXxpcChob25lfG9kKXxpcGFkfGlyaXN8a2luZGxlfEFuZHJvaWR8U2lsa3xsZ2UgfG1hZW1vfG1pZHB8bW1wfG5ldGZyb250fG9wZXJhIG0ob2J8aW4paXxwYWxtKCBvcyk/fHBob25lfHAoaXhpfHJlKVwvfHBsdWNrZXJ8cG9ja2V0fHBzcHxzZXJpZXMoNHw2KTB8c3ltYmlhbnx0cmVvfHVwXC4oYnJvd3NlcnxsaW5rKXx2b2RhZm9uZXx3YXB8d2luZG93cyAoY2V8cGhvbmUpfHhkYXx4aWluby9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl8fC8xMjA3fDYzMTB8NjU5MHwzZ3NvfDR0aHB8NTBbMS02XWl8Nzcwc3w4MDJzfGEgd2F8YWJhY3xhYyhlcnxvb3xzXC0pfGFpKGtvfHJuKXxhbChhdnxjYXxjbyl8YW1vaXxhbihleHxueXx5dyl8YXB0dXxhcihjaHxnbyl8YXModGV8dXMpfGF0dHd8YXUoZGl8XC1tfHIgfHMgKXxhdmFufGJlKGNrfGxsfG5xKXxiaShsYnxyZCl8YmwoYWN8YXopfGJyKGV8dil3fGJ1bWJ8YndcLShufHUpfGM1NVwvfGNhcGl8Y2N3YXxjZG1cLXxjZWxsfGNodG18Y2xkY3xjbWRcLXxjbyhtcHxuZCl8Y3Jhd3xkYShpdHxsbHxuZyl8ZGJ0ZXxkY1wtc3xkZXZpfGRpY2F8ZG1vYnxkbyhjfHApb3xkcygxMnxcLWQpfGVsKDQ5fGFpKXxlbShsMnx1bCl8ZXIoaWN8azApfGVzbDh8ZXooWzQtN10wfG9zfHdhfHplKXxmZXRjfGZseShcLXxfKXxnMSB1fGc1NjB8Z2VuZXxnZlwtNXxnXC1tb3xnbyhcLnd8b2QpfGdyKGFkfHVuKXxoYWllfGhjaXR8aGRcLShtfHB8dCl8aGVpXC18aGkocHR8dGEpfGhwKCBpfGlwKXxoc1wtY3xodChjKFwtfCB8X3xhfGd8cHxzfHQpfHRwKXxodShhd3x0Yyl8aVwtKDIwfGdvfG1hKXxpMjMwfGlhYyggfFwtfFwvKXxpYnJvfGlkZWF8aWcwMXxpa29tfGltMWt8aW5ub3xpcGFxfGlyaXN8amEodHx2KWF8amJyb3xqZW11fGppZ3N8a2RkaXxrZWppfGtndCggfFwvKXxrbG9ufGtwdCB8a3djXC18a3lvKGN8ayl8bGUobm98eGkpfGxnKCBnfFwvKGt8bHx1KXw1MHw1NHxcLVthLXddKXxsaWJ3fGx5bnh8bTFcLXd8bTNnYXxtNTBcL3xtYSh0ZXx1aXx4byl8bWMoMDF8MjF8Y2EpfG1cLWNyfG1lKHJjfHJpKXxtaShvOHxvYXx0cyl8bW1lZnxtbygwMXwwMnxiaXxkZXxkb3x0KFwtfCB8b3x2KXx6eil8bXQoNTB8cDF8diApfG13YnB8bXl3YXxuMTBbMC0yXXxuMjBbMi0zXXxuMzAoMHwyKXxuNTAoMHwyfDUpfG43KDAoMHwxKXwxMCl8bmUoKGN8bSlcLXxvbnx0Znx3Znx3Z3x3dCl8bm9rKDZ8aSl8bnpwaHxvMmltfG9wKHRpfHd2KXxvcmFufG93ZzF8cDgwMHxwYW4oYXxkfHQpfHBkeGd8cGcoMTN8XC0oWzEtOF18YykpfHBoaWx8cGlyZXxwbChheXx1Yyl8cG5cLTJ8cG8oY2t8cnR8c2UpfHByb3h8cHNpb3xwdFwtZ3xxYVwtYXxxYygwN3wxMnwyMXwzMnw2MHxcLVsyLTddfGlcLSl8cXRla3xyMzgwfHI2MDB8cmFrc3xyaW05fHJvKHZlfHpvKXxzNTVcL3xzYShnZXxtYXxtbXxtc3xueXx2YSl8c2MoMDF8aFwtfG9vfHBcLSl8c2RrXC98c2UoYyhcLXwwfDEpfDQ3fG1jfG5kfHJpKXxzZ2hcLXxzaGFyfHNpZShcLXxtKXxza1wtMHxzbCg0NXxpZCl8c20oYWx8YXJ8YjN8aXR8dDUpfHNvKGZ0fG55KXxzcCgwMXxoXC18dlwtfHYgKXxzeSgwMXxtYil8dDIoMTh8NTApfHQ2KDAwfDEwfDE4KXx0YShndHxsayl8dGNsXC18dGRnXC18dGVsKGl8bSl8dGltXC18dFwtbW98dG8ocGx8c2gpfHRzKDcwfG1cLXxtM3xtNSl8dHhcLTl8dXAoXC5ifGcxfHNpKXx1dHN0fHY0MDB8djc1MHx2ZXJpfHZpKHJnfHRlKXx2ayg0MHw1WzAtM118XC12KXx2bTQwfHZvZGF8dnVsY3x2eCg1Mnw1M3w2MHw2MXw3MHw4MHw4MXw4M3w4NXw5OCl8dzNjKFwtfCApfHdlYmN8d2hpdHx3aShnIHxuY3xudyl8d21sYnx3b251fHg3MDB8eWFzXC18eW91cnx6ZXRvfHp0ZVwtL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50LnN1YnN0cigwLDQpKT8xOjAsJD1bIlN5c3RlbSBTdGFjayIsIkFyaWFsIiwiVGFob21hIiwiVmVyZGFuYSIsIkhlbHZldGljYSIsIlRpbWVzIE5ldyBSb21hbiIsIlRyZWJ1Y2hldCBNUyIsIkdlb3JnaWEiXSx0dD0hMSxldD0hMSxhdD0wLG50PSExLGN0PSExLGl0PVtdLHN0PTAsb3Q9MCxodD0iIixydD0wO3QoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7dmFyIGM9Iihnb29nbGVib3QvfGJvdHxHb29nbGVib3QtTW9iaWxlfEdvb2dsZWJvdC1JbWFnZXxHb29nbGUgZmF2aWNvbnxNZWRpYXBhcnRuZXJzLUdvb2dsZXxiaW5nYm90fHNsdXJwfGphdmF8d2dldHxjdXJsfENvbW1vbnMtSHR0cENsaWVudHxQeXRob24tdXJsbGlifGxpYnd3d3xodHRwdW5pdHxudXRjaHxwaHBjcmF3bHxtc25ib3R8anl4b2JvdHxGQVNULVdlYkNyYXdsZXJ8RkFTVCBFbnRlcnByaXNlIENyYXdsZXJ8YmlnbG90cm9ufHRlb21hfGNvbnZlcmF8c2Vla2JvdHxnaWdhYmxhc3R8ZXhhYm90fG5nYm90fGlhX2FyY2hpdmVyfEdpbmdlckNyYXdsZXJ8d2VibW9uIHxodHRyYWNrfHdlYmNyYXdsZXJ8Z3J1Yi5vcmd8VXNpbmVOb3V2ZWxsZUNyYXdsZXJ8YW50aWJvdHxuZXRyZXNlYXJjaHNlcnZlcnxzcGVlZHl8Zmx1ZmZ5fGJpYm51bS5ibmZ8ZmluZGxpbmt8bXNyYm90fHBhbnNjaWVudHx5YWN5Ym90fEFJU2VhcmNoQm90fElPSXxpcHMtYWdlbnR8dGFnb29ib3R8TUoxMmJvdHxkb3Rib3R8d29yaW9ib3R8eWFuZ2F8YnV6emJvdHxtbGJvdHx5YW5kZXhib3R8cHVyZWJvdHxMaW5ndWVlIEJvdHxWb3lhZ2VyfEN5YmVyUGF0cm9sfHZvaWxhYm90fGJhaWR1c3BpZGVyfGNpdGVzZWVyeGJvdHxzcGJvdHx0d2VuZ2Fib3R8cG9zdHJhbmt8dHVybml0aW5ib3R8c2NyaWJkYm90fHBhZ2UycnNzfHNpdGVib3R8bGlua2RleHxBZGlkeGJvdHxibGVra29ib3R8ZXpvb21zfGRvdGJvdHxNYWlsLlJVX0JvdHxkaXNjb2JvdHxoZXJpdHJpeHxmaW5kdGhhdGZpbGV8ZXVyb3BhcmNoaXZlLm9yZ3xOZXJkQnlOYXR1cmUuQm90fHNpc3RyaXggY3Jhd2xlcnxhaHJlZnNib3R8QWJvdW5kZXh8ZG9tYWluY3Jhd2xlcnx3YnNlYXJjaGJvdHxzdW1taWZ5fGNjYm90fGVkaXN0ZXJib3R8c2V6bmFtYm90fGVjMmxpbmtmaW5kZXJ8Z3NsZmJvdHxhaWhpdGJvdHxpbnRlbGl1bV9ib3R8ZmFjZWJvb2tleHRlcm5hbGhpdHx5ZXRpfFJldHJldm9QYWdlQW5hbHl6ZXJ8bGItc3BpZGVyfHNvZ291fGxzc2JvdHxjYXJlZXJib3R8d290Ym94fHdvY2JvdHxpY2hpcm98RHVja0R1Y2tCb3R8bHNzcm9ja2V0Y3Jhd2xlcnxkcnVwYWN0fHdlYmNvbXBhbnljcmF3bGVyfGFjb29uYm90fG9wZW5pbmRleHNwaWRlcnxnbmFtIGduYW0gc3BpZGVyfHdlYi1hcmNoaXZlLW5ldC5jb20uYm90fGJhY2tsaW5rY3Jhd2xlcnxjb2Njb2N8aW50ZWdyb21lZGJ8Y29udGVudCBjcmF3bGVyIHNwaWRlcnx0b3BsaXN0Ym90fHNlb2tpY2tzLXJvYm90fGl0Mm1lZGlhLWRvbWFpbi1jcmF3bGVyfGlwLXdlYi1jcmF3bGVyLmNvbXxzaXRlZXhwbG9yZXIuaW5mb3xlbGlzYWJvdHxwcm94aW1pY3xjaGFuZ2VkZXRlY3Rpb258YmxleGJvdHxhcmFib3R8V2VTRUU6U2VhcmNofG5pa2ktYm90fENyeXN0YWxTZW1hbnRpY3NCb3R8cm9nZXJib3R8MzYwU3BpZGVyfHBzYm90fEludGVyZmF4U2NhbkJvdHxMaXBwZXJoZXkgU0VPIFNlcnZpY2V8Q0MgTWV0YWRhdGEgU2NhcGVyfGcwMGcxZS5uZXR8R3JhcGVzaG90Q3Jhd2xlcnx1cmxhcHBlbmRib3R8YnJhaW5vYm90fGZyLWNyYXdsZXJ8YmlubGFyfFNpbXBsZUNyYXdsZXJ8TGl2ZWxhcGJvdHxUd2l0dGVyYm90fGNYZW5zZWJvdHxzbXRib3R8Ym5mLmZyX2JvdHxBNi1JbmRleGVyfEFEbWFudFh8RmFjZWJvdHxUd2l0dGVyYm90fE9yYW5nZUJvdHxtZW1vcnlib3R8QWR2Qm90fE1lZ2FJbmRleHxTZW1hbnRpY1NjaG9sYXJCb3R8bHR4NzF8bmVyZHlib3R8eG92aWJvdHxCVWJpTkd8UXdhbnRpZnl8YXJjaGl2ZS5vcmdfYm90fEFwcGxlYm90fFR3ZWV0bWVtZUJvdHxjcmF3bGVyNGp8ZmluZHhib3R8U2VtcnVzaEJvdHx5b296Qm90fGxpcHBlcmhleXx5IWotYXNyfERvbWFpbiBSZS1BbmltYXRvciBCb3R8QWRkVGhpcykiLGk9bmV3IFJlZ0V4cChjLCJpIikscz1uYXZpZ2F0b3IudXNlckFnZW50O2kudGVzdChzKSYmKHR0PSEwKSwoIm9uIiE9Y2hhdHlfc2V0dGluZ3MuZGF0YV9hbmFseXRpY3Nfc2V0dGluZ3N8fCJvZmYiPT1jaGF0eV9zZXR0aW5ncy5kYXRhX2FuYWx5dGljc19zZXR0aW5ncykmJih0dD0hMCksInVuZGVmaW5lZCI9PXR5cGVvZiBjaGF0eV9zZXR0aW5nc3x8MD09Y2hhdHlfc2V0dGluZ3MuY2hhdHlfd2lkZ2V0cy5sZW5ndGg/Y29uc29sZS5sb2coIkNoYXR5IHNldHRpbmdzIGRvZXNuJ3QgZXhpc3RzIik6KFk9Y2hhdHlfc2V0dGluZ3MuY2hhdHlfd2lkZ2V0cyxuKCkpLHQoZG9jdW1lbnQpLm9uKCJjbGljayIsImh0bWwsIGJvZHkiLGZ1bmN0aW9uKGUpe3QoIi5mb3JtLW9wZW4iKS5yZW1vdmVDbGFzcygiZm9ybS1vcGVuIiksdCgiLmNoYXR5LW91dGVyLWZvcm1zIikucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpLHQoIi5jaGF0eSAuY2hhdHktd2lkZ2V0LmNoYXR5LW5vLWNsb3NlLWJ1dHRvbiIpLmFkZENsYXNzKCJjaGF0eS1vcGVuIil9KSx0KGRvY3VtZW50KS5vbigiY2xpY2siLCIuY2hhdHksIC5jaGF0eS1vdXRlci1mb3JtcyIsZnVuY3Rpb24odCl7dC5zdG9wUHJvcGFnYXRpb24oKX0pLHQoZG9jdW1lbnQpLm9uKCJzdWJtaXQiLCIud2hhdHNhcHAtY2hhdHktZm9ybSIsZnVuY3Rpb24oKXtpZih0KHRoaXMpLmhhc0NsYXNzKCJmb3JtLWdvb2dsZS1hbmFseXRpY3MiKSl7dmFyIGU9IldoYXRzYXBwIjtpZih3aW5kb3cuaGFzT3duUHJvcGVydHkoImd0YWciKSYmZ3RhZygiZXZlbnQiLCJjaGF0eV8iK2Use2V2ZW50Q2F0ZWdvcnk6ImNoYXR5XyIrZSxldmVudF9hY3Rpb246ImNoYXR5XyIrZSxtZXRob2Q6ImNoYXR5XyIrZX0pLHdpbmRvdy5oYXNPd25Qcm9wZXJ0eSgiZ2EiKSl7dmFyIGE9d2luZG93LmdhLmdldEFsbCgpWzBdO2EmJmEuc2VuZCgiZXZlbnQiLCJjbGljayIse2V2ZW50Q2F0ZWdvcnk6ImNoYXR5XyIrZSxldmVudEFjdGlvbjoiY2hhdHlfIitlLG1ldGhvZDoiY2hhdHlfIitlfSl9fXZhciBuPXQodGhpcykuZGF0YSgid2lkZ2V0IiksYz10KHRoaXMpLmRhdGEoImNoYW5uZWwiKSxpPVEobiwiYy0iK2MpO2lmKCghXyhuKXx8MD09bikmJmkpe0gobiwiYy0iK2MpO3ZhciBzPXQoIiNjaGF0eS13aWRnZXQtIituKS5kYXRhKCJub25jZSIpO3R0fHx0LmFqYXgoe3VybDpjaGF0eV9zZXR0aW5ncy5hamF4X3VybCxkYXRhOnt3aWRnZXRJZDpuLHVzZXJJZDpuLGlzTW9iaWxlOkssY2hhbm5lbDpjLG5vbmNlOnMsYWN0aW9uOiJ1cGRhdGVfY2hhdHlfY2hhbm5lbF9jbGljayJ9LG1ldGhvZDoicG9zdCJ9KX10KCIjY2hhdHktd2lkZ2V0LSIrbikubGVuZ3RoJiYodCgiI2NoYXR5LXdpZGdldC0iK24pLnJlbW92ZUNsYXNzKCJmb3JtLW9wZW4iKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS1vdXRlci1mb3JtcyIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSx0KCIjY2hhdHktd2lkZ2V0LSIrbikuZmluZCgiLmNoYXR5LXdpZGdldCIpLmhhc0NsYXNzKCJjc3Nhcy1uby1jbG9zZS1idXR0b24iKSYmdCgiI2NoYXR5LXdpZGdldC0iK24pLmZpbmQoIi5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygiY2hhdHktb3BlbiIpKX0pLHQoZG9jdW1lbnQpLm9uKCJjbGljayIsIi5jaGF0eS1jbG9zZS1idXR0b24sIC5jaGF0eS1jbG9zZS1hZ2VudC1saXN0IixmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgYT10KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS1vdXRlci1mb3JtcyIpLmRhdGEoIndpZGdldCIpO2lmKCghXyhhKXx8MD09YSkmJih0KCIjY2hhdHktd2lkZ2V0LSIrYSkubGVuZ3RoJiYodCgiI2NoYXR5LXdpZGdldC0iK2EpLnJlbW92ZUNsYXNzKCJmb3JtLW9wZW4iKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS1vdXRlci1mb3JtcyIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSx0KCIjY2hhdHktd2lkZ2V0LSIrYSkuZmluZCgiLmNoYXR5LXdpZGdldCIpLmhhc0NsYXNzKCJjaGF0eS1uby1jbG9zZS1idXR0b24iKSYmdCgiI2NoYXR5LXdpZGdldC0iK2EpLmZpbmQoIi5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygiY2hhdHktb3BlbiIpKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aGF0c2FwcC1mb3JtIikubGVuZ3RoKSl7dmFyIG49dCh0aGlzKS5jbG9zZXN0KCIuY2hhdHktb3V0ZXItZm9ybXMiKS5kYXRhKCJjaGFubmVsIik7aWYoIV8obikpe3ZhciBjPVEoYSwiYy0iK24pO2MmJkgoYSwiYy0iK24pfXZhciBpPVEoYSwidi13aWRnZXQiKTtpJiZvKGEpfX0pLHQoZG9jdW1lbnQpLm9uKCJjbGljayIsImEuY2hhdHktcXItY29kZS1mb3JtIixmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGE9dCh0aGlzKS5kYXRhKCJmb3JtIik7aWYoIV8oYSkmJnQoIiMiK2EpLmxlbmd0aCl7dmFyIG49dCh0aGlzKS5odG1sKCk7dCgiIyIrYSkuaGFzQ2xhc3MoImFjdGl2ZSIpPyh0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygiY2hhdHktb3BlbiIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5IikucmVtb3ZlQ2xhc3MoImZvcm0tb3BlbiIpLHQoIiMiK2EpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSk6KHQodGhpcykuY2xvc2VzdCgiLmNoYXR5LXdpZGdldCIpLnJlbW92ZUNsYXNzKCJjaGF0eS1vcGVuIiksdCh0aGlzKS5jbG9zZXN0KCIuY2hhdHkiKS5hZGRDbGFzcygiZm9ybS1vcGVuIiksdCgiIyIrYSkuYWRkQ2xhc3MoImFjdGl2ZSIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5LXdpZGdldCIpLmZpbmQoIi5vcGVuLWNoYXR5LWNoYW5uZWwiKS5odG1sKG4pKX19KSx0KGRvY3VtZW50KS5vbigiY2xpY2siLCJhLmNoYXR5LWNvbnRhY3QtdXMtZm9ybSIsZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBhPXQodGhpcykuZGF0YSgiZm9ybSIpO2lmKCFfKGEpJiZ0KCIjIithKS5sZW5ndGgpe3ZhciBuPXQodGhpcykuaHRtbCgpO3QoIiMiK2EpLmhhc0NsYXNzKCJhY3RpdmUiKT8odCh0aGlzKS5jbG9zZXN0KCIuY2hhdHktd2lkZ2V0IikuYWRkQ2xhc3MoImNoYXR5LW9wZW4iKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eSIpLnJlbW92ZUNsYXNzKCJmb3JtLW9wZW4iKSx0KCIjIithKS5yZW1vdmVDbGFzcygiYWN0aXZlIikpOih0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5yZW1vdmVDbGFzcygiY2hhdHktb3BlbiIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5IikuYWRkQ2xhc3MoImZvcm0tb3BlbiIpLHQoIiMiK2EpLmFkZENsYXNzKCJhY3RpdmUiKSx0KCIjIithKS5maW5kKCIuY2hhdHktYWpheC1zdWNjZXNzLW1lc3NhZ2UiKS5yZW1vdmUoKSx0KCIjIithKS5maW5kKCIuY2hhdHktYWpheC1lcnJvci1tZXNzYWdlIikucmVtb3ZlKCksdCgiIyIrYSkuZmluZCgiLmhhcy1jaGF0eS1lcnJvciIpLnJlbW92ZUNsYXNzKCJoYXMtY2hhdHktZXJyb3IiKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5maW5kKCIub3Blbi1jaGF0eS1jaGFubmVsIikuaHRtbChuKSl9fSksdChkb2N1bWVudCkub24oImNsaWNrIiwiYS5jaGF0eS13aGF0c2FwcC1mb3JtIixmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGE9dCh0aGlzKS5kYXRhKCJmb3JtIik7aWYoIV8oYSkmJnQoIiMiK2EpLmxlbmd0aCl7dmFyIG49dCh0aGlzKS5odG1sKCk7dCgiIyIrYSkuYWRkQ2xhc3MoImlzLWFjdGl2ZSIpLHQoIiMiK2EpLmhhc0NsYXNzKCJhY3RpdmUiKT8odCh0aGlzKS5jbG9zZXN0KCIuY2hhdHktd2lkZ2V0IikuYWRkQ2xhc3MoImNoYXR5LW9wZW4iKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eSIpLnJlbW92ZUNsYXNzKCJmb3JtLW9wZW4iKSx0KCIjIithKS5yZW1vdmVDbGFzcygiYWN0aXZlIikpOih0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5yZW1vdmVDbGFzcygiY2hhdHktb3BlbiIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5IikuYWRkQ2xhc3MoImZvcm0tb3BlbiIpLHQoIiMiK2EpLmFkZENsYXNzKCJhY3RpdmUiKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5maW5kKCIub3Blbi1jaGF0eS1jaGFubmVsIikuaHRtbChuKSl9fSksdChkb2N1bWVudCkub24oImNsaWNrIiwiLmNoYXR5LWNoYW5uZWwuY2hhdHktYWdlbnQtYnV0dG9uIixmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGE9dCh0aGlzKS5kYXRhKCJmb3JtIik7aWYoIV8oYSkmJnQoIiMiK2EpLmxlbmd0aClpZih0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5oYXNDbGFzcygiaGFzLXNpbmdsZSIpKWlmKHQodGhpcykuY2xvc2VzdCgiLmNoYXR5IikuaGFzQ2xhc3MoImZvcm0tb3BlbiIpKXQodGhpcykuY2xvc2VzdCgiLmNoYXR5LXdpZGdldCIpLmFkZENsYXNzKCJjaGF0eS1vcGVuIiksdCh0aGlzKS5jbG9zZXN0KCIuY2hhdHkiKS5yZW1vdmVDbGFzcygiZm9ybS1vcGVuIiksdCgiIyIrYSkucmVtb3ZlQ2xhc3MoImFjdGl2ZSIpO2Vsc2V7dmFyIG49dCh0aGlzKS5odG1sKCk7dCgiIyIrYSkuYWRkQ2xhc3MoImlzLWFjdGl2ZSIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5LXdpZGdldCIpLnJlbW92ZUNsYXNzKCJjaGF0eS1vcGVuIiksdCh0aGlzKS5jbG9zZXN0KCIuY2hhdHkiKS5hZGRDbGFzcygiZm9ybS1vcGVuIiksdCgiIyIrYSkuYWRkQ2xhc3MoImFjdGl2ZSIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5LXdpZGdldCIpLmZpbmQoIi5vcGVuLWNoYXR5LWNoYW5uZWwiKS5odG1sKG4pfWVsc2V7dmFyIG49dCh0aGlzKS5odG1sKCk7dCgiIyIrYSkuYWRkQ2xhc3MoImlzLWFjdGl2ZSIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5LXdpZGdldCIpLnJlbW92ZUNsYXNzKCJjaGF0eS1vcGVuIiksdCh0aGlzKS5jbG9zZXN0KCIuY2hhdHkiKS5hZGRDbGFzcygiZm9ybS1vcGVuIiksdCgiIyIrYSkuYWRkQ2xhc3MoImFjdGl2ZSIpLHQodGhpcykuY2xvc2VzdCgiLmNoYXR5LXdpZGdldCIpLmZpbmQoIi5vcGVuLWNoYXR5LWNoYW5uZWwiKS5odG1sKG4pfX0pLHQoZG9jdW1lbnQpLm9uKCJjbGljayIsIi5jaGF0eS1jaGFubmVsLmhhcy1nYWUiLGZ1bmN0aW9uKGEpe2Euc3RvcFByb3BhZ2F0aW9uKCk7dmFyIG49dCh0aGlzKS5kYXRhKCJjaGFubmVsIik7aWYobiE9PWUmJiIiIT1uJiZudWxsIT1uJiYod2luZG93Lmhhc093blByb3BlcnR5KCJndGFnIikmJmd0YWcoImV2ZW50IiwiY2hhdHlfIituLHtldmVudENhdGVnb3J5OiJjaGF0eV8iK24sZXZlbnRfYWN0aW9uOiJjaGF0eV8iK24sbWV0aG9kOiJjaGF0eV8iK259KSx3aW5kb3cuaGFzT3duUHJvcGVydHkoImdhIikpKXt2YXIgYz13aW5kb3cuZ2EuZ2V0QWxsKClbMF07YyYmYy5zZW5kKCJldmVudCIsImNsaWNrIix7ZXZlbnRDYXRlZ29yeToiY2hhdHlfIituLGV2ZW50QWN0aW9uOiJjaGF0eV8iK24sbWV0aG9kOiJjaGF0eV8iK259KX19KSx0KGRvY3VtZW50KS5vbigiY2xpY2siLCIuY2hhdHktaS10cmlnZ2VyOm5vdCguc2luZ2xlLWNoYW5uZWwpIixmdW5jdGlvbigpe3QodGhpcykuY2xvc2VzdCgiLmNoYXR5IikuaGFzQ2xhc3MoImZvcm0tb3BlbiIpPyh0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eSIpLnJlbW92ZUNsYXNzKCJmb3JtLW9wZW4iKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygiY2hhdHktb3BlbiIpKTp0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS50b2dnbGVDbGFzcygiY2hhdHktb3BlbiIpLHQoIi5jaGF0eS1vdXRlci1mb3JtcyIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eSIpLmZpbmQoIi5jaGF0eS13aWRnZXQiKS5oYXNDbGFzcygiY2hhdHktbm8tY2xvc2UtYnV0dG9uIikmJnQodGhpcykuY2xvc2VzdCgiLmNoYXR5IikuZmluZCgiLmNoYXR5LXdpZGdldCIpLmFkZENsYXNzKCJjaGF0eS1vcGVuIil9KSxLfHx0KGRvY3VtZW50KS5vbigibW91c2VvdmVyIiwiYm9keTpub3QoLmNoYXR5LWluLW1vYmlsZSkgLmNoYXR5Lm9wZW4tb24taG92ZXIgLmNoYXR5LWktdHJpZ2dlcjpub3QoLnNpbmdsZS1jaGFubmVsKSIsZnVuY3Rpb24oKXt0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5oYXNDbGFzcygiY2hhdHktb3BlbiIpfHx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5oYXNDbGFzcygib24tY2hhdHktd2lkZ2V0Iil8fCh0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5hZGRDbGFzcygib24tY2hhdHktd2lkZ2V0IiksdCh0aGlzKS5maW5kKCIuY2hhdHktY3RhLW1haW4iKS50cmlnZ2VyKCJjbGljayIpKX0pLm9uKCJtb3VzZWxlYXZlIiwiYm9keTpub3QoLmNoYXR5LWluLW1vYmlsZSkgLmNoYXR5Lm9wZW4tb24taG92ZXIgLmNoYXR5LWktdHJpZ2dlcjpub3QoLnNpbmdsZS1jaGFubmVsKSIsZnVuY3Rpb24oKXt0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5oYXNDbGFzcygiY2hhdHktb3BlbiIpfHx0KHRoaXMpLmNsb3Nlc3QoIi5jaGF0eS13aWRnZXQiKS5yZW1vdmVDbGFzcygib24tY2hhdHktd2lkZ2V0Iil9KSx0KGRvY3VtZW50KS5vbigiY2xpY2siLCIuY2hhdHktY2hhbm5lbCIsZnVuY3Rpb24oZSl7dmFyIG4sYyxpLHM9W10sbz0wLGg9dCh0aGlzKS5jbG9zZXN0KCIuY2hhdHkiKS5kYXRhKCJpZCIpO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgaCYmKGk9dCgiI2NoYXR5LXdpZGdldC0iK2gpLmRhdGEoImlkZW50aWZpZXIiKSwidW5kZWZpbmVkIiE9dHlwZW9mIGkpKXt2YXIgcj10KCIjY2hhdHktd2lkZ2V0LSIraCkuZGF0YSgidXNlciIpO2lmKGEoaCksdCh0aGlzKS5oYXNDbGFzcygiY2hhdHktY3RhLW1haW4iKXx8dCh0aGlzKS5oYXNDbGFzcygiY2hhdHktY3RhLWNsb3NlIikpe2lmKG49UShoLCJjLXdpZGdldCIpLHQoIiNjaGF0eS13aWRnZXQtIitoKS5maW5kKCIuY2gtcGVuZGluZy1tc2ciKS5yZW1vdmUoKSxuJiYoSChoLCJjLXdpZGdldCIpLHQodGhpcykuaGFzQ2xhc3MoImNoYXR5LWN0YS1tYWluIikpKXtzPVtdLHQoIiNjaGF0eS13aWRnZXQtIitoKyIgLmNoYXR5LWNoYW5uZWwtbGlzdCIpLmZpbmQoIi5jaGF0eS1jaGFubmVsIikuZWFjaChmdW5jdGlvbigpe2M9dCh0aGlzKS5kYXRhKCJjaGFubmVsIiksbj1RKGgsInYtIitjKSxuJiYidW5kZWZpbmVkIiE9dHlwZW9mIGMmJihIKGgsInYtIitjKSxzLnB1c2goYykpfSk7dmFyIGw9dCgiI2NoYXR5LXdpZGdldC0iK2gpLmRhdGEoIm5vbmNlIik7dHR8fHQuYWpheCh7dXJsOmNoYXR5X3NldHRpbmdzLmFqYXhfdXJsLGRhdGE6e3dpZGdldElkOmgsdXNlcklkOnIsaXNNb2JpbGU6SyxjaGFubmVsczpzLGlzU2luZ2xlOjAsbm9uY2U6bCxhY3Rpb246InVwZGF0ZV9jaGF0eV93aWRnZXRfY2xpY2sifSxtZXRob2Q6InBvc3QifSl9dCgiI2NoYXR5LXdpZGdldC0iK2gpLmhhc0NsYXNzKCJmaXJzdF9jbGljayIpJiYodCgiI2NoYXR5LXdpZGdldC0iK2grIiAuY2hhdHktY3RhLW1haW4iKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksdCgiI2NoYXR5LXdpZGdldC0iK2grIiAuY2hhdHktY3RhLW1haW4iKS5yZW1vdmVDbGFzcygiY2hhdHktdG9vbHRpcCIpKX1lbHNlIGlmKHQodGhpcykuaGFzQ2xhc3MoInNpbmdsZSIpKXt0KCIjY2hhdHktd2lkZ2V0LSIraCkuZmluZCgiLmNoLXBlbmRpbmctbXNnIikucmVtb3ZlKCksbj1RKGgsImMtd2lkZ2V0Iik7dmFyIGw9dCgiI2NoYXR5LXdpZGdldC0iK2gpLmRhdGEoIm5vbmNlIik7biYmKEgoaCwiYy13aWRnZXQiKSxvPTAscz1bXSxjPXQodGhpcykuZGF0YSgiY2hhbm5lbCIpLG49UShoLCJjLSIrYyksbiYmKHMucHVzaChjKSxvPTEpLHR0fHx0LmFqYXgoe3VybDpjaGF0eV9zZXR0aW5ncy5hamF4X3VybCxkYXRhOnt3aWRnZXRJZDpoLHVzZXJJZDpyLGlzTW9iaWxlOkssY2hhbm5lbHM6cyxpc1NpbmdsZTpvLG5vbmNlOmwsYWN0aW9uOiJ1cGRhdGVfY2hhdHlfd2lkZ2V0X2NsaWNrIn0sbWV0aG9kOiJwb3N0In0pKSx0KCIjY2hhdHktd2lkZ2V0LSIraCkuaGFzQ2xhc3MoImZpcnN0X2NsaWNrIikmJih0KCIjY2hhdHktd2lkZ2V0LSIraCsiIC5jaGF0eS10b29sdGlwIikucmVtb3ZlQ2xhc3MoImNoYXR5LXRvb2x0aXAiKSx0KCIjY2hhdHktd2lkZ2V0LSIraCsiIC5zaW5nbGUtY2hhbm5lbCBhIikuYWRkQ2xhc3MoImNoYXR5LXRvb2x0aXAiKSl9ZWxzZSBpZih0KHRoaXMpLmhhc0NsYXNzKCJjaGF0eS1jaGFubmVsIikmJihjPXQodGhpcykuZGF0YSgiY2hhbm5lbCIpLG49UShoLCJjLSIrYykpKXtIKGgsImMtIitjKTt2YXIgbD10KCIjY2hhdHktd2lkZ2V0LSIraCkuZGF0YSgibm9uY2UiKTt0dHx8dC5hamF4KHt1cmw6Y2hhdHlfc2V0dGluZ3MuYWpheF91cmwsZGF0YTp7d2lkZ2V0SWQ6aCx1c2VySWQ6cixpc01vYmlsZTpLLGNoYW5uZWw6Yyxub25jZTpsLGFjdGlvbjoidXBkYXRlX2NoYXR5X2NoYW5uZWxfY2xpY2sifSxtZXRob2Q6InBvc3QifSl9fX0pLHQoZG9jdW1lbnQpLm9uKCJzdWJtaXQiLCIuY2hhdHktYWpheC1jb250YWN0LWZvcm0iLGZ1bmN0aW9uKGUpe2UucHJldmVudERlZmF1bHQoKTt2YXIgYT0wO2lmKHQodGhpcykuZmluZCgiLmhhcy1jaGF0eS1lcnJvciIpLmVhY2goZnVuY3Rpb24oKXt0KHRoaXMpLnJlbW92ZUNsYXNzKCJoYXMtY2hhdHktZXJyb3IiKX0pLHQodGhpcykuZmluZCgiLmNoYXR5LWVycm9yLW1zZyIpLnJlbW92ZSgpLHQodGhpcykuZmluZCgiLmNoYXR5LWFqYXgtZXJyb3ItbWVzc2FnZSIpLnJlbW92ZSgpLHQodGhpcykuZmluZCgiLmNoYXR5LWFqYXgtc3VjY2Vzcy1tZXNzYWdlIikucmVtb3ZlKCksdCh0aGlzKS5maW5kKCIuaXMtcmVxdWlyZWQiKS5lYWNoKGZ1bmN0aW9uKCl7IiI9PWpRdWVyeS50cmltKHQodGhpcykudmFsKCkpJiYoYSsrLHQodGhpcykuYWRkQ2xhc3MoImhhcy1jaGF0eS1lcnJvciIpKX0pLDA9PWEpe3ZhciBuPXQodGhpcyk7dCgiLmNoYXR5LWNvbnRhY3Qtc3VibWl0LWJ0biIpLmF0dHIoImRpc2FibGVkIiwhMCksalF1ZXJ5LmFqYXgoe3VybDpjaGF0eV9zZXR0aW5ncy5hamF4X3VybCxkYXRhOnthY3Rpb246ImNoYXR5X2Zyb250X2Zvcm1fc2F2ZV9kYXRhIixuYW1lOm4uZmluZCgiLmZpZWxkLW5hbWUiKS5sZW5ndGg/bi5maW5kKCIuZmllbGQtbmFtZSIpLnZhbCgpOiIiLGVtYWlsOm4uZmluZCgiLmZpZWxkLWVtYWlsIikubGVuZ3RoP24uZmluZCgiLmZpZWxkLWVtYWlsIikudmFsKCk6IiIscGhvbmU6bi5maW5kKCIuZmllbGQtcGhvbmUiKS5sZW5ndGg/bi5maW5kKCIuZmllbGQtcGhvbmUiKS52YWwoKToiIixtZXNzYWdlOm4uZmluZCgiLmZpZWxkLW1lc3NhZ2UiKS5sZW5ndGg/bi5maW5kKCIuZmllbGQtbWVzc2FnZSIpLnZhbCgpOiIiLG5vbmNlOm4uZGF0YSgidG9rZW4iKSxjaGFubmVsOm4uZGF0YSgiY2hhbm5lbCIpLHdpZGdldDpuLmRhdGEoImluZGV4IikscmVmX3VybDp3aW5kb3cubG9jYXRpb24uaHJlZn0sdHlwZToicG9zdCIsYXN5bmM6ITAsZGVmZXI6ITAsc3VjY2VzczpmdW5jdGlvbihlKXtpZihlPWpRdWVyeS5wYXJzZUpTT04oZSksdCgiLmNoYXR5LWFqYXgtZXJyb3ItbWVzc2FnZSIpLnJlbW92ZSgpLHQoIi5jaGF0eS1hamF4LXN1Y2Nlc3MtbWVzc2FnZSIpLnJlbW92ZSgpLHQoIi5jaGF0eS1jb250YWN0LXN1Ym1pdC1idG4iKS5hdHRyKCJkaXNhYmxlZCIsITEpLDE9PWUuc3RhdHVzKXQoIi5jaGF0eS1jb250YWN0LWlucHV0cyIpLmFwcGVuZCgiPGRpdiBjbGFzcz0nY2hhdHktYWpheC1zdWNjZXNzLW1lc3NhZ2UnPiIrZS5tZXNzYWdlKyI8L2Rpdj4iKSx0KCIuZmllbGQtbmFtZSwgLmZpZWxkLWVtYWlsLCAuZmllbGQtbWVzc2FnZSwgLmZpZWxkLXBob25lIikudmFsKCIiKSwieWVzIj09ZS5yZWRpcmVjdF9hY3Rpb24mJigieWVzIj09ZS5saW5rX2luX25ld190YWI/d2luZG93Lm9wZW4oZS5yZWRpcmVjdF9saW5rLCJfYmxhbmsiKTp3aW5kb3cubG9jYXRpb249ZS5yZWRpcmVjdF9saW5rKSwieWVzIj09ZS5jbG9zZV9mb3JtX2FmdGVyJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWYodCgiLmNoYXR5LW91dGVyLWZvcm1zLmFjdGl2ZSIpLmxlbmd0aCl7dmFyIGU9dCgiLmNoYXR5LW91dGVyLWZvcm1zLmFjdGl2ZSIpLmRhdGEoIndpZGdldCIpO18oZSkmJjAhPWV8fHQoIiNjaGF0eS13aWRnZXQtIitlKS5sZW5ndGgmJih0KCIjY2hhdHktd2lkZ2V0LSIrZSkucmVtb3ZlQ2xhc3MoImZvcm0tb3BlbiIpLHQoIi5jaGF0eS1vdXRlci1mb3Jtcy5hY3RpdmUiKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksdCgiI2NoYXR5LXdpZGdldC0iK2UpLmZpbmQoIi5jaGF0eS13aWRnZXQiKS5oYXNDbGFzcygiY2hhdHktbm8tY2xvc2UtYnV0dG9uIikmJnQoIiNjaGF0eS13aWRnZXQtIitlKS5maW5kKCIuY2hhdHktd2lkZ2V0IikuYWRkQ2xhc3MoImNoYXR5LW9wZW4iKSl9fSwxZTMqcGFyc2VJbnQoZS5jbG9zZV9mb3JtX2FmdGVyX3NlY29uZHMpKTtlbHNlIGlmKDE9PWUuZXJyb3Ipe2lmKGUuZXJyb3JzLmxlbmd0aClmb3IodmFyIGE9MDthPGUuZXJyb3JzLmxlbmd0aDthKyspdCgiLiIrZS5lcnJvcnNbYV0uZmllbGQpLmFkZENsYXNzKCJoYXMtY2hhdHktZXJyb3IiKSx0KCIuIitlLmVycm9yc1thXS5maWVsZCkuYWZ0ZXIoIjxzcGFuIGNsYXNzPSdjaGF0eS1lcnJvci1tc2cnPiIrZS5lcnJvcnNbYV0ubWVzc2FnZSsiPC9zcGFuPiIpfWVsc2UgdCgiLmNoYXR5LWNvbnRhY3QtaW5wdXRzIikuYXBwZW5kKCI8ZGl2IGNsYXNzPSdjaGF0eS1hamF4LWVycm9yLW1lc3NhZ2UnPiIrZS5tZXNzYWdlKyI8L2Rpdj4iKX19KX1lbHNlIHQoIi5oYXMtY2hhdHktZXJyb3I6Zmlyc3QiKS5mb2N1cygpO3JldHVybiExfSksdChkb2N1bWVudCkub24oImNsaWNrIiwiLmNoYXR5LXdpZGdldC5oYXMtc2luZ2xlIC5jaGF0eS1pLXRyaWdnZXIgLmNoYXR5LWNoYW5uZWw6bm90KC5jaGF0eS1hZ2VudC1idXR0b24pLlBob25lLWNoYW5uZWwiLGZ1bmN0aW9uKCl7d2luZG93LmxvY2F0aW9uPXQodGhpcykuZmluZCgiYSIpLnByb3AoImhyZWYiKX0pLHQoZG9jdW1lbnQpLm9uKCJjbGljayIsIi5jaGF0eS13aWRnZXQuaGFzLXNpbmdsZSAuY2hhdHktaS10cmlnZ2VyIC5jaGF0eS1jaGFubmVsOm5vdCguY2hhdHktYWdlbnQtYnV0dG9uKS5QaG9uZS1jaGFubmVsIGEiLGZ1bmN0aW9uKHQpe3Quc3RvcFByb3BhZ2F0aW9uKCksdC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKX0pfSl9KTs="}},"time_used":394,"timings":{"blocked":116,"dns":0,"connect":0,"send":0,"wait":186,"receive":92,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/uploads/2020/07/crypto-signals-payment-gateways.png","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.991Z","timestamp":1785148618991,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /wp-content/uploads/2020/07/crypto-signals-payment-gateways.png HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"code.tidio.co/widget-v4/1_448_0/static/js/render.a5ee2e48209f8ae4b5f0.js","fqdn":"code.tidio.co","domain":"tidio.co","tld":"co"},"ip":{"addr":"172.67.73.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.163Z","timestamp":1785148619163,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"tidio.co","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 21 Jun 2026 20:02:32 GMT","end":"Sat, 19 Sep 2026 21:02:13 GMT"},"fingerprint":{"sha1":"B4:2F:9E:39:BF:54:A9:3D:84:9B:3D:A5:1E:C6:7A:DE:29:83:DC:D2","sha256":"CF:10:9D:C6:D1:72:BD:AB:36:BF:B0:F3:01:C9:0F:59:EA:1D:4A:4A:8A:18:0E:B4:82:77:9B:92:D7:AE:5E:4E"}}},"request":{"raw":"GET /widget-v4/1_448_0/static/js/render.a5ee2e48209f8ae4b5f0.js HTTP/1.1\r\nHost: code.tidio.co\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 10:36:59 GMT\r\ncontent-type: application/javascript\r\naccess-control-allow-origin: *\r\ncache-control: public, max-age=31536000, immutable\r\ncontent-encoding: gzip\r\netag: W/\"6a673034-18e2\"\r\nlast-modified: Mon, 27 Jul 2026 10:17:24 GMT\r\nserver: cloudflare\r\nvary: Accept-Encoding\r\nage: 891\r\ncf-cache-status: HIT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=qez7BKQcNLFiaPsrnQrB1A7ynYNGJwRUZoPT9vawqmS5d%2BB9cwJ9b4br%2F7VMahTVG3kE5Jt2%2BbqpVYAm%2Fzj5a8bxkpEw9XRrdCoaDbCBHhFTXOjMBUnyZhlnHosmS4M%3D\"}]}\r\ncf-ray: a21b0195cdd64e4c-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":6370,"size_decoded":3230,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (6370), with no line terminators","md5":"0b292ea78673f842d182dceb0dbef408","sha1":"9b32209b133d3fcf2541cf848cf81e32109d5e7f","sha256":"0b7207e5063f0e01de5fcfa30018d6817538f9515e8153f6ef76da89fde01401","sha512":"6ebc205ce18165c49303979fecf79d2bcf082d799b048e8cff9dd38c2c8347aba5649305ef36f3be590eda9022d4914655598bec5b5ba37bd7567be735a5739c","ssdeep":"96:oemayozLg1yMGBAMa4qc8uLetLu9hinoAXKNjvydcQ7fFB/4yw9O9GBdYPuH:+ozqy841LeE+n6By1hFkzYPU","tlshash":"d2d1c99131682465122a956d207fb30732a9713f650e91a4736cdcddbd38ec7814fee7","first_seen":"2026-07-27T10:37:38.215458Z","last_seen":"2026-07-28T07:29:49.927643Z","times_seen":14,"resource_available":true,"data":"IWZ1bmN0aW9uKCl7dHJ5e3ZhciBlPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzoidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbD9nbG9iYWw6InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzP2dsb2JhbFRoaXM6InVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6e30sdD0obmV3IGUuRXJyb3IpLnN0YWNrO3QmJihlLl9zZW50cnlEZWJ1Z0lkcz1lLl9zZW50cnlEZWJ1Z0lkc3x8e30sZS5fc2VudHJ5RGVidWdJZHNbdF09ImQ1MmIwNGFlLTI3NmQtNGUzYy05NzMwLWRhMWJhMmJlOTZjMCIsZS5fc2VudHJ5RGVidWdJZElkZW50aWZpZXI9InNlbnRyeS1kYmlkLWQ1MmIwNGFlLTI3NmQtNGUzYy05NzMwLWRhMWJhMmJlOTZjMCIpfWNhdGNoKGUpe319KCksZnVuY3Rpb24oKXt2YXIgZT0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWw/Z2xvYmFsOiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOnt9O2UuX3NlbnRyeU1vZHVsZU1ldGFkYXRhPWUuX3NlbnRyeU1vZHVsZU1ldGFkYXRhfHx7fSxmdW5jdGlvbigpe3ZhciB0LG89KG5ldyBlLkVycm9yKS5zdGFjayxuPWUuX3NlbnRyeU1vZHVsZU1ldGFkYXRhW29dfHx7fSxpPXsiX3NlbnRyeUJ1bmRsZXJQbHVnaW5BcHBLZXk6dGlkaW8tc2VudHJ5LXdpZGdldC1hcHAta2V5IjohMH0sZD17fTtmb3IodCBpbiBuKW4uaGFzT3duUHJvcGVydHkodCkmJihkW3RdPW5bdF0pO2Zvcih0IGluIGkpaS5oYXNPd25Qcm9wZXJ0eSh0KSYmKGRbdF09aVt0XSk7ZS5fc2VudHJ5TW9kdWxlTWV0YWRhdGFbb109ZH0oKX0oKTt2YXIgX2dsb2JhbD0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWw/Z2xvYmFsOiJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOnt9O19nbG9iYWwuU0VOVFJZX1JFTEVBU0U9e2lkOiIxLjQ0OC4wIn0sZnVuY3Rpb24oKXt2YXIgZT17MTkxMjpmdW5jdGlvbihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtBOmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7Y2xhc3Mgbntjb25zdHJ1Y3Rvcigpe3RoaXMuZXZlbnRQcmVmaXg9InRpZGlvQ2hhdC0iLHRoaXMucmVhZHlFdmVudFdhc0ZpcmVkPSExLHRoaXMucXVldWU9W10sdGhpcy5wb3BVcE9wZW49dGhpcy5vcGVuLHRoaXMucG9wVXBIaWRlPXRoaXMuY2xvc2UsdGhpcy5jaGF0RGlzcGxheT10aGlzLmRpc3BsYXksdGhpcy5zZXRDb2xvclBhbGxldGU9dGhpcy5zZXRDb2xvclBhbGV0dGV9b24oZSx0KXsicmVhZHkiPT09ZSYmdGhpcy5yZWFkeUV2ZW50V2FzRmlyZWQ/dCgpOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoYCR7dGhpcy5ldmVudFByZWZpeH0ke2V9YCxlPT57dChlLmRhdGEpfSwhMSl9dHJpZ2dlcihlLHQpe2lmKCJyZWFkeSI9PT1lJiZ0aGlzLnJlYWR5RXZlbnRXYXNGaXJlZClyZXR1cm4hMTt0cnl7Y29uc3Qgbz1kb2N1bWVudC5jcmVhdGVFdmVudCgiRXZlbnQiKTtpZihvLmluaXRFdmVudChgJHt0aGlzLmV2ZW50UHJlZml4fSR7ZX1gLCEwLCEwKSxvLmRhdGE9dCxkb2N1bWVudC5kaXNwYXRjaEV2ZW50KG8pLCJyZWFkeSI9PT1lKXtpZih0aGlzLnJlYWR5RXZlbnRXYXNGaXJlZClyZXR1cm4hMTt0aGlzLl9mbHVzaEFsbEZyb21RdWV1ZSgpLHRoaXMucmVhZHlFdmVudFdhc0ZpcmVkPSEwfX1jYXRjaHtyZXR1cm4hMX1yZXR1cm4hMH1tZXRob2QoZSx0KXtyZXR1cm4icmVhZHkiPT09ZSYmImZ1bmN0aW9uIj09dHlwZW9mIHQ/KHRoaXMub24oInJlYWR5Iix0KSwhMCk6KHRoaXNbZV0mJnRoaXNbZV0odCksITApfV9hZGRUb1F1ZXVlKGUsdD1udWxsKXt0aGlzLnF1ZXVlLnB1c2goe21ldGhvZDplLGFyZ3M6dH0pfV9mbHVzaEFsbEZyb21RdWV1ZSgpe2Zvcig7MCE9PXRoaXMucXVldWUubGVuZ3RoOyl7Y29uc3R7bWV0aG9kOmUsYXJnczp0fT10aGlzLnF1ZXVlLnNoaWZ0KCk7dGhpc1tlXS5hcHBseShudWxsLHQpfX1vcGVuKCl7dGhpcy5fYWRkVG9RdWV1ZSgib3BlbiIpfWNsb3NlKCl7dGhpcy5fYWRkVG9RdWV1ZSgiY2xvc2UiKX1kaXNwbGF5KGU9ITApe3RoaXMuX2FkZFRvUXVldWUoImRpc3BsYXkiLFtlXSl9c2hvdygpe3RoaXMuX2FkZFRvUXVldWUoInNob3ciKX1oaWRlKCl7dGhpcy5fYWRkVG9RdWV1ZSgiaGlkZSIpfXNldENvbG9yUGFsZXR0ZShlKXt0aGlzLl9hZGRUb1F1ZXVlKCJzZXRDb2xvclBhbGV0dGUiLFtlXSl9dHJhY2soZSx0LG8pe3ZvaWQgMD09PWUmJihlPSJ0cmFjayIpLHZvaWQgMD09PXQmJih0PXt9KSx2b2lkIDA9PT1vJiYobz0oKT0+e30pLHRoaXMuX2FkZFRvUXVldWUoInRyYWNrIixbZSx0LG9dKX1tZXNzYWdlRnJvbVZpc2l0b3IoZSl7dGhpcy5fYWRkVG9RdWV1ZSgibWVzc2FnZUZyb21WaXNpdG9yIixbZV0pfW1lc3NhZ2VGcm9tT3BlcmF0b3IoZSx0PSEwKXt0aGlzLl9hZGRUb1F1ZXVlKCJtZXNzYWdlRnJvbU9wZXJhdG9yIixbZSx0XSl9c2V0VmlzaXRvckRhdGEoZSx0KXt0aGlzLl9hZGRUb1F1ZXVlKCJzZXRWaXNpdG9yRGF0YSIsW2UsdF0pfXNldENvbnRhY3RQcm9wZXJ0aWVzKGUsdCl7dGhpcy5fYWRkVG9RdWV1ZSgic2V0Q29udGFjdFByb3BlcnRpZXMiLFtlLHRdKX1hZGRWaXNpdG9yVGFncyhlLHQpe3RoaXMuX2FkZFRvUXVldWUoImFkZFZpc2l0b3JUYWdzIixbZSx0XSl9c2V0RmVhdHVyZXMoZT17fSl7dGhpcy5fYWRkVG9RdWV1ZSgic2V0RmVhdHVyZXMiLFtlXSl9YWRqdXN0U3R5bGVzKGUpe3RoaXMuX2FkZFRvUXVldWUoImFkanVzdFN0eWxlcyIsW2VdKX1zZXRWaXNpdG9yQ3VycmVuY3koZSl7dGhpcy5fYWRkVG9RdWV1ZSgic2V0VmlzaXRvckN1cnJlbmN5IixbZV0pfXNldERldmljZVR5cGUoZSl7dGhpcy5fYWRkVG9RdWV1ZSgic2V0RGV2aWNlVHlwZSIsW2VdKX19fX0sdD17fTtmdW5jdGlvbiBvKG4pe3ZhciBpPXRbbl07aWYodm9pZCAwIT09aSlyZXR1cm4gaS5leHBvcnRzO3ZhciBkPXRbbl09e2V4cG9ydHM6e319O3JldHVybiBlW25dKGQsZC5leHBvcnRzLG8pLGQuZXhwb3J0c31vLmQ9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG4gaW4gdClvLm8odCxuKSYmIW8ubyhlLG4pJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtlbnVtZXJhYmxlOiEwLGdldDp0W25dfSl9LG8uaD1mdW5jdGlvbigpe3JldHVybiJhNWVlMmU0ODIwOWY4YWU0YjVmMCJ9LG8ubz1mdW5jdGlvbihlLHQpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KX0sZnVuY3Rpb24oKXtjb25zdCBlPURhdGUubm93KCk7Y29uc3QgdD0iYm9vbGVhbiI9PXR5cGVvZiBQUk9EVUNUSU9OX0RFVkVMT1BNRU5UX0JVSUxEJiYhMD09PVBST0RVQ1RJT05fREVWRUxPUE1FTlRfQlVJTEQsbj10PyJodHRwczovL2NvZGUudGlkaW8uY28vd2lkZ2V0LXY0Ly9kaXN0LyI6Imh0dHBzOi8vY29kZS50aWRpby5jby93aWRnZXQtdjQvIjtmdW5jdGlvbiBpKGUsdCl7dHJ5e2NvbnN0IG89ZS5jcmVhdGVFbGVtZW50KCJsaW5rIik7by5yZWw9InByZWxvYWQiLG8uaHJlZj10LG8uYXM9ImZvbnQiLG8udHlwZT0iZm9udC93b2ZmMiIsby5jcm9zc09yaWdpbj0iIixlLmhlYWQuYXBwZW5kQ2hpbGQobyl9Y2F0Y2h7fX1jb25zdCBkPWZ1bmN0aW9uKCl7dmFyIGU9W10sdD0hMSxvPSExO2Z1bmN0aW9uIG4oKXtpZighdCl7dD0hMDtmb3IodmFyIG89MDtvPGUubGVuZ3RoO28rPTEpZVtvXS5mbi5jYWxsKHdpbmRvdyxlW29dLmN0eCk7ZT1bXX19ZnVuY3Rpb24gaSgpeyJjb21wbGV0ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlJiZuKCl9cmV0dXJuIGZ1bmN0aW9uKGQsYSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGQpdGhyb3cgbmV3IFR5cGVFcnJvcigiY2FsbGJhY2sgZm9yIGRvY1JlYWR5KGZuKSBtdXN0IGJlIGEgZnVuY3Rpb24iKTtyZXR1cm4gdD8oc2V0VGltZW91dChmdW5jdGlvbigpe2QoYSl9LDEpLCExKTooZS5wdXNoKHtmbjpkLGN0eDphfSksImNvbXBsZXRlIj09PWRvY3VtZW50LnJlYWR5U3RhdGV8fCFkb2N1bWVudC5hdHRhY2hFdmVudCYmImludGVyYWN0aXZlIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/c2V0VGltZW91dChuLDEpOm98fChkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyPyhkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixuLCExKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOihkb2N1bWVudC5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIixpKSx3aW5kb3cuYXR0YWNoRXZlbnQoIm9ubG9hZCIsbikpLG89ITApLCEwKX19KCk7ZnVuY3Rpb24gYShlKXshZnVuY3Rpb24oZSx0KXtjb25zdCBvPWUuY29udGVudFdpbmRvdy5kb2N1bWVudCxuPW8uY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7bi5zcmM9dCxuLmFzeW5jPSEwLG8uYm9keS5hcHBlbmRDaGlsZChuKX0oZSxgJHtuLnJlcGxhY2UoL1wvJC8sIiIpfS8xXzQ0OF8wL3N0YXRpYy9qcy93aWRnZXQuJHtvLmgoKX0uanNgKX1jb25zdCBzPW8oMTkxMikuQTt3aW5kb3cudGlkaW9DaGF0QXBpPW5ldyBzLGQoKCk9PnNldFRpbWVvdXQoKCk9Pnt2YXIgZD13aW5kb3cuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRpZGlvLWNoYXQtY29kZSIpLHM9L01TSUV8VHJpZGVudC8udGVzdCh3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudCk7aWYoZHx8cylyZXR1cm4hMTshZnVuY3Rpb24oZSx0LG8pe2NvbnN0IG49dC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtsZXQgaT0hMTtuLm9ubG9hZD1mdW5jdGlvbigpe2l8fChvKG4pLGk9ITApfSxuLmlkPWUsbi5zdHlsZS5kaXNwbGF5PSJub25lIixuLnRpdGxlPSJUaWRpbyBDaGF0IGNvZGUiLHQuYm9keS5hcHBlbmRDaGlsZChuKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aXx8KG8obiksaT0hMCl9LDFlMyl9KCJ0aWRpby1jaGF0LWNvZGUiLHdpbmRvdy5kb2N1bWVudCxkPT57dmFyIHM7dCYmd2luZG93Ll9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18mJihkLmNvbnRlbnRXaW5kb3cuX19SRURVWF9ERVZUT09MU19FWFRFTlNJT05fXz13aW5kb3cuX19SRURVWF9ERVZUT09MU19FWFRFTlNJT05fXyxkLmNvbnRlbnRXaW5kb3cuX19SRURVWF9ERVZUT09MU19FWFRFTlNJT05fQ09NUE9TRV9fPXdpbmRvdy5fX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9DT01QT1NFX18pLGZ1bmN0aW9uKGUpe2xldCB0PSJodHRwczovL2NvZGUudGlkaW8uY28vd2lkZ2V0LXY0L3N0YXRpYy9qcy9XaWRnZXRJZnJhbWUuanMiO3Q9YCR7bn0xXzQ0OF8wL3N0YXRpYy9qcy9jaHVuay1XaWRnZXRJZnJhbWUtJHtvLmgoKX0uanNgO2NvbnN0IGk9ZS5jcmVhdGVFbGVtZW50KCJsaW5rIik7aS5yZWw9InByZWxvYWQiLGkuYXM9InNjcmlwdCIsaS5ocmVmPXQsZS5oZWFkLmFwcGVuZENoaWxkKGkpfShkLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQpLGkoZC5jb250ZW50V2luZG93LmRvY3VtZW50LCJodHRwczovL2NvZGUudGlkaW8uY28vd2lkZ2V0LXY0L2ZvbnRzL211bGlzaF9TR2hncWszd290WUtObkJRLndvZmYyIiksaSh3aW5kb3cuZG9jdW1lbnQsImh0dHBzOi8vY29kZS50aWRpby5jby93aWRnZXQtdjQvZm9udHMvaW50ZXJfVWNDbzNGd3JLM2lMVGN2aVl3WVo4VUEzLndvZmYyIikscz1kLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQsWyJ0dXJ1cnUubXAzIiwibm90aWZpY2F0aW9uLXNvdW5kLm1wMyJdLmZvckVhY2goZT0+e2NvbnN0IHQ9cy5jcmVhdGVFbGVtZW50KCJhdWRpbyIpO3QucHJlbG9hZD0ibWV0YWRhdGEiLHQuc3JjPWAke259LyR7ZX1gLHMuaGVhZC5hcHBlbmRDaGlsZCh0KX0pLGZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS5jcmVhdGVFbGVtZW50KCJsaW5rIik7dC5yZWw9InByZWNvbm5lY3QiLHQuaHJlZj0iaHR0cHM6Ly9zb2NrZXQudGlkaW8uY286NDQzIixlLmhlYWQuYXBwZW5kQ2hpbGQodCl9KGQuY29udGVudFdpbmRvdy5kb2N1bWVudCksZnVuY3Rpb24oZSl7Y29uc3QgdD1lLmNyZWF0ZUVsZW1lbnQoImxpbmsiKTt0LnJlbD0icHJlY29ubmVjdCIsdC5ocmVmPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tIixlLmhlYWQuYXBwZW5kQ2hpbGQodCl9KGQuY29udGVudFdpbmRvdy5kb2N1bWVudCksZC5jb250ZW50V2luZG93LnRpZGlvQ2hhdEFwaT13aW5kb3cudGlkaW9DaGF0QXBpLGQuY29udGVudFdpbmRvdy5GSVJTVF9QT1NTSUJMRV9KU19FWEVDVVRJT049ZSwicmVxdWVzdElkbGVDYWxsYmFjayJpbiB3aW5kb3c/d2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2soZnVuY3Rpb24oKXthKGQpfSx7dGltZW91dDo1ZTN9KTpzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YShkKX0sMCl9KX0sMCkpfSgpfSgpOw=="}},"time_used":7,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":7,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"wp-content/et-cache/4625/et-divi-dynamic-tb-6728-4625-late.css","fqdn":"wp-content","domain":"wp-content","tld":""},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.393Z","timestamp":1785148619393,"http_version":"","security_state":"insecure","security_info":null,"request":{"raw":"GET /et-cache/4625/et-divi-dynamic-tb-6728-4625-late.css HTTP/1.1\r\nHost: wp-content\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/jetpack/css/jetpack.css?ver=11.3.2","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.642Z","timestamp":1785148618642,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/jetpack/css/jetpack.css?ver=11.3.2 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/css\r\nContent-Length: 85690\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:18 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":85690,"size_decoded":85900,"mime_type":"text/css","magic":"Unicode text, UTF-8 text, with very long lines (65533), with no line terminators","md5":"ec6a0b120600a6c45807c38a3cb6b535","sha1":"fdb7778754635b85be25f4333e6d4262315a1e63","sha256":"48fdcad6248cad75d16876289b4543334d70d7aab6c06f79160034568468f813","sha512":"26d7cf9d2dd2d1e53d1d0287cdec96a8e48b0beeaa652793972493972e6d05d3ff062bfa96d1cd7002b03a4de694fdb2dd82e5cd5f52d08b34602bb36abb4337","ssdeep":"1536:62UodVfqHGk1YQ7tJjCUeOK1gbFKnjOvPVuAo27cTsTFJ3nQ9tQGL:62Uo3fqHGk1YQhJjCUpVuAo27zTFJ3nS","tlshash":"d183b561f3900069da63c735a896b2e8796c9941c7021dddf9e7b62ccbc73e9152eb0c","first_seen":"2023-04-09T12:52:48Z","last_seen":"2026-08-03T20:48:09.885708Z","times_seen":194,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjtAZm9udC1mYWNle2ZvbnQtZmFtaWx5OnN3aXBlci1pY29ucztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7c3JjOnVybCgiZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEiKSBmb3JtYXQoIndvZmYiKX06cm9vdHstLXN3aXBlci10aGVtZS1jb2xvcjojMDA3YWZmfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVye2xpc3Qtc3R5bGU6bm9uZTttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjA7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcntmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci13cmFwcGVye2JveC1zaXppbmc6Y29udGVudC1ib3g7ZGlzcGxheTpmbGV4O2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO3dpZHRoOjEwMCU7ei1pbmRleDoxfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXdyYXBwZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItbXVsdGlyb3c+LnN3aXBlci13cmFwcGVye2ZsZXgtd3JhcDp3cmFwfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLW11bHRpcm93LWNvbHVtbj4uc3dpcGVyLXdyYXBwZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtd3JhcDp3cmFwfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZT4uc3dpcGVyLXdyYXBwZXJ7bWFyZ2luOjAgYXV0bzt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci1wb2ludGVyLWV2ZW50c3t0b3VjaC1hY3Rpb246cGFuLXl9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItcG9pbnRlci1ldmVudHMuc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbHt0b3VjaC1hY3Rpb246cGFuLXh9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1zbGlkZXtmbGV4LXNocmluazowO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO3dpZHRoOjEwMCV9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmt7dmlzaWJpbGl0eTpoaWRkZW59LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGV7aGVpZ2h0OmF1dG99LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxoZWlnaHR9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItM2R7cGVyc3BlY3RpdmU6MTIwMHB4fS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3csLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZSwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci13cmFwcGVye3RyYW5zZm9ybS1zdHlsZTpwcmVzZXJ2ZS0zZH0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3B7aGVpZ2h0OjEwMCU7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJTt6LWluZGV4OjEwfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnR7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMjcwZGVnLHJnYmEoMCwwLDAsLjUpLHRyYW5zcGFyZW50KX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZyxyZ2JhKDAsMCwwLC41KSx0cmFuc3BhcmVudCl9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9we2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDBkZWcscmdiYSgwLDAsMCwuNSksdHJhbnNwYXJlbnQpfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbXtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwuNSksdHJhbnNwYXJlbnQpfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcnstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtvdmVyZmxvdzphdXRvO3Njcm9sbGJhci13aWR0aDpub25lfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0IHN0YXJ0fS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwuc3dpcGVyLWNvbnRhaW5lci1jc3MtbW9kZT4uc3dpcGVyLXdyYXBwZXJ7c2Nyb2xsLXNuYXAtdHlwZTp4IG1hbmRhdG9yeX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbC5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcntzY3JvbGwtc25hcC10eXBlOnkgbWFuZGF0b3J5fTpyb290ey0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZTo0NHB4fS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLW5leHQsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1idXR0b24tcHJldnthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6dmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpmbGV4O2hlaWdodDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi10b3A6Y2FsYygwcHggLSB2YXIoIC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSApLzIpO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6Y2FsYyh2YXIoIC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSApLzQ0KjI3KTt6LWluZGV4OjEwfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWR7Y3Vyc29yOmF1dG87b3BhY2l0eTouMzU7cG9pbnRlci1ldmVudHM6bm9uZX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXJ7Zm9udC1mYW1pbHk6c3dpcGVyLWljb25zO2ZvbnQtc2l6ZTp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtmb250LXZhcmlhbnQ6bm9ybWFsO2xldHRlci1zcGFjaW5nOjA7bGluZS1oZWlnaHQ6MTt0ZXh0LXRyYW5zZm9ybTpub25lIWltcG9ydGFudDt0ZXh0LXRyYW5zZm9ybTpub25lfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLXByZXYsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHR7bGVmdDoxMHB4O3JpZ2h0OmF1dG99LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1idXR0b24tcHJldjphZnRlciwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dDphZnRlcntjb250ZW50OiJwcmV2In0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1uZXh0LC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2e2xlZnQ6YXV0bztyaWdodDoxMHB4fS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXJ7Y29udGVudDoibmV4dCJ9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZXstLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiNmZmZ9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFja3stLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiMwMDB9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1idXR0b24tbG9ja3tkaXNwbGF5Om5vbmV9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1wYWdpbmF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zaXRpb246b3BhY2l0eSAuM3M7ei1pbmRleDoxMH0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVue29wYWNpdHk6MH0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9ue2JvdHRvbToxMHB4O2xlZnQ6MDt3aWR0aDoxMDAlfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7Zm9udC1zaXplOjA7b3ZlcmZsb3c6aGlkZGVufS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2Zvcm06c2NhbGUoLjMzKX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbnt0cmFuc2Zvcm06c2NhbGUoMSl9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2e3RyYW5zZm9ybTpzY2FsZSguNjYpfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2e3RyYW5zZm9ybTpzY2FsZSguMzMpfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dHt0cmFuc2Zvcm06c2NhbGUoLjY2KX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dHt0cmFuc2Zvcm06c2NhbGUoLjMzKX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e2JhY2tncm91bmQ6IzAwMDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6OHB4O29wYWNpdHk6LjI7d2lkdGg6OHB4fS5qcC1jYXJvdXNlbC1vdmVybGF5IGJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JvcmRlcjpub25lO2JveC1zaGFkb3c6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e2N1cnNvcjpwb2ludGVyfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7b3BhY2l0eToxfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRze3JpZ2h0OjEwcHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNTAlLDApfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7ZGlzcGxheTpibG9jazttYXJnaW46NnB4IDB9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWlje3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6OHB4fS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyx0b3AgLjJzfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHttYXJnaW46MCA0cHh9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7d2hpdGUtc3BhY2U6bm93cmFwfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzLGxlZnQgLjJzfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwuc3dpcGVyLWNvbnRhaW5lci1ydGw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyxyaWdodCAuMnN9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFye2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMjUpO3Bvc2l0aW9uOmFic29sdXRlfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbHtiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO2hlaWdodDoxMDAlO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt0cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcDt3aWR0aDoxMDAlfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGx7dHJhbnNmb3JtLW9yaWdpbjpyaWdodCB0b3B9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRle2hlaWdodDo0cHg7bGVmdDowO3RvcDowO3dpZHRoOjEwMCV9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFye2hlaWdodDoxMDAlO2xlZnQ6MDt0b3A6MDt3aWR0aDo0cHh9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRley0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6I2ZmZn0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXBhZ2luYXRpb24tYmxhY2t7LS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjojMDAwfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItcGFnaW5hdGlvbi1sb2Nre2Rpc3BsYXk6bm9uZX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXpvb20tY29udGFpbmVye2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoxMDAlfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItem9vbS1jb250YWluZXI+Y2FudmFzLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItem9vbS1jb250YWluZXI+aW1nLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItem9vbS1jb250YWluZXI+c3Zne21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJTtvYmplY3QtZml0OmNvbnRhaW59LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1zbGlkZS16b29tZWR7Y3Vyc29yOm1vdmV9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb257bGVmdDowO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6LTEwMDB9OnJvb3R7LS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yOiNmZmY7LS1qcC1jYXJvdXNlbC1wcmltYXJ5LXN1YnRsZS1jb2xvcjojOTk5Oy0tanAtY2Fyb3VzZWwtYmctY29sb3I6IzAwMDstLWpwLWNhcm91c2VsLWJnLWZhZGVkLWNvbG9yOiMyMjI7LS1qcC1jYXJvdXNlbC1ib3JkZXItY29sb3I6IzNhM2EzYX06cm9vdCAuanAtY2Fyb3VzZWwtbGlnaHR7LS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yOiMwMDA7LS1qcC1jYXJvdXNlbC1wcmltYXJ5LXN1YnRsZS1jb2xvcjojNjQ2OTcwOy0tanAtY2Fyb3VzZWwtYmctY29sb3I6I2ZmZjstLWpwLWNhcm91c2VsLWJnLWZhZGVkLWNvbG9yOiNmYmZiZmI7LS1qcC1jYXJvdXNlbC1ib3JkZXItY29sb3I6I2RjZGNkZX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1uZXh0LC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLXByZXYsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXZ7YmFja2dyb3VuZC1pbWFnZTpub25lfVtkYXRhLWNhcm91c2VsLWV4dHJhXTpub3QoLmpwLWNhcm91c2VsLXdyYXApIGltZyxbZGF0YS1jYXJvdXNlbC1leHRyYV06bm90KC5qcC1jYXJvdXNlbC13cmFwKSBpbWcrZmlnY2FwdGlvbntjdXJzb3I6cG9pbnRlcn0uanAtY2Fyb3VzZWwtd3JhcCAqe2xpbmUtaGVpZ2h0OmluaGVyaXR9LmpwLWNhcm91c2VsLXdyYXAuc3dpcGVyLWNvbnRhaW5lcntoZWlnaHQ6YXV0bzt3aWR0aDoxMDB2d30uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXpvb20tY29udGFpbmVye2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MjAwJX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLXNsaWRlLnN3aXBlci1zbGlkZS1uZXh0IC5zd2lwZXItem9vbS1jb250YWluZXIgaW1nLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItc2xpZGUuc3dpcGVyLXNsaWRlLXByZXYgLnN3aXBlci16b29tLWNvbnRhaW5lciBpbWd7dHJhbnNpdGlvbjpub25lIWltcG9ydGFudH0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1uZXh0LC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLXByZXZ7YmFja2dyb3VuZC1pbWFnZTpub25lO2hlaWdodDphdXRvO29wYWNpdHk6LjU7cGFkZGluZzoyMHB4IDQwcHg7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBlYXNlLW91dDt3aWR0aDphdXRvfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItYnV0dG9uLW5leHQ6aG92ZXIsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1idXR0b24tcHJldjpob3ZlcntvcGFjaXR5OjF9LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1idXR0b24tbmV4dDphZnRlciwuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVye2NvbnRlbnQ6bm9uZX0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZywuanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWJ1dHRvbi1wcmV2IHN2Z3tiYWNrZ3JvdW5kOnZhcigtLWpwLWNhcm91c2VsLWJnLWNvbG9yKTtib3JkZXItcmFkaXVzOjRweDtoZWlnaHQ6MzBweDt3aWR0aDoyOHB4fS5qcC1jYXJvdXNlbC1vdmVybGF5e2JhY2tncm91bmQ6dmFyKC0tanAtY2Fyb3VzZWwtYmctY29sb3IpO2JvdHRvbTowO2RpcmVjdGlvbjpsdHI7Zm9udC1mYW1pbHk6SGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7bGVmdDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztwb3NpdGlvbjpmaXhlZDtyaWdodDowO3RvcDowO3otaW5kZXg6MjE0NzQ4MzY0N30uanAtY2Fyb3VzZWwtb3ZlcmxheSAqe2JveC1zaXppbmc6Ym9yZGVyLWJveH0uanAtY2Fyb3VzZWwtb3ZlcmxheSBoMTpiZWZvcmUsLmpwLWNhcm91c2VsLW92ZXJsYXkgaDI6YmVmb3JlLC5qcC1jYXJvdXNlbC1vdmVybGF5IGgzOmJlZm9yZXtjb250ZW50Om5vbmU7ZGlzcGxheTpub25lfS5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLXByZXZ7bGVmdDowO3JpZ2h0OmF1dG99LmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1idXR0b24tbmV4dHtsZWZ0OmF1dG87cmlnaHQ6MH0uanAtY2Fyb3VzZWwtb3ZlcmxheSAuc3dpcGVyLWNvbnRhaW5lci5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXZ7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LmpwLWNhcm91c2VsLWNvbnRhaW5lcntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1yb3dzOjFmciA2NHB4O2hlaWdodDoxMDAlfS5qcC1jYXJvdXNlbC1oaWRlLWNvbnRyb2xzIC5qcC1jYXJvdXNlbC1jb250YWluZXJ7Z3JpZC10ZW1wbGF0ZS1yb3dzOjFmcn0uanAtY2Fyb3VzZWwtaGlkZS1jb250cm9scyAuc3dpcGVyLXdyYXBwZXJ7bWFyZ2luLXRvcDotMzJweH0uanAtY2Fyb3VzZWwtaGlkZS1jb250cm9scyAuanAtc3dpcGVyLWJ1dHRvbi1uZXh0LC5qcC1jYXJvdXNlbC1oaWRlLWNvbnRyb2xzIC5qcC1zd2lwZXItYnV0dG9uLXByZXZ7bWFyZ2luLXRvcDotNTRweH0uanAtY2Fyb3VzZWwtbXNne2JhY2tncm91bmQtY29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcik7Ym9yZGVyLWxlZnQ6NHB4IHNvbGlkICNmZmJhMDA7Ym94LXNoYWRvdzowIDFweCAxcHggMCByZ2JhKDAsMCwwLC4xKTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTpPcGVuIFNhbnMsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXN0eWxlOm5vcm1hbDtsaW5lLWhlaWdodDoxOXB4O21hcmdpbjoyNXB4IDIwcHggMCAycHg7cGFkZGluZzoxMXB4IDE1cHg7dGV4dC1hbGlnbjpjZW50ZXJ9LmpwLWNhcm91c2VsLWluZm97LXdlYmtpdC1mb250LXNtb290aGluZzpzdWJwaXhlbC1hbnRpYWxpYXNlZCFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcik7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvcGFjaXR5OjE7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2Utb3V0O3otaW5kZXg6MTAwfS5qcC1jYXJvdXNlbC1oaWRlLWNvbnRyb2xzIC5qcC1jYXJvdXNlbC1pbmZve2hlaWdodDowO292ZXJmbG93OmhpZGRlbjt2aXNpYmlsaXR5OmhpZGRlbn0uanAtY2Fyb3VzZWwtaW5mby1mb290ZXJ7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NjRweDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtwb3NpdGlvbjpyZWxhdGl2ZX0uanAtY2Fyb3VzZWwtaW5mby1leHRyYSwuanAtY2Fyb3VzZWwtaW5mby1mb290ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcik7d2lkdGg6MTAwdnd9LmpwLWNhcm91c2VsLWluZm8tZXh0cmF7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tanAtY2Fyb3VzZWwtYmctZmFkZWQtY29sb3IpO2Rpc3BsYXk6bm9uZTtwYWRkaW5nOjM1cHh9LmpwLWNhcm91c2VsLXRpdGxlLWFuZC1jYXB0aW9ue21hcmdpbi1ib3R0b206MTVweH0uanAtY2Fyb3VzZWwtaW5mby1leHRyYS5qcC1jYXJvdXNlbC1zaG93e2Rpc3BsYXk6YmxvY2t9LmpwLWNhcm91c2VsLWluZm8gOjpzZWxlY3Rpb257YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKTtjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKX0uanAtY2Fyb3VzZWwtaW5mbyA6Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcik7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcil9LmpwLWNhcm91c2VsLXBob3RvLWluZm97bGVmdDowIWltcG9ydGFudDt3aWR0aDoxMDAlIWltcG9ydGFudH0uanAtY2Fyb3VzZWwtY29tbWVudHMtd3JhcHBlcntkaXNwbGF5Om5vbmU7cGFkZGluZzowO3dpZHRoOjEwMCUhaW1wb3J0YW50fS5qcC1jYXJvdXNlbC1jb21tZW50cy13cmFwcGVyLmpwLWNhcm91c2VsLXNob3d7ZGlzcGxheTpibG9ja30uanAtY2Fyb3VzZWwtY29tbWVudHMtd3JhcHBlcj4uanAtY2Fyb3VzZWwtcGhvdG8taW5mb3tkaXNwbGF5Om5vbmV9LmpwLWNhcm91c2VsLXRyYW5zaXRpb25zIC5qcC1jYXJvdXNlbC1waG90by1pbmZve3RyYW5zaXRpb246LjRzIGVhc2Utb3V0fS5qcC1jYXJvdXNlbC1idXR0b25ze2JhY2tncm91bmQ6IzIyMjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjMjIyO21hcmdpbjotMThweCAtMjBweCAxNXB4O3BhZGRpbmc6OHB4IDEwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9ZGl2LmpwLWNhcm91c2VsLWJ1dHRvbnMgYXstd2Via2l0LWZvbnQtc21vb3RoaW5nOnN1YnBpeGVsLWFudGlhbGlhc2VkO2JvcmRlcjpub25lIWltcG9ydGFudDtjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LXN1YnRsZS1jb2xvcik7Zm9udDpub3JtYWwgMTFweC8xLjJlbSBIZWx2ZXRpY2EgTmV1ZSxzYW5zLXNlcmlmIWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzowIWltcG9ydGFudDtwYWRkaW5nOjVweCAycHggNXB4IDA7dGV4dC1kZWNvcmF0aW9uOm5vbmUhaW1wb3J0YW50O3RleHQtc2hhZG93Om5vbmUhaW1wb3J0YW50O3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1kaXYuanAtY2Fyb3VzZWwtYnV0dG9ucyBhOmhvdmVye2JvcmRlcjpub25lIWltcG9ydGFudDtjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKX0uanAtY2Fyb3VzZWwtdHJhbnNpdGlvbnMgZGl2LmpwLWNhcm91c2VsLWJ1dHRvbnMgYTpob3Zlcnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fS5qcC1jYXJvdXNlbC1zbGlkZSwuanAtY2Fyb3VzZWwtc2xpZGUgaW1ne3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5qcC1jYXJvdXNlbC1jbG9zZS1oaW50e2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktY29sb3IpO2N1cnNvcjpkZWZhdWx0O2N1cnNvcjpwb2ludGVyO2hlaWdodDo0NXB4O2xldHRlci1zcGFjaW5nOjAhaW1wb3J0YW50O3BhZGRpbmc6MTBweDtwb3NpdGlvbjpmaXhlZDtyaWdodDozMHB4O3RleHQtYWxpZ246cmlnaHQ7dG9wOjIwcHg7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlLW91dDt3aWR0aDo0NXB4O3otaW5kZXg6MTV9LmpwLWNhcm91c2VsLXRyYW5zaXRpb25zIC5qcC1jYXJvdXNlbC1jbG9zZS1oaW50e3RyYW5zaXRpb246Y29sb3IgLjJzIGxpbmVhcn0uanAtY2Fyb3VzZWwtY2xvc2UtaGludCBzdmd7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcik7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzozcHggMnB4fS5qcC1jYXJvdXNlbC1jbG9zZS1oaW50OmhvdmVye2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktY29sb3IpfS5qcC1jYXJvdXNlbC1jbG9zZS1oaW50OmhvdmVyIHNwYW57Ym9yZGVyLWNvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktY29sb3IpfS5qcC1jYXJvdXNlbC1wYWdpbmF0aW9uLWNvbnRhaW5lcntmbGV4OjE7bWFyZ2luOjAgMTVweCAwIDM1cHh9LmpwLWNhcm91c2VsLXBhZ2luYXRpb24sLmpwLXN3aXBlci1wYWdpbmF0aW9ue2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktY29sb3IpO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo0MDA7cG9zaXRpb246c3RhdGljIWltcG9ydGFudDt3aGl0ZS1zcGFjZTpub3dyYXB9LmpwLWNhcm91c2VsLXBhZ2luYXRpb24tY29udGFpbmVyIC5zd2lwZXItcGFnaW5hdGlvbntsaW5lLWhlaWdodDo4cHg7dGV4dC1hbGlnbjpsZWZ0fS5qcC1jYXJvdXNlbC1wYWdpbmF0aW9ue3BhZGRpbmctbGVmdDo1cHh9LmpwLXN3aXBlci1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LXN1YnRsZS1jb2xvcik7bWFyZ2luOjAgOXB4fS5qcC1zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKX0uanAtc3dpcGVyLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpub3QoLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUpe2JhY2tncm91bmQ6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcik7b3BhY2l0eTouNX0uanAtY2Fyb3VzZWwtaW5mby1mb290ZXIgLmpwLWNhcm91c2VsLXBob3RvLXRpdGxlLWNvbnRhaW5lcntmbGV4LWJhc2lzOjUwdnc7ZmxleDo0O2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVufS5qcC1jYXJvdXNlbC1waG90by1jYXB0aW9uLC5qcC1jYXJvdXNlbC1waG90by10aXRsZXtiYWNrZ3JvdW5kOm5vbmUhaW1wb3J0YW50O2JvcmRlcjpub25lIWltcG9ydGFudDtjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250Om5vcm1hbCAyMHB4LzEuM2VtIEhlbHZldGljYSBOZXVlLHNhbnMtc2VyaWY7bGV0dGVyLXNwYWNpbmc6MCFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6bm9ybWFsO21hcmdpbjowIDAgMTBweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3RleHQtc2hhZG93Om5vbmUhaW1wb3J0YW50O3RleHQtdHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50fS5qcC1jYXJvdXNlbC1pbmZvLWZvb3RlciAuanAtY2Fyb3VzZWwtcGhvdG8tY2FwdGlvbntjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LXN1YnRsZS1jb2xvcik7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjE1cHg7bWFyZ2luOjA7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmpwLWNhcm91c2VsLWluZm8tZm9vdGVyIC5qcC1jYXJvdXNlbC1waG90by1jYXB0aW9uIHB7bWFyZ2luOjB9LmpwLWNhcm91c2VsLXBob3RvLXRpdGxle2ZvbnQtc2l6ZTozMnB4O21hcmdpbi1ib3R0b206MnB4fS5qcC1jYXJvdXNlbC1waG90by1kZXNjcmlwdGlvbntjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LXN1YnRsZS1jb2xvcik7Zm9udC1zaXplOjE2cHg7bWFyZ2luOjI1cHggMDtvdmVyZmxvdzpoaWRkZW47b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkO3dpZHRoOjEwMCV9LmpwLWNhcm91c2VsLXBob3RvLWRlc2NyaXB0aW9uIHB7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tYm90dG9tOjB9LmpwLWNhcm91c2VsLWNvbW1lbnRzIHAgYSwuanAtY2Fyb3VzZWwtaW5mbyBoMiBhLC5qcC1jYXJvdXNlbC1waG90by1kZXNjcmlwdGlvbiBwIGF7Ym9yZGVyOm5vbmUhaW1wb3J0YW50O2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktY29sb3IpIWltcG9ydGFudDtmb250LXN0eWxlOm5vcm1hbCFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NDAwIWltcG9ydGFudDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIWltcG9ydGFudH0uanAtY2Fyb3VzZWwtcGhvdG8tZGVzY3JpcHRpb24gcCBiLC5qcC1jYXJvdXNlbC1waG90by1kZXNjcmlwdGlvbiBwIHN0cm9uZ3tjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LXN1YnRsZS1jb2xvcik7Zm9udC13ZWlnaHQ6NzAwfS5qcC1jYXJvdXNlbC1waG90by1kZXNjcmlwdGlvbiBwIGVtLC5qcC1jYXJvdXNlbC1waG90by1kZXNjcmlwdGlvbiBwIGl7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpO2ZvbnQtc3R5bGU6aXRhbGljfS5qcC1jYXJvdXNlbC1jb21tZW50cyBwIGE6aG92ZXIsLmpwLWNhcm91c2VsLWluZm8gaDIgYTpob3ZlciwuanAtY2Fyb3VzZWwtcGhvdG8tZGVzY3JpcHRpb24gcCBhOmhvdmVye2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktc3VidGxlLWNvbG9yKSFpbXBvcnRhbnR9LmpwLWNhcm91c2VsLXBob3RvLWRlc2NyaXB0aW9uIHA6ZW1wdHl7ZGlzcGxheTpub25lfS5qcC1jYXJvdXNlbC1jb21tZW50cy13cmFwcGVyIGgxOmFmdGVyLC5qcC1jYXJvdXNlbC1jb21tZW50cy13cmFwcGVyIGgxOmJlZm9yZSwuanAtY2Fyb3VzZWwtcGhvdG8taW5mbyBoMTphZnRlciwuanAtY2Fyb3VzZWwtcGhvdG8taW5mbyBoMTpiZWZvcmV7Y29udGVudDpub25lIWltcG9ydGFudH0uanAtY2Fyb3VzZWwtY2FwdGlvbntmb250LXNpemU6MTRweDtmb250LXdlaWdodDo0MDA7bWFyZ2luOjB9LmpwLWNhcm91c2VsLWltYWdlLW1ldGF7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcik7ZGlzcGxheTpub25lO2ZvbnQtc2l6ZToxM3B4O2ZvbnQ6MTJweC8xLjQgSGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7d2lkdGg6MTAwJX0uanAtY2Fyb3VzZWwtaW1hZ2UtbWV0YS5qcC1jYXJvdXNlbC1zaG93e2Rpc3BsYXk6YmxvY2t9LmpwLWNhcm91c2VsLWltYWdlLW1ldGEgaDUsLmpwLWNhcm91c2VsLWltYWdlLW1ldGEgbGl7YmFja2dyb3VuZDpub25lIWltcG9ydGFudDtib3JkZXI6bm9uZSFpbXBvcnRhbnQ7Ym90dG9tOmF1dG8haW1wb3J0YW50O2ZvbnQtZmFtaWx5OkhlbHZldGljYSBOZXVlLHNhbnMtc2VyaWYhaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjQwMCFpbXBvcnRhbnQ7bGVmdDphdXRvIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjNlbSFpbXBvcnRhbnQ7cG9zaXRpb246aW5oZXJpdCFpbXBvcnRhbnQ7cmlnaHQ6YXV0byFpbXBvcnRhbnQ7dG9wOmF1dG8haW1wb3J0YW50fS5qcC1jYXJvdXNlbC1pbWFnZS1tZXRhIHVse2xpc3Qtc3R5bGU6bm9uZSFpbXBvcnRhbnQ7bWFyZ2luOjAhaW1wb3J0YW50O3BhZGRpbmc6MCFpbXBvcnRhbnR9LmpwLWNhcm91c2VsLWltYWdlLW1ldGEgbGl7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcikhaW1wb3J0YW50O2Rpc3BsYXk6aW5saW5lLWJsb2NrIWltcG9ydGFudDtmb250LXNpemU6MTNweCFpbXBvcnRhbnQ7bWFyZ2luOjAgMiUgMTVweCAwIWltcG9ydGFudDt2ZXJ0aWNhbC1hbGlnbjp0b3AhaW1wb3J0YW50O3dpZHRoOjQ4JSFpbXBvcnRhbnR9LmpwLWNhcm91c2VsLWltYWdlLW1ldGEgaDV7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpIWltcG9ydGFudDtmb250LXNpemU6MTBweCFpbXBvcnRhbnQ7bGV0dGVyLXNwYWNpbmc6LjFlbSFpbXBvcnRhbnQ7bWFyZ2luOjAgMCAycHghaW1wb3J0YW50O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZSFpbXBvcnRhbnR9YS5qcC1jYXJvdXNlbC1pbWFnZS1kb3dubG9hZHtjbGVhcjpib3RoO2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktc3VidGxlLWNvbG9yKTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTRweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MTt0ZXh0LWRlY29yYXRpb246bm9uZX1hLmpwLWNhcm91c2VsLWltYWdlLWRvd25sb2FkIHN2Z3tkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW46MCAzcHg7cGFkZGluZy1ib3R0b206MnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1hLmpwLWNhcm91c2VsLWltYWdlLWRvd25sb2FkIHNwYW4ucGhvdG8tc2l6ZXtib3JkZXItcmFkaXVzOjFlbTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTFweDttYXJnaW4tbGVmdDoycHh9YS5qcC1jYXJvdXNlbC1pbWFnZS1kb3dubG9hZCBzcGFuLnBob3RvLXNpemUtdGltZXN7cGFkZGluZzowIDFweCAwIDJweH0uanAtY2Fyb3VzZWwtY29tbWVudHN7YmFja2dyb3VuZDpub25lIHRyYW5zcGFyZW50O2JvdHRvbToxMHB4O2ZvbnQ6MTVweC8xLjcgSGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi10b3A6MjBweDt3aWR0aDoxMDAlfS5qcC1jYXJvdXNlbC1jb21tZW50cyBwIGE6YWN0aXZlLC5qcC1jYXJvdXNlbC1jb21tZW50cyBwIGE6Zm9jdXMsLmpwLWNhcm91c2VsLWNvbW1lbnRzIHAgYTpob3Zlcntjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKSFpbXBvcnRhbnR9LmpwLWNhcm91c2VsLWNvbW1lbnR7YmFja2dyb3VuZDpub25lIHRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktc3VidGxlLWNvbG9yKTtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6YXV0bzt3aWR0aDoxMDAlfS5qcC1jYXJvdXNlbC1jb21tZW50Ky5qcC1jYXJvdXNlbC1jb21tZW50e21hcmdpbi10b3A6MjBweH0uanAtY2Fyb3VzZWwtY29tbWVudDpsYXN0LW9mLXR5cGV7bWFyZ2luLWJvdHRvbToyMHB4fS5qcC1jYXJvdXNlbC1jb21tZW50IHB7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpIWltcG9ydGFudH0uanAtY2Fyb3VzZWwtY29tbWVudCAuY29tbWVudC1hdXRob3J7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmU7ZmxvYXQ6bm9uZTtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo1MDA7bWFyZ2luOjA7cGFkZGluZzowO3dpZHRoOmF1dG99LmpwLWNhcm91c2VsLWNvbW1lbnQgLmNvbW1lbnQtYXV0aG9yIGF7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcil9LmpwLWNhcm91c2VsLWNvbW1lbnQgLmNvbW1lbnQtZ3JhdmF0YXJ7ZmxvYXQ6bm9uZTttYXJnaW4tcmlnaHQ6MTBweH0uanAtY2Fyb3VzZWwtY29tbWVudCAuY29tbWVudC1jb250ZW50e2JvcmRlcjpub25lO3BhZGRpbmc6MH0uanAtY2Fyb3VzZWwtY29tbWVudCAuYXZhdGFye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JvcmRlcjpub25lIWltcG9ydGFudDtib3JkZXItcmFkaXVzOjRweDtoZWlnaHQ6NjRweDttYXJnaW46MDttaW4taGVpZ2h0OjY0cHg7bWluLXdpZHRoOjY0cHg7cGFkZGluZzowIWltcG9ydGFudDt3aWR0aDo2NHB4fS5qcC1jYXJvdXNlbC1jb21tZW50IC5jb21tZW50LWRhdGV7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tanAtY2Fyb3VzZWwtYmctZmFkZWQtY29sb3IpO2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktc3VidGxlLWNvbG9yKTtmb250LXNpemU6MTFweDttYXJnaW4tYm90dG9tOjZweH0janAtY2Fyb3VzZWwtY29tbWVudC1mb3Jte21hcmdpbjowIDAgMTBweCFpbXBvcnRhbnQ7d2lkdGg6MTAwJX0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLmpwLWNhcm91c2VsLWlzLWRpc2FibGVke29wYWNpdHk6LjU7cG9pbnRlci1ldmVudHM6bm9uZX10ZXh0YXJlYSNqcC1jYXJvdXNlbC1jb21tZW50LWZvcm0tY29tbWVudC1maWVsZHtiYWNrZ3JvdW5kOnZhcigtLWpwLWNhcm91c2VsLWJnLWZhZGVkLWNvbG9yKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWpwLWNhcm91c2VsLWJvcmRlci1jb2xvcik7Ym9yZGVyLXJhZGl1czozcHg7Ym94LXNoYWRvdzppbnNldCAycHggMnB4IDJweCByZ2JhKDAsMCwwLC4xKTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpO2Zsb2F0Om5vbmU7Zm9udDoxNnB4LzEuNCBIZWx2ZXRpY2EgTmV1ZSxzYW5zLXNlcmlmIWltcG9ydGFudDtoZWlnaHQ6MTQ3cHg7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MTBweCAxMHB4IDVweDt3aWR0aDoxMDAlfXRleHRhcmVhI2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1jb21tZW50LWZpZWxkOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiM1NTV9dGV4dGFyZWEjanAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLWNvbW1lbnQtZmllbGQ6Zm9jdXN7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1iZy1mYWRlZC1jb2xvcik7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpfXRleHRhcmVhI2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1jb21tZW50LWZpZWxkOmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktc3VidGxlLWNvbG9yKX0janAtY2Fyb3VzZWwtbG9hZGluZy1vdmVybGF5e2JvdHRvbTowO2Rpc3BsYXk6bm9uZTtsZWZ0OjA7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6MDt0b3A6MH0janAtY2Fyb3VzZWwtbG9hZGluZy13cmFwcGVye2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMHZoO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwdnd9I2pwLWNhcm91c2VsLWxpYnJhcnktbG9hZGluZywjanAtY2Fyb3VzZWwtbGlicmFyeS1sb2FkaW5nOmFmdGVye2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDo0MHB4O3dpZHRoOjQwcHh9I2pwLWNhcm91c2VsLWxpYnJhcnktbG9hZGluZ3thbmltYXRpb246bG9hZDggMS4xcyBsaW5lYXIgaW5maW5pdGU7Ym9yZGVyOjhweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMik7Ym9yZGVyLWxlZnQ6OHB4IHNvbGlkIHZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktY29sb3IpO2Zsb2F0OmxlZnQ7Zm9udC1zaXplOjEwcHg7bWFyZ2luOjIycHggMCAwIDEwcHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1pbmRlbnQ6LTk5OTllbTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLXNwaW5uZXIsI2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1zcGlubmVyOmFmdGVye2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoyMHB4O3dpZHRoOjIwcHh9I2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1zcGlubmVye2FuaW1hdGlvbjpsb2FkOCAxLjFzIGxpbmVhciBpbmZpbml0ZTtib3JkZXI6NHB4IHNvbGlkIGhzbGEoMCwwJSwxMDAlLC4yKTtib3JkZXItbGVmdDo0cHggc29saWQgdmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcik7Ym90dG9tOjA7ZGlzcGxheTpub25lO2Zsb2F0OmxlZnQ7Zm9udC1zaXplOjEwcHg7bGVmdDowO21hcmdpbjowIGF1dG87cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0ZXh0LWluZGVudDotOTk5OWVtO3RvcDpjYWxjKDUwJSAtIDE1cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfUBrZXlmcmFtZXMgbG9hZDh7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19LmpwLWNhcm91c2VsLWluZm8tY29udGVudC13cmFwcGVye21hcmdpbjphdXRvO21heC13aWR0aDo4MDBweH0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLXN1Ym1pdC1hbmQtaW5mby13cmFwcGVye2Rpc3BsYXk6bm9uZTtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJX0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLWNvbW1lbnRpbmctYXMgaW5wdXR7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcik7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1qcC1jYXJvdXNlbC1ib3JkZXItY29sb3IpO2JvcmRlci1yYWRpdXM6MnB4O2JveC1zaGFkb3c6aW5zZXQgMnB4IDJweCAycHggcmdiYSgwLDAsMCwuMik7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpO2Zsb2F0OmxlZnQ7Zm9udDoxNnB4LzEuNCBIZWx2ZXRpY2EgTmV1ZSxzYW5zLXNlcmlmIWltcG9ydGFudDtwYWRkaW5nOjEwcHg7d2lkdGg6Mjg1cHh9I2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1jb21tZW50aW5nLWFzIGlucHV0OmZvY3Vze2JhY2tncm91bmQ6dmFyKC0tanAtY2Fyb3VzZWwtYmctZmFkZWQtY29sb3IpO2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktc3VidGxlLWNvbG9yKX0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLWNvbW1lbnRpbmctYXMgcHtmbG9hdDpsZWZ0O2ZvbnQ6NDAwIDEzcHgvMS43IEhlbHZldGljYSBOZXVlLHNhbnMtc2VyaWYhaW1wb3J0YW50O21hcmdpbjoyMnB4IDAgMH0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLWNvbW1lbnRpbmctYXMgZmllbGRzZXR7Ym9yZGVyOm5vbmU7Y2xlYXI6Ym90aDtmbG9hdDpsZWZ0O21hcmdpbjoyMHB4IDAgMDtwYWRkaW5nOjB9I2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1jb21tZW50aW5nLWFzIGxhYmVse2Zsb2F0OmxlZnQ7Zm9udDo0MDAgMTNweC8xLjcgSGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7bWFyZ2luOjAgMjBweCAzcHggMDt3aWR0aDoxMDBweH0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLWJ1dHRvbi1zdWJtaXR7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcik7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKTtib3JkZXItcmFkaXVzOjNweDtjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKTtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNHB4O21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXRvcDoyMHB4O3BhZGRpbmc6OHB4IDE2cHh9I2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1idXR0b24tc3VibWl0OmFjdGl2ZSwjanAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLWJ1dHRvbi1zdWJtaXQ6Zm9jdXN7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1wcmltYXJ5LWNvbG9yKTtjb2xvcjp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcil9I2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1jb250YWluZXJ7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1zdWJ0bGUtY29sb3IpO21hcmdpbi1ib3R0b206MTVweDttYXJnaW4tdG9wOjIwcHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9I2pwLWNhcm91c2VsLWNvbW1lbnQtcG9zdC1yZXN1bHRze2Rpc3BsYXk6bm9uZTtvdmVyZmxvdzphdXRvO3dpZHRoOjEwMCV9I2pwLWNhcm91c2VsLWNvbW1lbnQtcG9zdC1yZXN1bHRzIHNwYW57Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1qcC1jYXJvdXNlbC1ib3JkZXItY29sb3IpO2JvcmRlci1yYWRpdXM6MnB4O2JveC1zaGFkb3c6aW5zZXQgMCAwIDVweCAwIHJnYmEoMCwwLDAsLjIpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmJsb2NrO2ZvbnQ6MTNweC8xLjQgSGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7bWFyZ2luLXRvcDoyMHB4O292ZXJmbG93OmF1dG87cGFkZGluZzoxZW0gMDt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoxMDAlfS5qcC1jYXJvdXNlbC1jb21tZW50LXBvc3QtZXJyb3J7Y29sb3I6I2RmNDkyNn0janAtY2Fyb3VzZWwtY29tbWVudHMtY2xvc2VkLCNqcC1jYXJvdXNlbC1jb21tZW50cy1sb2FkaW5ne2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktc3VidGxlLWNvbG9yKTtkaXNwbGF5Om5vbmV9I2pwLWNhcm91c2VsLWNvbW1lbnRzLWxvYWRpbmd7Ym90dG9tOjEwcHg7Zm9udDo0MDAgMTVweC8xLjcgSGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbToyMHB4O21hcmdpbi10b3A6MjBweDt0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTAwJX0uanAtY2Fyb3VzZWwtcGhvdG8taWNvbnMtY29udGFpbmVye2Rpc3BsYXk6YmxvY2s7ZmxleDoxO21hcmdpbjowIDIwcHggMCAzMHB4O3RleHQtYWxpZ246cmlnaHQ7d2hpdGUtc3BhY2U6bm93cmFwfS5qcC1jYXJvdXNlbC1pY29uLWJ0bntiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjY0cHg7cGFkZGluZzoxNnB4O3RleHQtZGVjb3JhdGlvbjpub25lfS5qcC1jYXJvdXNlbC1pY29ue2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDowO3BhZGRpbmc6NHB4IDNweCAzcHg7cG9pbnRlci1ldmVudHM6bm9uZTt3aWR0aDozMXB4fS5qcC1jYXJvdXNlbC1pY29uLC5qcC1jYXJvdXNlbC1pY29uIHN2Z3tkaXNwbGF5OmlubGluZS1ibG9ja30uanAtY2Fyb3VzZWwtb3ZlcmxheSByZWN0e2ZpbGw6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcil9LmpwLWNhcm91c2VsLXNlbGVjdGVkIC5qcC1jYXJvdXNlbC1pY29ue2JhY2tncm91bmQ6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcil9LmpwLWNhcm91c2VsLXNlbGVjdGVkIHJlY3R7ZmlsbDp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcil9LmpwLWNhcm91c2VsLWljb24tY29tbWVudHMuanAtY2Fyb3VzZWwtc2hvd3tkaXNwbGF5OmlubGluZS1ibG9ja30uanAtY2Fyb3VzZWwtaWNvbiAuanAtY2Fyb3VzZWwtaGFzLWNvbW1lbnRzLWluZGljYXRvcntiYWNrZ3JvdW5kOnZhcigtLWpwLWNhcm91c2VsLXByaW1hcnktY29sb3IpO2JvcmRlci1yYWRpdXM6NHB4O2NvbG9yOnZhcigtLWpwLWNhcm91c2VsLWJnLWNvbG9yKTtkaXNwbGF5Om5vbmU7Zm9udC1mYW1pbHk6SGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjE7bWFyZ2luLWxlZnQ6LTE2cHg7cGFkZGluZzoycHggNHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOnRvcH0uanAtY2Fyb3VzZWwtc2VsZWN0ZWQgLmpwLWNhcm91c2VsLWljb24gLmpwLWNhcm91c2VsLWhhcy1jb21tZW50cy1pbmRpY2F0b3J7YmFja2dyb3VuZDp2YXIoLS1qcC1jYXJvdXNlbC1iZy1jb2xvcik7Y29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtcHJpbWFyeS1jb2xvcil9LmpwLWNhcm91c2VsLWhhcy1jb21tZW50cy1pbmRpY2F0b3IuanAtY2Fyb3VzZWwtc2hvd3tkaXNwbGF5OmlubGluZS1ibG9ja31AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzYwcHgpey5qcC1jYXJvdXNlbC1idXR0b25zLC5qcC1jYXJvdXNlbC1vdmVybGF5IC5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLW5leHQsLmpwLWNhcm91c2VsLW92ZXJsYXkgLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1idXR0b24tcHJldntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5qcC1jYXJvdXNlbC1pbWFnZS1tZXRhe2JveC1zaXppbmc6Ym9yZGVyLWJveDtmbG9hdDpub25lIWltcG9ydGFudDttYXJnaW4tbGVmdDowO3dpZHRoOjEwMCUhaW1wb3J0YW50fS5qcC1jYXJvdXNlbC1jbG9zZS1oaW50e2ZvbnQtc2l6ZToyNnB4IWltcG9ydGFudDtwb3NpdGlvbjpmaXhlZCFpbXBvcnRhbnQ7cmlnaHQ6MTBweDt0b3A6MTBweH0uYWRtaW4tYmFyIC5qcC1jYXJvdXNlbC1jbG9zZS1oaW50e3RvcDo0MHB4fS5qcC1jYXJvdXNlbC1zbGlkZSBpbWd7b3BhY2l0eToxfS5qcC1jYXJvdXNlbC13cmFwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tanAtY2Fyb3VzZWwtYmctY29sb3IpfS5qcC1jYXJvdXNlbC1mYWRlYXdheSwuanAtY2Fyb3VzZWwtaW5mbz4uanAtY2Fyb3VzZWwtcGhvdG8taW5mb3tkaXNwbGF5Om5vbmV9LmpwLWNhcm91c2VsLWNvbW1lbnRzLXdyYXBwZXI+LmpwLWNhcm91c2VsLXBob3RvLWluZm97ZGlzcGxheTpibG9ja30uanAtY2Fyb3VzZWwtY2FwdGlvbntvdmVyZmxvdzp2aXNpYmxlIWltcG9ydGFudH0uanAtY2Fyb3VzZWwtaW5mby1mb290ZXIgLmpwLWNhcm91c2VsLXBob3RvLXRpdGxlLWNvbnRhaW5lcntkaXNwbGF5Om5vbmV9LmpwLWNhcm91c2VsLXBob3RvLWljb25zLWNvbnRhaW5lcnttYXJnaW46MCAxMHB4IDAgMDt3aGl0ZS1zcGFjZTpub3dyYXB9LmpwLWNhcm91c2VsLWljb24tYnRue3BhZGRpbmctbGVmdDoyMHB4fS5qcC1jYXJvdXNlbC1wYWdpbmF0aW9ue3BhZGRpbmctbGVmdDo1cHh9LmpwLWNhcm91c2VsLXBhZ2luYXRpb24tY29udGFpbmVye21hcmdpbi1sZWZ0OjI1cHh9LmpwLWNhcm91c2VsLWNvbW1lbnQgLmF2YXRhcnttaW4td2lkdGg6NDhweH0janAtY2Fyb3VzZWwtY29tbWVudC1mb3JtLWNvbW1lbnRpbmctYXMgZmllbGRzZXQsI2pwLWNhcm91c2VsLWNvbW1lbnQtZm9ybS1jb21tZW50aW5nLWFzIGlucHV0e2Zsb2F0Om5vbmU7d2lkdGg6MTAwJX19LmNvbnRhY3QtZm9ybSAuY2xlYXItZm9ybXtjbGVhcjpib3RofS5jb250YWN0LWZvcm0gaW5wdXR7Zm9udDppbmhlcml0fS5jb250YWN0LWZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVye3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZS1vdXR9LmNvbnRhY3QtZm9ybSBpbnB1dDpob3Zlcjo6cGxhY2Vob2xkZXJ7b3BhY2l0eTouNX0uY29udGFjdC1mb3JtIGlucHV0OmZvY3VzOjpwbGFjZWhvbGRlcntvcGFjaXR5Oi4zfS5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPXRlbF0sLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPXRleHRdLC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT11cmxde2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXJnaW4tYm90dG9tOjEuNWVtO3BhZGRpbmc6MTRweCA3cHg7d2lkdGg6MTAwJX0uY29udGFjdC1mb3JtIHNlbGVjdHttYXJnaW4tYm90dG9tOjEuNWVtO21pbi13aWR0aDoxNTBweDtwYWRkaW5nOjE0cHggN3B4fS5jb250YWN0LWZvcm0gdGV4dGFyZWF7Ym94LXNpemluZzpib3JkZXItYm94O2Zsb2F0Om5vbmU7Zm9udDppbmhlcml0O2hlaWdodDoyMDBweDttYXJnaW4tYm90dG9tOjEuNWVtO3BhZGRpbmc6N3B4O3dpZHRoOjEwMCV9LmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XSwuY29udGFjdC1mb3JtIGlucHV0W3R5cGU9cmFkaW9de2Zsb2F0Om5vbmU7bWFyZ2luOjAgLjc1cmVtIDAgNXB4fS5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF17bWFyZ2luLWxlZnQ6MDt0b3A6MH0uY29udGFjdC1mb3JtIGxhYmVse2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bm9uZTtmb250LXdlaWdodDo3MDA7bWFyZ2luLWJvdHRvbTouMjVlbX0uY29udGFjdC1mb3JtIGxhYmVsLmNvbnNlbnQtaW1wbGljaXQgaW5wdXR7ZGlzcGxheTpub25lfS5jb250YWN0LWZvcm0gbGFiZWwuY2hlY2tib3gsLmNvbnRhY3QtZm9ybSBsYWJlbC5jaGVja2JveC1tdWx0aXBsZSwuY29udGFjdC1mb3JtIGxhYmVsLnJhZGlve2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2Zsb2F0Om5vbmU7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi1ib3R0b206LjI1ZW19LmNvbnRhY3QtZm9ybSAuZ3J1bmlvbi1maWVsZC1jaGVja2JveC1tdWx0aXBsZS13cmFwLC5jb250YWN0LWZvcm0gLmdydW5pb24tZmllbGQtY2hlY2tib3gtd3JhcCwuY29udGFjdC1mb3JtIC5ncnVuaW9uLWZpZWxkLWNvbnNlbnQtd3JhcCwuY29udGFjdC1mb3JtIC5ncnVuaW9uLWZpZWxkLXJhZGlvLXdyYXB7bWFyZ2luLWJvdHRvbToxZW19LmNvbnRhY3QtZm9ybSBsYWJlbCBzcGFue2ZvbnQtc2l6ZTo4NSU7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi1sZWZ0Oi4yNWVtfS5jb250YWN0LWZvcm0tc3VibWlzc2lvbnttYXJnaW4tYm90dG9tOjRlbTtwYWRkaW5nOjEuNWVtIDFlbX0uY29udGFjdC1mb3JtLXN1Ym1pc3Npb24gcHt3b3JkLXdyYXA6YnJlYWstd29yZDttYXJnaW46MCBhdXRvfS5mb3JtLWVycm9ycyAuZm9ybS1lcnJvci1tZXNzYWdle2NvbG9yOnJlZH0udGV4dHdpZGdldCAuY29udGFjdC1mb3JtIGlucHV0W3R5cGU9ZW1haWxdLC50ZXh0d2lkZ2V0IC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT10ZWxdLC50ZXh0d2lkZ2V0IC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT10ZXh0XSwudGV4dHdpZGdldCAuY29udGFjdC1mb3JtIGlucHV0W3R5cGU9dXJsXSwudGV4dHdpZGdldCAuY29udGFjdC1mb3JtIHRleHRhcmVhLC53cC1ibG9jay1jb2x1bW4gLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwud3AtYmxvY2stY29sdW1uIC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT10ZWxdLC53cC1ibG9jay1jb2x1bW4gLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPXRleHRdLC53cC1ibG9jay1jb2x1bW4gLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPXVybF0sLndwLWJsb2NrLWNvbHVtbiAuY29udGFjdC1mb3JtIHRleHRhcmVhe3dpZHRoOjEwMCV9I2pldHBhY2stY2hlY2stZmVlZGJhY2stc3BhbXttYXJnaW46MXB4IDhweCAwIDB9LmpldHBhY2stY2hlY2stZmVlZGJhY2stc3BhbS1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi10b3A6N3B4fS53cC1ibG9jay1qZXRwYWNrLWNvbnRhY3QtZm9ybXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS53cC1ibG9jay1qZXRwYWNrLWJ1dHRvbiwud3AtYmxvY2stamV0cGFjay1jb250YWN0LWZvcm0gLmdydW5pb24tZmllbGQtd3JhcHtmbGV4OjAgMCAxMDAlfS53cC1ibG9jay1qZXRwYWNrLWJ1dHRvbi5hbGlnbnJpZ2h0IGJ1dHRvbntmbG9hdDpyaWdodH0ud3AtYmxvY2stamV0cGFjay1jb250YWN0LWZvcm0gLmdydW5pb24tZmllbGQtd3JhcHtib3JkZXItcmlnaHQ6MTVweCBzb2xpZCB0cmFuc3BhcmVudH0ud3AtYmxvY2stamV0cGFjay1jb250YWN0LWZvcm0gLmdydW5pb24tZmllbGQtd2lkdGgtMjUtd3JhcHtmbGV4OjAgMCAyNSV9LndwLWJsb2NrLWpldHBhY2stY29udGFjdC1mb3JtIC5ncnVuaW9uLWZpZWxkLXdpZHRoLTUwLXdyYXB7ZmxleDowIDAgNTAlfS53cC1ibG9jay1qZXRwYWNrLWNvbnRhY3QtZm9ybSAuZ3J1bmlvbi1maWVsZC13aWR0aC03NS13cmFwe2ZsZXg6MCAwIDc1JX0uZ3J1bmlvbi1maWVsZC1jaGVja2JveC13cmFwLC5ncnVuaW9uLWZpZWxkLWNvbnNlbnQtd3JhcHthbGlnbi1zZWxmOmNlbnRlcn1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjAwcHgpey5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPXRlbF0sLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPXRleHRdLC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT11cmxde3dpZHRoOjUwJX0ud3AtYmxvY2stamV0cGFjay1jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sLndwLWJsb2NrLWpldHBhY2stY29udGFjdC1mb3JtIGlucHV0W3R5cGU9dGVsXSwud3AtYmxvY2stamV0cGFjay1jb250YWN0LWZvcm0gaW5wdXRbdHlwZT10ZXh0XSwud3AtYmxvY2stamV0cGFjay1jb250YWN0LWZvcm0gaW5wdXRbdHlwZT11cmxde3dpZHRoOjEwMCV9fS5qZXRwYWNrLWVtcHR5LXNwYW0sLmpldHBhY2stZW1wdHktc3BhbS1jb250YWluZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmpldHBhY2stZW1wdHktc3BhbS1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi10b3A6N3B4fS53cC1ibG9jay1qZXRwYWNrLWNvbnRhY3QtZm9ybSAud3AtYmxvY2stc3BhY2Vye3dpZHRoOjEwMCV9LmluZmluaXRlLWxvYWRlcntjb2xvcjojMDAwO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjI4cHg7dGV4dC1hbGlnbjpjZW50ZXJ9I2luZmluaXRlLWhhbmRsZSBzcGFue2JhY2tncm91bmQ6IzMzMztib3JkZXItcmFkaXVzOjFweDtjb2xvcjojZjBmMGYxO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxM3B4O3BhZGRpbmc6NnB4IDE2cHh9QGtleWZyYW1lcyBzcGlubmVyLWlubmVyezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fS5pbmZpbml0ZS1sb2FkZXIgLnNwaW5uZXItaW5uZXIgZGl2e2FuaW1hdGlvbjpzcGlubmVyLWlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtiYWNrZ3JvdW5kOiMwMDA7Ym9yZGVyLXJhZGl1czozcHgvNnB4O2hlaWdodDoxMnB4O2xlZnQ6NDdweDtvdXRsaW5lOjFweCBzb2xpZCAjZmZmO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNHB4O3RyYW5zZm9ybS1vcmlnaW46M3B4IDI2cHg7d2lkdGg6NnB4fS5pbmZpbml0ZS1sb2FkZXIgLnNwaW5uZXItaW5uZXIgZGl2OmZpcnN0LWNoaWxke2FuaW1hdGlvbi1kZWxheTotLjkxNjY2NjY2NjdzO2JhY2tncm91bmQ6IzAwMDt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfS5pbmZpbml0ZS1sb2FkZXIgLnNwaW5uZXItaW5uZXIgZGl2Om50aC1jaGlsZCgyKXthbmltYXRpb24tZGVsYXk6LS44MzMzMzMzMzMzcztiYWNrZ3JvdW5kOiMwMDA7dHJhbnNmb3JtOnJvdGF0ZSgzMGRlZyl9LmluZmluaXRlLWxvYWRlciAuc3Bpbm5lci1pbm5lciBkaXY6bnRoLWNoaWxkKDMpe2FuaW1hdGlvbi1kZWxheTotLjc1cztiYWNrZ3JvdW5kOiMwMDA7dHJhbnNmb3JtOnJvdGF0ZSg2MGRlZyl9LmluZmluaXRlLWxvYWRlciAuc3Bpbm5lci1pbm5lciBkaXY6bnRoLWNoaWxkKDQpe2FuaW1hdGlvbi1kZWxheTotLjY2NjY2NjY2NjdzO2JhY2tncm91bmQ6IzAwMDt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKX0uaW5maW5pdGUtbG9hZGVyIC5zcGlubmVyLWlubmVyIGRpdjpudGgtY2hpbGQoNSl7YW5pbWF0aW9uLWRlbGF5Oi0uNTgzMzMzMzMzM3M7YmFja2dyb3VuZDojMDAwO3RyYW5zZm9ybTpyb3RhdGUoMTIwZGVnKX0uaW5maW5pdGUtbG9hZGVyIC5zcGlubmVyLWlubmVyIGRpdjpudGgtY2hpbGQoNil7YW5pbWF0aW9uLWRlbGF5Oi0uNXM7YmFja2dyb3VuZDojMDAwO3RyYW5zZm9ybTpyb3RhdGUoMTUwZGVnKX0uaW5maW5pdGUtbG9hZGVyIC5zcGlubmVyLWlubmVyIGRpdjpudGgtY2hpbGQoNyl7YW5pbWF0aW9uLWRlbGF5Oi0uNDE2NjY2NjY2N3M7YmFja2dyb3VuZDojMDAwO3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0uaW5maW5pdGUtbG9hZGVyIC5zcGlubmVyLWlubmVyIGRpdjpudGgtY2hpbGQoOCl7YW5pbWF0aW9uLWRlbGF5Oi0uMzMzMzMzMzMzM3M7YmFja2dyb3VuZDojMDAwO3RyYW5zZm9ybTpyb3RhdGUoMjEwZGVnKX0uaW5maW5pdGUtbG9hZGVyIC5zcGlubmVyLWlubmVyIGRpdjpudGgtY2hpbGQoOSl7YW5pbWF0aW9uLWRlbGF5Oi0uMjVzO2JhY2tncm91bmQ6IzAwMDt0cmFuc2Zvcm06cm90YXRlKDI0MGRlZyl9LmluZmluaXRlLWxvYWRlciAuc3Bpbm5lci1pbm5lciBkaXY6bnRoLWNoaWxkKDEwKXthbmltYXRpb24tZGVsYXk6LS4xNjY2NjY2NjY3cztiYWNrZ3JvdW5kOiMwMDA7dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpfS5pbmZpbml0ZS1sb2FkZXIgLnNwaW5uZXItaW5uZXIgZGl2Om50aC1jaGlsZCgxMSl7YW5pbWF0aW9uLWRlbGF5Oi0uMDgzMzMzMzMzM3M7YmFja2dyb3VuZDojMDAwO3RyYW5zZm9ybTpyb3RhdGUoMzAwZGVnKX0uaW5maW5pdGUtbG9hZGVyIC5zcGlubmVyLWlubmVyIGRpdjpudGgtY2hpbGQoMTIpe2FuaW1hdGlvbi1kZWxheTowcztiYWNrZ3JvdW5kOiMwMDA7dHJhbnNmb3JtOnJvdGF0ZSgzMzBkZWcpfS5pbmZpbml0ZS1sb2FkZXIgLnNwaW5uZXJ7YmFja2dyb3VuZDpub25lO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyOHB4O292ZXJmbG93OmhpZGRlbjt3aWR0aDoyOHB4fS5pbmZpbml0ZS1sb2FkZXIgLnNwaW5uZXItaW5uZXJ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKSBzY2FsZSguMjgpO3RyYW5zZm9ybS1vcmlnaW46MCAwO3dpZHRoOjEwMCV9LmluZmluaXRlLWxvYWRlciAuc3Bpbm5lci1pbm5lciBkaXZ7Ym94LXNpemluZzpjb250ZW50LWJveH0jaW5maW5pdGUtaGFuZGxlIHNwYW4gYnV0dG9uLCNpbmZpbml0ZS1oYW5kbGUgc3BhbiBidXR0b246Zm9jdXMsI2luZmluaXRlLWhhbmRsZSBzcGFuIGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2NvbG9yOmluaGVyaXQ7Y3Vyc29yOmluaGVyaXQ7ZGlzcGxheTppbmxpbmU7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjA7cGFkZGluZzowO3Bvc2l0aW9uOnN0YXRpY30jaW5maW5pdGUtaGFuZGxlIHNwYW4gYnV0dG9uOjotbW96LWZvY3VzLWlubmVye2JvcmRlcjpub25lO21hcmdpbjowO3BhZGRpbmc6MH1AbWVkaWEgKG1heC13aWR0aDo4MDBweCl7I2luZmluaXRlLWhhbmRsZSBzcGFuOmJlZm9yZXtkaXNwbGF5Om5vbmV9I2luZmluaXRlLWhhbmRsZSBzcGFue2Rpc3BsYXk6YmxvY2t9fSNpbmZpbml0ZS1mb290ZXJ7Ym90dG9tOi01MHB4O2xlZnQ6MDtwb3NpdGlvbjpmaXhlZDt3aWR0aDoxMDAlfSNpbmZpbml0ZS1mb290ZXIgYXt0ZXh0LWRlY29yYXRpb246bm9uZX0jaW5maW5pdGUtZm9vdGVyIC5ibG9nLWNyZWRpdHMgYTpob3ZlciwjaW5maW5pdGUtZm9vdGVyIC5ibG9nLWluZm8gYTpob3Zlcntjb2xvcjojNDQ0O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9I2luZmluaXRlLWZvb3RlciAuY29udGFpbmVye2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjgpO2JvcmRlcjpzb2xpZCByZ2JhKDAsMCwwLC4xKTtib3JkZXItd2lkdGg6MXB4IDAgMDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjAgYXV0bztvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxcHggMjBweDt3aWR0aDo3ODBweH0jaW5maW5pdGUtZm9vdGVyIC5ibG9nLWNyZWRpdHMsI2luZmluaXRlLWZvb3RlciAuYmxvZy1pbmZve2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaW5lLWhlaWdodDoyNXB4fSNpbmZpbml0ZS1mb290ZXIgLmJsb2ctaW5mb3tmbG9hdDpsZWZ0O292ZXJmbG93OmhpZGRlbjt0ZXh0LWFsaWduOmxlZnQ7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6NDAlfSNpbmZpbml0ZS1mb290ZXIgLmJsb2ctY3JlZGl0c3tmbG9hdDpyaWdodDtmb250LXdlaWdodDo0MDA7d2lkdGg6NjAlfSNpbmZpbml0ZS1mb290ZXIgLmJsb2ctaW5mbyBhe2NvbG9yOiMxMTE7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NzAwfSNpbmZpbml0ZS1mb290ZXIgLmJsb2ctY3JlZGl0c3tjb2xvcjojODg4O2ZvbnQtc2l6ZToxMnB4O3RleHQtYWxpZ246cmlnaHR9I2luZmluaXRlLWZvb3RlciAuYmxvZy1jcmVkaXRzIGF7Y29sb3I6IzY0Njk3MH0uaW5maW5pdHktZW5kLm5ldmVyZW5kaW5nICNpbmZpbml0ZS1mb290ZXJ7ZGlzcGxheTpub25lfUBtZWRpYSAobWF4LXdpZHRoOjY0MHB4KXsjaW5maW5pdGUtZm9vdGVyIC5jb250YWluZXJ7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOjEwMCV9I2luZmluaXRlLWZvb3RlciAuYmxvZy1pbmZve3dpZHRoOjMwJX0jaW5maW5pdGUtZm9vdGVyIC5ibG9nLWNyZWRpdHN7d2lkdGg6NzAlfSNpbmZpbml0ZS1mb290ZXIgLmJsb2ctY3JlZGl0cywjaW5maW5pdGUtZm9vdGVyIC5ibG9nLWluZm8gYXtmb250LXNpemU6MTBweH0jaW5maW5pdGUtZm9vdGVye3Bvc2l0aW9uOnN0YXRpY319I2luZmluaXRlLWFyaWF7Y2xpcDpyZWN0KDAgMCAwIDApO2JvcmRlcjowO2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxcHh9LmluZmluaXRlLXdyYXA6Zm9jdXN7b3V0bGluZTowIWltcG9ydGFudH0jd3BhZG1pbmJhciBsaSN3cC1hZG1pbi1iYXItYWRtaW4tYmFyLWxpa2VzLXdpZGdldHtvdmVyZmxvdzpoaWRkZW47d2lkdGg6NjFweH0jd3BhZG1pbmJhciBpZnJhbWUuYWRtaW4tYmFyLWxpa2VzLXdpZGdldHtib3JkZXItd2lkdGg6MDtoZWlnaHQ6MjhweDttaW4taGVpZ2h0OjI4cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6NjFweH1kaXYuamV0cGFjay1saWtlcy13aWRnZXQtd3JhcHBlcnttaW4taGVpZ2h0OjUwcHg7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJX1kaXYuamV0cGFjay1saWtlcy13aWRnZXQtd3JhcHBlciAuc2QtbGluay1jb2xvcntmb250LXNpemU6MTJweH1kaXYuamV0cGFjay1jb21tZW50LWxpa2VzLXdpZGdldC13cmFwcGVye21pbi1oZWlnaHQ6MzFweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlfWRpdi5qZXRwYWNrLWNvbW1lbnQtbGlrZXMtd2lkZ2V0LXdyYXBwZXIgaWZyYW1le21hcmdpbi1ib3R0b206MH0jbGlrZXMtb3RoZXItZ3JhdmF0YXJze2JhY2tncm91bmQtY29sb3I6IzJlNDQ1Mztib3JkZXItd2lkdGg6MDtib3gtc2hhZG93OjAgMCAxMHB4ICMyZTQ0NTM7Ym94LXNoYWRvdzowIDAgMTBweCByZ2JhKDQ2LDY4LDgzLC42KTtkaXNwbGF5Om5vbmU7bWluLXdpZHRoOjEzMHB4O3BhZGRpbmc6MTBweCAxMHB4IDEycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAwfSNsaWtlcy1vdGhlci1ncmF2YXRhcnMgKntsaW5lLWhlaWdodDpub3JtYWx9I2xpa2VzLW90aGVyLWdyYXZhdGFycyAubGlrZXMtdGV4dHtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMnB4O3BhZGRpbmctYm90dG9tOjhweH0jbGlrZXMtb3RoZXItZ3JhdmF0YXJzIGxpLCNsaWtlcy1vdGhlci1ncmF2YXRhcnMgdWx7bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO3RleHQtaW5kZW50OjB9I2xpa2VzLW90aGVyLWdyYXZhdGFycyBsaTpiZWZvcmV7Y29udGVudDoiIn0jbGlrZXMtb3RoZXItZ3JhdmF0YXJzIHVsLndwbC1hdmF0YXJze2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxOTBweDtvdmVyZmxvdzphdXRvfSNsaWtlcy1vdGhlci1ncmF2YXRhcnMgdWwud3BsLWF2YXRhcnMgbGl7ZmxvYXQ6bGVmdDtoZWlnaHQ6MzJweDttYXJnaW46MCA1cHggNXB4IDA7d2lkdGg6MzJweH0jbGlrZXMtb3RoZXItZ3JhdmF0YXJzIHVsLndwbC1hdmF0YXJzIGxpIGF7Ym9yZGVyLWJvdHRvbTpub25lIWltcG9ydGFudDtkaXNwbGF5OmJsb2NrO21hcmdpbjowIDJweCAwIDB9I2xpa2VzLW90aGVyLWdyYXZhdGFycyB1bC53cGwtYXZhdGFycyBsaSBhIGltZ3tiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7bWFyZ2luOjAhaW1wb3J0YW50O3BhZGRpbmc6MCFpbXBvcnRhbnQ7cG9zaXRpb246c3RhdGljfWRpdi5zZC1ib3h7Ym9yZGVyLXRvcDoxcHggc29saWQgI2RjZGNkZTtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMyl9LmNvbW1lbnQtbGlrZXMtd2lkZ2V0LC5lbnRyeS1jb250ZW50IC5wb3N0LWxpa2VzLXdpZGdldCwucG9zdC1saWtlcy13aWRnZXR7Ym9yZGVyLXdpZHRoOjA7ZGlzcGxheTpibG9jazttYXJnaW46MH0uY29tbWVudC1saWtlcy13aWRnZXQtcGxhY2Vob2xkZXIsLnBvc3QtbGlrZXMtd2lkZ2V0LXBsYWNlaG9sZGVye2JvcmRlci13aWR0aDowO21hcmdpbjowO3Bvc2l0aW9uOnJlbGF0aXZlfS5jb21tZW50LWxpa2VzLXdpZGdldC1wbGFjZWhvbGRlcntkaXNwbGF5OmZsZXg7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsU2Vnb2UgVUksUm9ib3RvLE94eWdlbi1TYW5zLFVidW50dSxDYW50YXJlbGwsSGVsdmV0aWNhIE5ldWUsc2Fucy1zZXJpZjtoZWlnaHQ6MThweDtwb3NpdGlvbjphYnNvbHV0ZX0uY29tbWVudC1saWtlcy13aWRnZXQtcGxhY2Vob2xkZXI6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFJTNDcGF0aCBmaWxsPSdub25lJyBkPSdNMCAwaDI0djI0SDB6Jy8lM0UlM0NwYXRoIGZpbGw9JyUyMzJFQTJDQycgZD0nbTEyIDIgMi41ODIgNi45NTNMMjIgOS4yNTdsLTUuODIyIDQuNjAyTDE4LjE4IDIxIDEyIDE2Ljg5IDUuODIgMjFsMi4wMDItNy4xNEwyIDkuMjU2bDcuNDE4LS4zMDQnLyUzRSUzQy9zdmclM0UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOjE2cHggMTZweDtjb2xvcjojMmVhMmNjO2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjE2cHg7cGFkZGluZy1yaWdodDo1cHg7cG9zaXRpb246cmVsYXRpdmU7dG9wOjNweDt3aWR0aDoxNnB4fS5wb3N0LWxpa2VzLXdpZGdldC1wbGFjZWhvbGRlciAuYnV0dG9ue2Rpc3BsYXk6bm9uZX0uY29tbWVudC1saWtlcy13aWRnZXQtcGxhY2Vob2xkZXIgLmxvYWRpbmcsLnBvc3QtbGlrZXMtd2lkZ2V0LXBsYWNlaG9sZGVyIC5sb2FkaW5ne2NvbG9yOiM5OTk7Zm9udC1zaXplOjEycHh9LmNvbW1lbnQtbGlrZXMtd2lkZ2V0LXBsYWNlaG9sZGVyIC5sb2FkaW5ne2FsaWduLXNlbGY6Y2VudGVyO2NvbG9yOiM0ZTRlNGU7bWFyZ2luLXRvcDo0cHg7cGFkZGluZy1sZWZ0OjVweH1kaXYuc2hhcmVkYWRkeS5zZC1saWtlLWVuYWJsZWQgLnNkLWxpa2UgaDN7ZGlzcGxheTpub25lfWRpdi5zaGFyZWRhZGR5LnNkLWxpa2UtZW5hYmxlZCAuc2QtbGlrZSAucG9zdC1saWtlcy13aWRnZXR7ZmxvYXQ6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS5jb21tZW50LWxpa2VzLXdpZGdldHt3aWR0aDoxMDAlfS5jcy1yYXRpbmcsLnBkLXJhdGluZ3tkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uc2QtZ3BsdXMgLnNkLXRpdGxle2Rpc3BsYXk6bm9uZX1AbWVkaWEgcHJpbnR7LmpldHBhY2stbGlrZXMtd2lkZ2V0LXdyYXBwZXJ7ZGlzcGxheTpub25lfX0uanAtcmVsYXRlZC1wb3N0cy1pMl9fcm93e2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOjEuNXJlbX0uanAtcmVsYXRlZC1wb3N0cy1pMl9fcm93OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uanAtcmVsYXRlZC1wb3N0cy1pMl9fcG9zdHtkaXNwbGF5OmZsZXg7ZmxleC1iYXNpczowO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWdyb3c6MTttYXJnaW46MCAxMHB4O3BhZGRpbmctbGVmdDowfS5qcC1yZWxhdGVkLXBvc3RzLWkyX19yb3dbZGF0YS1wb3N0LWNvdW50PSIzIl0gLmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Bvc3R7bWF4LXdpZHRoOmNhbGMoMzMlIC0gMjBweCl9LmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Jvd1tkYXRhLXBvc3QtY291bnQ9IjEiXSAuanAtcmVsYXRlZC1wb3N0cy1pMl9fcG9zdCwuanAtcmVsYXRlZC1wb3N0cy1pMl9fcm93W2RhdGEtcG9zdC1jb3VudD0iMiJdIC5qcC1yZWxhdGVkLXBvc3RzLWkyX19wb3N0e21heC13aWR0aDpjYWxjKDUwJSAtIDIwcHgpfS5qcC1yZWxhdGVkLXBvc3RzLWkyX19wb3N0LWNvbnRleHQsLmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Bvc3QtZGF0ZSwuanAtcmVsYXRlZC1wb3N0cy1pMl9fcG9zdC1oZWFkaW5nLC5qcC1yZWxhdGVkLXBvc3RzLWkyX19wb3N0LWltZy1saW5re2Rpc3BsYXk6YmxvY2s7ZmxleC1kaXJlY3Rpb246cm93fS5qcC1yZWxhdGVkLXBvc3RzLWkyX19wb3N0LWhlYWRpbmd7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS4yZW07bWFyZ2luOi41cmVtIDB9LmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Bvc3QtbGlua3tkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjEuMmVtO3dpZHRoOjEwMCV9LmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Bvc3QtaW1nLWxpbmt7b3JkZXI6LTF9LmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Bvc3QtaW1nLWxpbmsgaW1ne3dpZHRoOjEwMCV9LmpwLXJlbGF0ZWRwb3N0cy1pMltkYXRhLWxheW91dD1saXN0XSAuanAtcmVsYXRlZC1wb3N0cy1pMl9fcm93e2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDowfS5qcC1yZWxhdGVkcG9zdHMtaTJbZGF0YS1sYXlvdXQ9bGlzdF0gLmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Bvc3R7bWFyZ2luOjA7bWF4LXdpZHRoOm5vbmV9LmpwLXJlbGF0ZWRwb3N0cy1pMltkYXRhLWxheW91dD1saXN0XS5qcC1yZWxhdGVkLXBvc3RzLWkyX19wb3N0LWltZy1saW5re21hcmdpbi10b3A6MXJlbX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjQwcHgpey5qcC1yZWxhdGVkLXBvc3RzLWkyX19yb3d7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjB9LmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Jvd1tkYXRhLXBvc3QtY291bnRdIC5qcC1yZWxhdGVkLXBvc3RzLWkyX19wb3N0e21hcmdpbjoxcmVtIDAgMDttYXgtd2lkdGg6bm9uZX0uanAtcmVsYXRlZC1wb3N0cy1pMl9fcG9zdC1pbWctbGlua3ttYXJnaW4tdG9wOjFyZW19LmpwLXJlbGF0ZWQtcG9zdHMtaTJfX3Bvc3QtaW1nLWxpbmsgaW1ne3dpZHRoOjM1MHB4fX0janAtcmVsYXRlZHBvc3Rze2NsZWFyOmJvdGg7ZGlzcGxheTpub25lO21hcmdpbjoxZW0gMDtwYWRkaW5nLXRvcDoxZW07cG9zaXRpb246cmVsYXRpdmV9LmpwLXJlbGF0ZWRwb3N0czphZnRlcntjbGVhcjpib3RoO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9ja30janAtcmVsYXRlZHBvc3RzIGgzLmpwLXJlbGF0ZWRwb3N0cy1oZWFkbGluZXtkaXNwbGF5OmlubGluZS1ibG9jaztmbG9hdDpsZWZ0O2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjlwdDtmb250LXdlaWdodDo3MDA7bWFyZ2luOjAgMCAxZW19I2pwLXJlbGF0ZWRwb3N0cyBoMy5qcC1yZWxhdGVkcG9zdHMtaGVhZGxpbmUgZW06YmVmb3Jle2JvcmRlci10b3A6MXB4IHNvbGlkICNkY2RjZGU7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMik7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MWVtO21pbi13aWR0aDozMHB4O3dpZHRoOjEwMCV9I2pwLXJlbGF0ZWRwb3N0cyBoMy5qcC1yZWxhdGVkcG9zdHMtaGVhZGxpbmUgZW17Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NzAwfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtc3tjbGVhcjpsZWZ0fSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcy12aXN1YWx7bWFyZ2luLXJpZ2h0Oi0yMHB4fSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcyAuanAtcmVsYXRlZHBvc3RzLXBvc3R7Ym94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2Zsb2F0OmxlZnQ7bWFyZ2luOjAgMCAxZW07d2lkdGg6MzMlfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcy12aXN1YWwgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0e2ZpbHRlcjphbHBoYShvcGFjaXR5PTgwKTstbW96LW9wYWNpdHk6Ljg7b3BhY2l0eTouODtwYWRkaW5nLXJpZ2h0OjIwcHh9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIC5qcC1yZWxhdGVkcG9zdHMtcG9zdDpudGgtY2hpbGQoM24rNCksI2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zLXZpc3VhbCAuanAtcmVsYXRlZHBvc3RzLXBvc3Q6bnRoLWNoaWxkKDNuKzQpe2NsZWFyOmJvdGh9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIC5qcC1yZWxhdGVkcG9zdHMtcG9zdDpob3ZlciAuanAtcmVsYXRlZHBvc3RzLXBvc3QtdGl0bGUgYXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcyAuanAtcmVsYXRlZHBvc3RzLXBvc3Q6aG92ZXJ7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MTAwKTstbW96LW9wYWNpdHk6MTtvcGFjaXR5OjF9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIHAsI2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIHRpbWUsI2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zLXZpc3VhbCBoNC5qcC1yZWxhdGVkcG9zdHMtcG9zdC10aXRsZXtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoyMHB4O21hcmdpbjowfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcy12aXN1YWwgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LW5vdGh1bWJze3Bvc2l0aW9uOnJlbGF0aXZlfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcy12aXN1YWwgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LW5vdGh1bWJzIGEuanAtcmVsYXRlZHBvc3RzLXBvc3QtYW92ZXJsYXl7Ym9yZGVyLWJvdHRvbTowO2JvdHRvbTowO2Rpc3BsYXk6YmxvY2s7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIHAsI2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIHRpbWV7bWFyZ2luLWJvdHRvbTowfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcy12aXN1YWwgaDQuanAtcmVsYXRlZHBvc3RzLXBvc3QtdGl0bGV7ZGlzcGxheTpibG9jaztmb250LWZhbWlseTppbmhlcml0O21hcmdpbjowO21heC13aWR0aDoxMDAlO3RleHQtdHJhbnNmb3JtOm5vbmV9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIC5qcC1yZWxhdGVkcG9zdHMtcG9zdCAuanAtcmVsYXRlZHBvc3RzLXBvc3QtdGl0bGUgYXtmaWx0ZXI6YWxwaGEob3BhY2l0eT0xMDApO2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtd2VpZ2h0OjQwMDstbW96LW9wYWNpdHk6MTtvcGFjaXR5OjE7dGV4dC1kZWNvcmF0aW9uOm5vbmV9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIC5qcC1yZWxhdGVkcG9zdHMtcG9zdCAuanAtcmVsYXRlZHBvc3RzLXBvc3QtdGl0bGUgYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcyAuanAtcmVsYXRlZHBvc3RzLXBvc3QgaW1nLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LWltZywjanAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtaXRlbXMgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0IHNwYW57ZGlzcGxheTpibG9jazttYXgtd2lkdGg6OTAlO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcy12aXN1YWwgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0IGltZy5qcC1yZWxhdGVkcG9zdHMtcG9zdC1pbWcsI2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zLXZpc3VhbCAuanAtcmVsYXRlZHBvc3RzLXBvc3Qgc3BhbntoZWlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJX0janAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtaXRlbXMgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0IC5qcC1yZWxhdGVkcG9zdHMtcG9zdC1jb250ZXh0LCNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcyAuanAtcmVsYXRlZHBvc3RzLXBvc3QgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LWRhdGV7b3BhY2l0eTouNn0janAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtaXRlbXMtdmlzdWFsIGRpdi5qcC1yZWxhdGVkcG9zdHMtcG9zdC10aHVtYnMgcC5qcC1yZWxhdGVkcG9zdHMtcG9zdC1leGNlcnB0LC5qcC1yZWxhdGVkcG9zdHMtaXRlbXMgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0IC5qcC1yZWxhdGVkcG9zdHMtcG9zdC1kYXRle2Rpc3BsYXk6bm9uZX0janAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtaXRlbXMtdmlzdWFsIC5qcC1yZWxhdGVkcG9zdHMtcG9zdC1ub3RodW1icyBwLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LWV4Y2VycHR7b3ZlcmZsb3c6aGlkZGVufSNqcC1yZWxhdGVkcG9zdHMgLmpwLXJlbGF0ZWRwb3N0cy1pdGVtcy12aXN1YWwgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LW5vdGh1bWJzIHNwYW57bWFyZ2luLWJvdHRvbToxZW19I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWxpc3QgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0e2NsZWFyOmJvdGg7d2lkdGg6MTAwJX0janAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtbGlzdCAuanAtcmVsYXRlZHBvc3RzLXBvc3QgaW1nLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LWltZ3tmbG9hdDpsZWZ0O21hcmdpbi1yaWdodDozJTttYXgtd2lkdGg6MzMlO292ZXJmbG93OmhpZGRlbn0janAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtbGlzdCBoNC5qcC1yZWxhdGVkcG9zdHMtcG9zdC10aXRsZXtkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6NjMlfUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo2NDBweCl7I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIC5qcC1yZWxhdGVkcG9zdHMtcG9zdHt3aWR0aDo1MCV9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zIC5qcC1yZWxhdGVkcG9zdHMtcG9zdDpudGgtY2hpbGQoM24pe2NsZWFyOmxlZnR9I2pwLXJlbGF0ZWRwb3N0cyAuanAtcmVsYXRlZHBvc3RzLWl0ZW1zLXZpc3VhbHttYXJnaW4tcmlnaHQ6MjBweH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjMyMHB4KXsjanAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtaXRlbXMgLmpwLXJlbGF0ZWRwb3N0cy1wb3N0e2NsZWFyOmJvdGg7bWFyZ2luOjAgMCAxZW07d2lkdGg6MTAwJX0janAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtbGlzdCAuanAtcmVsYXRlZHBvc3RzLXBvc3QgaW1nLmpwLXJlbGF0ZWRwb3N0cy1wb3N0LWltZywjanAtcmVsYXRlZHBvc3RzIC5qcC1yZWxhdGVkcG9zdHMtbGlzdCBoNC5qcC1yZWxhdGVkcG9zdHMtcG9zdC10aXRsZXtmbG9hdDpub25lO21hcmdpbi1yaWdodDowO21heC13aWR0aDoxMDAlfX1AbWVkaWEgcHJpbnR7LmpwLXJlbGF0ZWRwb3N0c3tkaXNwbGF5Om5vbmUhaW1wb3J0YW50fX0janAtcG9zdC1mbGFpcntwYWRkaW5nLXRvcDouNWVtfSNjb250ZW50IGRpdi5zaGFyZWRhZGR5LCNtYWluIGRpdi5zaGFyZWRhZGR5LGRpdi5zaGFyZWRhZGR5e2NsZWFyOmJvdGh9ZGl2LnNoYXJlZGFkZHkgaDMuc2QtdGl0bGV7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjlwdDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MS4yO21hcmdpbjowIDAgMWVtfWRpdi5zaGFyZWRhZGR5IGgzLnNkLXRpdGxlOmJlZm9yZXtib3JkZXItdG9wOjFweCBzb2xpZCAjZGNkY2RlO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjFlbTttaW4td2lkdGg6MzBweDt3aWR0aDoxMDAlfWJvZHkuaGlnaGxhbmRlci1saWdodCBoMy5zZC10aXRsZTpiZWZvcmV7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwuMil9Ym9keS5oaWdobGFuZGVyLWRhcmsgaDMuc2QtdGl0bGU6YmVmb3Jle2JvcmRlci10b3A6MXB4IHNvbGlkIGhzbGEoMCwwJSwxMDAlLC40KX0uc2Qtc2hhcmluZ3ttYXJnaW4tYm90dG9tOjFlbX0uc2QtY29udGVudCB1bHtsaXN0LXN0eWxlOm5vbmUhaW1wb3J0YW50O21hcmdpbjowIWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50fS5zZC1jb250ZW50IHVsIGxpe2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWRlcHJlY2F0ZWR7b3BhY2l0eTouNX0uc2QtY29udGVudCB1bCBsaS5zaGFyZS1kZXByZWNhdGVkIGEgc3Bhbnt0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdofS5zZC1ibG9jay5zZC1ncGx1c3ttYXJnaW46MCAwIC41ZW19LnNkLWdwbHVzIC5zZC1jb250ZW50e2ZvbnQtc2l6ZToxMnB4fS5zZC1jb250ZW50IC5zaGFyZS1lbWFpbC1lcnJvciAuc2hhcmUtZW1haWwtZXJyb3ItdGl0bGV7bWFyZ2luOi41ZW0gMH0uc2QtY29udGVudCAuc2hhcmUtZW1haWwtZXJyb3IgLnNoYXJlLWVtYWlsLWVycm9yLXRleHR7Zm9udC1mYW1pbHk6T3BlbiBTYW5zLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7bWFyZ2luOi41ZW0gMH0jc2hhcmluZ19lbWFpbCAuc2hhcmluZ19zZW5kLC5zZC1jb250ZW50IHVsIGxpIC5vcHRpb24gYS5zaGFyZS11c3RvbSwuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbiwuc2QtY29udGVudCB1bCBsaS5hZHZhbmNlZCBhLnNoYXJlLW1vcmUsLnNkLWNvbnRlbnQgdWwgbGkucHJldmlldy1pdGVtIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbiwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbiwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50PnVsPmxpIC5kaWdnX2J1dHRvbj5hLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQ+dWw+bGk+YS5zZC1idXR0b24sLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpIGEuc2QtYnV0dG9ue2JhY2tncm91bmQ6I2Y4ZjhmODtib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyLXJhZGl1czozcHg7Ym94LXNoYWRvdzowIDFweCAwIHJnYmEoMCwwLDAsLjA4KTtjb2xvcjojNjU2NTY1IWltcG9ydGFudDtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTpPcGVuIFNhbnMsc2Fucy1zZXJpZjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MjNweDtwYWRkaW5nOjFweCA4cHggMCA1cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmUhaW1wb3J0YW50O3RleHQtc2hhZG93Om5vbmV9LnNkLWNvbnRlbnQgdWwgbGkgLm9wdGlvbiBhLnNoYXJlLXVzdG9tIHNwYW4sLnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b24+c3Bhbiwuc2QtY29udGVudCB1bCBsaS5hZHZhbmNlZCBhLnNoYXJlLW1vcmUgc3Bhbiwuc2QtY29udGVudCB1bCBsaS5wcmV2aWV3LWl0ZW0gZGl2Lm9wdGlvbi5vcHRpb24tc21hcnQtb2ZmIGEgc3Bhbiwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbj5zcGFuLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQ+dWw+bGkgLmRpZ2dfYnV0dG9uPmEgc3Bhbiwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50PnVsPmxpPmEuc2QtYnV0dG9uIHNwYW4sLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpIGEuc2QtYnV0dG9uIHNwYW57bGluZS1oZWlnaHQ6MjNweH0uc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IC5zaGFyaW5nLWhpZGRlbiAuaW5uZXI+dWw+bGkgLmRpZ2dfYnV0dG9uPmEsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCAuc2hhcmluZy1oaWRkZW4gLmlubmVyPnVsPmxpPmEuc2QtYnV0dG9uLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQ+dWw+bGkgLmRpZ2dfYnV0dG9uPmEsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudD51bD5saT5hLnNkLWJ1dHRvbntib3gtc2hhZG93Om5vbmU7bGluZS1oZWlnaHQ6MTdweDt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbj5zcGFue2xpbmUtaGVpZ2h0OjE3cHh9LnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCAuc2hhcmluZy1oaWRkZW4gLmlubmVyPnVsPmxpIC5kaWdnX2J1dHRvbj5hOmJlZm9yZSwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IC5zaGFyaW5nLWhpZGRlbiAuaW5uZXI+dWw+bGk+YS5zZC1idXR0b246YmVmb3JlLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQ+dWw+bGkgLmRpZ2dfYnV0dG9uPmE6YmVmb3JlLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQ+dWw+bGk+YS5zZC1idXR0b246YmVmb3Jle21hcmdpbi1ib3R0b206LTFweH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b246YWN0aXZlLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbjpob3Zlciwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbjphY3RpdmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b246aG92ZXIsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudD51bD5saSAuZGlnZ19idXR0b24+YTphY3RpdmUsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudD51bD5saSAuZGlnZ19idXR0b24+YTpob3Zlciwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50PnVsPmxpPmEuc2QtYnV0dG9uOmFjdGl2ZSwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50PnVsPmxpPmEuc2QtYnV0dG9uOmhvdmVyLC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbjphY3RpdmUsLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpIGEuc2QtYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6I2Y2ZjdmNztib3JkZXI6MXB4IHNvbGlkICM5OTk7Y29sb3I6IzU1NX0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b246YWN0aXZlLC5zZC1zb2NpYWwtaWNvbi10ZXh0IC5zZC1jb250ZW50IHVsIGxpIGEuc2QtYnV0dG9uOmFjdGl2ZSwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50PnVsPmxpIC5kaWdnX2J1dHRvbj5hOmFjdGl2ZSwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50PnVsPmxpPmEuc2QtYnV0dG9uOmFjdGl2ZSwuc2Qtc29jaWFsLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b246YWN0aXZle2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDAsMCwwLC4xNil9LnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b246YmVmb3Jley13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQ6bm9ybWFsIDE4cHgvMSBzb2NpYWwtbG9nb3M7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246dG9wfS5zZC1zb2NpYWwtaWNvbi10ZXh0IHVsIGxpIGEuc2QtYnV0dG9uOmJlZm9yZXtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MnB4fUBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MCl7LnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b246YmVmb3Jle3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoycHh9fS5zZC1zb2NpYWwtb2ZmaWNpYWwgdWwgbGkgYS5zZC1idXR0b246YmVmb3Jle3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotMnB4fUBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MCl7LnNkLXNvY2lhbC1vZmZpY2lhbCB1bCBsaSBhLnNkLWJ1dHRvbjpiZWZvcmV7dG9wOjB9fS5zZC1jb250ZW50IHVsIGxpe21hcmdpbjowIDVweCA1cHggMDtwYWRkaW5nOjB9LmpwLXNoYXJpbmctaW5wdXQtdG91Y2ggLnNkLWNvbnRlbnQgdWwgbGl7cGFkZGluZy1sZWZ0OjEwcHh9LnNkLWNvbnRlbnQgdWwgbGkucHJldmlldy1pdGVtIGEuc2QtYnV0dG9uIHNwYW4sLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkgYSBzcGFuLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQgdWwgbGkgYS5zZC1idXR0b24gc3BhbnttYXJnaW4tbGVmdDozcHh9LnNkLWNvbnRlbnQgdWwgbGkucHJldmlldy1pdGVtLm5vLWljb24gYS5zZC1idXR0b24gc3BhbnttYXJnaW4tbGVmdDowfS5zZC1jb250ZW50IHVsIGxpLm5vLWljb24gYTpiZWZvcmUsLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpIGE6YmVmb3Jle2Rpc3BsYXk6bm9uZX1ib2R5IC5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWN1c3RvbS5uby1pY29uIGEgc3Bhbixib2R5IC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCB1bCBsaS5zaGFyZS1jdXN0b20gYSBzcGFue2JhY2tncm91bmQtaW1hZ2U6bm9uZTtiYWNrZ3JvdW5kLXBvc2l0aW9uOi01MDBweCAtNTAwcHghaW1wb3J0YW50O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdCFpbXBvcnRhbnQ7aGVpZ2h0OjA7bGluZS1oZWlnaHQ6aW5oZXJpdDtwYWRkaW5nLWxlZnQ6MH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkgYS5zaGFyZS1tb3Jle3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotNHB4fUBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MCl7LnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpIGEuc2hhcmUtbW9yZXt0b3A6MnB4fX1ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCl7LnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpIGEuc2hhcmUtbW9yZXt0b3A6MnB4fX0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkgYS5zaGFyZS1tb3JlIHNwYW57bWFyZ2luLWxlZnQ6M3B4fS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLXByaW50IGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtcHJpbnQgYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtcHJpbnQgYTpiZWZvcmUsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCBsaS5zaGFyZS1wcmludCBhOmJlZm9yZSwuc2Qtc29jaWFsLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtcHJpbnQgYTpiZWZvcmV7Y29udGVudDoiXGY0NjkifS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWVtYWlsIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtZW1haWwgYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtZW1haWwgYTpiZWZvcmUsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCBsaS5zaGFyZS1lbWFpbCBhOmJlZm9yZSwuc2Qtc29jaWFsLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtZW1haWwgYTpiZWZvcmV7Y29udGVudDoiXGY0MTAifS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWxpbmtlZGluIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtbGlua2VkaW4gYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtbGlua2VkaW4gYTpiZWZvcmUsLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWxpbmtlZGluIGE6YmVmb3Jle2NvbnRlbnQ6IlxmMjA3In0uc2QtY29udGVudCB1bCBsaS5zaGFyZS10d2l0dGVyIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtdHdpdHRlciBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCBsaS5zaGFyZS10d2l0dGVyIGE6YmVmb3JlLC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCB1bCBsaS5zaGFyZS10d2l0dGVyIGE6YmVmb3Jle2NvbnRlbnQ6IlxmMjAyIn0uc2QtY29udGVudCB1bCBsaS5zaGFyZS1yZWRkaXQgZGl2Lm9wdGlvbi5vcHRpb24tc21hcnQtb2ZmIGE6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaS5zaGFyZS1yZWRkaXQgYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtcmVkZGl0IGE6YmVmb3JlLC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCB1bCBsaS5zaGFyZS1yZWRkaXQgYTpiZWZvcmV7Y29udGVudDoiXGYyMjIifS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLXR1bWJsciBkaXYub3B0aW9uLm9wdGlvbi1zbWFydC1vZmYgYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpLnNoYXJlLXR1bWJsciBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCBsaS5zaGFyZS10dW1ibHIgYTpiZWZvcmUsLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpLnNoYXJlLXR1bWJsciBhOmJlZm9yZXtjb250ZW50OiJcZjYwNyJ9LnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtcG9ja2V0IGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtcG9ja2V0IGE6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbi10ZXh0IC5zZC1jb250ZW50IGxpLnNoYXJlLXBvY2tldCBhOmJlZm9yZSwuc2Qtc29jaWFsLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtcG9ja2V0IGE6YmVmb3Jle2NvbnRlbnQ6IlxmMjI0In0uc2QtY29udGVudCB1bCBsaS5zaGFyZS1waW50ZXJlc3QgZGl2Lm9wdGlvbi5vcHRpb24tc21hcnQtb2ZmIGE6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaS5zaGFyZS1waW50ZXJlc3QgYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtcGludGVyZXN0IGE6YmVmb3JlLC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCB1bCBsaS5zaGFyZS1waW50ZXJlc3QgYTpiZWZvcmV7Y29udGVudDoiXGYyMTAifS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWZhY2Vib29rIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtZmFjZWJvb2sgYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtZmFjZWJvb2sgYTpiZWZvcmUsLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWZhY2Vib29rIGE6YmVmb3Jle2NvbnRlbnQ6IlxmMjAzIn0uc2QtY29udGVudCB1bCBsaS5zaGFyZS1wcmVzcy10aGlzIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtcHJlc3MtdGhpcyBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCBsaS5zaGFyZS1wcmVzcy10aGlzIGE6YmVmb3JlLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQgbGkuc2hhcmUtcHJlc3MtdGhpcyBhOmJlZm9yZSwuc2Qtc29jaWFsLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtcHJlc3MtdGhpcyBhOmJlZm9yZXtjb250ZW50OiJcZjIwNSJ9LnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCBsaS5zaGFyZS1wcmVzcy10aGlzIGE6YmVmb3Jle2NvbG9yOiMyYmExY2J9LnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtdGVsZWdyYW0gZGl2Lm9wdGlvbi5vcHRpb24tc21hcnQtb2ZmIGE6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaS5zaGFyZS10ZWxlZ3JhbSBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCBsaS5zaGFyZS10ZWxlZ3JhbSBhOmJlZm9yZSwuc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IGxpLnNoYXJlLXRlbGVncmFtIGE6YmVmb3JlLC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCB1bCBsaS5zaGFyZS10ZWxlZ3JhbSBhOmJlZm9yZXtjb250ZW50OiJcZjYwNiJ9LnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCBsaS5zaGFyZS10ZWxlZ3JhbSBhOmJlZm9yZXtjb2xvcjojMDhjfS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLXNreXBlIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtc2t5cGUgYTpiZWZvcmUsLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtc2t5cGUgYTpiZWZvcmUsLnNkLXNvY2lhbC10ZXh0IC5zZC1jb250ZW50IHVsIGxpLnNoYXJlLXNreXBlIGE6YmVmb3Jle2NvbnRlbnQ6IlxmMjIwIn0uc2QtY29udGVudCB1bCBsaS5hZHZhbmNlZCBhLnNoYXJlLW1vcmU6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBhLnNoYXJlLW1vcmU6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbi10ZXh0IC5zZC1jb250ZW50IGEuc2hhcmUtbW9yZTpiZWZvcmUsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCBhLnNoYXJlLW1vcmU6YmVmb3JlLC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCB1bCBhLnNoYXJlLW1vcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNDE1In0uc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IGEuc2hhcmUtbW9yZTpiZWZvcmV7Y29sb3I6IzJiYTFjYn0uc2QtY29udGVudCB1bCBsaS5zaGFyZS1qZXRwYWNrLXdoYXRzYXBwIGRpdi5vcHRpb24ub3B0aW9uLXNtYXJ0LW9mZiBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtamV0cGFjay13aGF0c2FwcCBhOmJlZm9yZSwuc2Qtc29jaWFsLWljb24tdGV4dCAuc2QtY29udGVudCBsaS5zaGFyZS1qZXRwYWNrLXdoYXRzYXBwIGE6YmVmb3JlLC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQgbGkuc2hhcmUtamV0cGFjay13aGF0c2FwcCBhOmJlZm9yZSwuc2Qtc29jaWFsLXRleHQgLnNkLWNvbnRlbnQgdWwgbGkuc2hhcmUtamV0cGFjay13aGF0c2FwcCBhOmJlZm9yZXtjb250ZW50OiJcZjYwOCJ9LnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCBsaS5zaGFyZS1qZXRwYWNrLXdoYXRzYXBwIGE6YmVmb3Jle2NvbG9yOiM0M2Q4NTR9LnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpW2NsYXNzKj1zaGFyZS1dLnNoYXJlLWpldHBhY2std2hhdHNhcHAgYS5zZC1idXR0b257YmFja2dyb3VuZDojNDNkODU0O2NvbG9yOiNmZmYhaW1wb3J0YW50fS5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWRlcHJlY2F0ZWQgZGl2Lm9wdGlvbi5vcHRpb24tc21hcnQtb2ZmIGE6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaS5zaGFyZS1kZXByZWNhdGVkIGE6YmVmb3JlLC5zZC1zb2NpYWwtaWNvbi10ZXh0IC5zZC1jb250ZW50IGxpLnNoYXJlLWRlcHJlY2F0ZWQgYTpiZWZvcmUsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCBsaS5zaGFyZS1kZXByZWNhdGVkIGE6YmVmb3Jle2NvbnRlbnQ6IvCfmqsiO2hlaWdodDoxZW07d2lkdGg6MWVtfS5zZC1zb2NpYWwgLnNkLWJ1dHRvbiAuc2hhcmUtY291bnR7YmFja2dyb3VuZDojMmVhMmNjO2JvcmRlci1yYWRpdXM6MTBweDtjb2xvcjojZmZmO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjE7cGFkZGluZzoxcHggM3B4O3RleHQtYWxpZ246Y2VudGVyfS5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQgdWwsLnNkLXNvY2lhbC1vZmZpY2lhbCAuc2QtY29udGVudCB1bCBsaXtsaW5lLWhlaWdodDoyNXB4IWltcG9ydGFudH0uc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50PnVsPmxpPmEuc2QtYnV0dG9uIHNwYW57bGluZS1oZWlnaHQ6MX0uc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IHVsOmFmdGVye2NsZWFyOmJvdGg7Y29udGVudDoiLiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDt2aXNpYmlsaXR5OmhpZGRlbn0uc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IGxpLnNoYXJlLXByZXNzLXRoaXMgYXttYXJnaW46MCAwIDVweH0uc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IHVsPmxpe2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDtoZWlnaHQ6MjVweDttYXJnaW46MCAxMHB4IDVweCAwIWltcG9ydGFudH0uc2Qtc29jaWFsLW9mZmljaWFsIC5mYi1zaGFyZS1idXR0b24+c3Bhbnt2ZXJ0aWNhbC1hbGlnbjp0b3AhaW1wb3J0YW50fS5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQgLnBvY2tldF9idXR0b24gaWZyYW1le3dpZHRoOjk4cHh9LnJlZGRpdF9idXR0b24gaWZyYW1le21hcmdpbi10b3A6MXB4fS5saW5rZWRpbl9idXR0b24+c3BhbiwucGludGVyZXN0X2J1dHRvbiwucG9ja2V0X2J1dHRvbiBpZnJhbWUsLnR3aXR0ZXJfYnV0dG9ue21hcmdpbjowIWltcG9ydGFudH0ubGlua2VkaW5fYnV0dG9uPnNwYW4sLnBpbnRlcmVzdF9idXR0b24gYXtkaXNwbGF5OmJsb2NrIWltcG9ydGFudH0uc2Qtc29jaWFsLW9mZmljaWFsIC5zZC1jb250ZW50IC5zaGFyZS1za3lwZXt3aWR0aDo1NXB4fWJvZHkgLnNkLXNvY2lhbC1vZmZpY2lhbCBsaSBhLnNoYXJlLW1vcmUsYm9keSAuc2Qtc29jaWFsLW9mZmljaWFsIGxpLnNoYXJlLWN1c3RvbSBhLGJvZHkgLnNkLXNvY2lhbC1vZmZpY2lhbCBsaS5zaGFyZS1kaWdnIGEsYm9keSAuc2Qtc29jaWFsLW9mZmljaWFsIGxpLnNoYXJlLWVtYWlsIGEsYm9keSAuc2Qtc29jaWFsLW9mZmljaWFsIGxpLnNoYXJlLXByZXNzLXRoaXMgYSxib2R5IC5zZC1zb2NpYWwtb2ZmaWNpYWwgbGkuc2hhcmUtcHJpbnR7cG9zaXRpb246cmVsYXRpdmU7dG9wOjB9Ym9keSAuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgbGkuc2hhcmUtY3VzdG9tPmF7cGFkZGluZzoycHggM3B4IDA7cG9zaXRpb246cmVsYXRpdmU7dG9wOjRweH1ib2R5IC5zZC1jb250ZW50IHVsIGxpLnNoYXJlLWN1c3RvbSBhLnNoYXJlLWljb24gc3Bhbixib2R5IC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCBsaS5zaGFyZS1jdXN0b20gYSBzcGFuLGJvZHkgLnNkLXNvY2lhbC1pY29uLXRleHQgLnNkLWNvbnRlbnQgbGkuc2hhcmUtY3VzdG9tIGEgc3Bhbixib2R5IC5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQgbGkuc2hhcmUtY3VzdG9tIGEgc3Bhbixib2R5IC5zZC1zb2NpYWwtdGV4dCAuc2QtY29udGVudCBsaS5zaGFyZS1jdXN0b20gYSBzcGFue2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MTZweCAxNnB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyMXB4O2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWxlZnQ6MDtwYWRkaW5nOjAgMCAwIDE5cHh9Ym9keSAuc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgbGkuc2hhcmUtY3VzdG9tIGEgc3BhbntwYWRkaW5nLWxlZnQ6MTZweCFpbXBvcnRhbnQ7d2lkdGg6MH0uc2hhcmluZy1oaWRkZW4gLmlubmVye2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyLXJhZGl1czoycHg7Ym94LXNoYWRvdzowIDVweCAyMHB4IHJnYmEoMCwwLDAsLjIpO21hcmdpbi10b3A6NXB4O21heC13aWR0aDo0MDBweDtwYWRkaW5nOjEwcHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyfS5zaGFyaW5nLWhpZGRlbiAuaW5uZXIgdWx7bWFyZ2luOjAhaW1wb3J0YW50fS5zZC1zb2NpYWwtb2ZmaWNpYWwgLnNkLWNvbnRlbnQgLnNoYXJpbmctaGlkZGVuIHVsPmxpLnNoYXJlLWVuZHtjbGVhcjpib3RoO2hlaWdodDowIWltcG9ydGFudDttYXJnaW46MCFpbXBvcnRhbnR9LnNoYXJpbmctaGlkZGVuIC5pbm5lcjphZnRlciwuc2hhcmluZy1oaWRkZW4gLmlubmVyOmJlZm9yZXtib3JkZXItYm90dG9tOjhweCBzb2xpZCAjY2NjO2JvcmRlci1sZWZ0OjZweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NnB4IHNvbGlkIHRyYW5zcGFyZW50O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtsZWZ0OjIwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOi04cHg7d2lkdGg6MDt6LWluZGV4OjF9LnNoYXJpbmctaGlkZGVuIC5pbm5lcjphZnRlcntib3JkZXItYm90dG9tOjhweCBzb2xpZCAjZmZmO2JvcmRlci1sZWZ0OjZweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NnB4IHNvbGlkIHRyYW5zcGFyZW50O3RvcDotN3B4O3otaW5kZXg6Mn0uc2hhcmluZy1oaWRkZW4gdWx7bWFyZ2luOjB9LnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpW2NsYXNzKj1zaGFyZS1dIGEsLnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpW2NsYXNzKj1zaGFyZS1dIGE6aG92ZXIsLnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpW2NsYXNzKj1zaGFyZS1dIGRpdi5vcHRpb24gYXtib3JkZXI6MDtib3JkZXItcmFkaXVzOjUwJTstd2Via2l0LWJvcmRlci1yYWRpdXM6NTAlO2JveC1zaGFkb3c6bm9uZTtoZWlnaHQ6YXV0bztsaW5lLWhlaWdodDoxO21hcmdpbi1ib3R0b206MDtwYWRkaW5nOjdweDtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6LTJweDt3aWR0aDphdXRvfS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXSBhLnNkLWJ1dHRvbj5zcGFuLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXSBkaXYub3B0aW9uIGEgc3BhbntsaW5lLWhlaWdodDoxfS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXSBhOmhvdmVyLC5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXSBkaXYub3B0aW9uIGE6aG92ZXJ7Ym9yZGVyOm5vbmU7b3BhY2l0eTouNn0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGlbY2xhc3MqPXNoYXJlLV0gYS5zZC1idXR0b246YmVmb3Jle3RvcDowfS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXSBhLnNkLWJ1dHRvbi5zaGFyZS1jdXN0b217cGFkZGluZzo4cHggOHB4IDZweDt0b3A6NXB4fS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaSBhLnNkLWJ1dHRvbi5zaGFyZS1tb3Jle21hcmdpbi1sZWZ0OjEwcHh9LnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpOmZpcnN0LWNoaWxkIGEuc2QtYnV0dG9uLnNoYXJlLW1vcmV7bWFyZ2luLWxlZnQ6MH0uc2Qtc29jaWFsLWljb24gLnNkLWJ1dHRvbiBzcGFuLnNoYXJlLWNvdW50e2JhY2tncm91bmQ6IzU1NTtib3JkZXItcmFkaXVzOjA7Ym90dG9tOjA7Zm9udC1zaXplOjlweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowfS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXSBhLnNkLWJ1dHRvbntiYWNrZ3JvdW5kOiNlOWU5ZTk7bWFyZ2luLXRvcDoycHg7dGV4dC1pbmRlbnQ6MH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGlbY2xhc3MqPXNoYXJlLV0uc2hhcmUtdHVtYmxyIGEuc2QtYnV0dG9ue2JhY2tncm91bmQ6IzJjNDc2Mjtjb2xvcjojZmZmIWltcG9ydGFudH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGlbY2xhc3MqPXNoYXJlLV0uc2hhcmUtZmFjZWJvb2sgYS5zZC1idXR0b257YmFja2dyb3VuZDojMTg3N2YyO2NvbG9yOiNmZmYhaW1wb3J0YW50fS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXS5zaGFyZS10d2l0dGVyIGEuc2QtYnV0dG9ue2JhY2tncm91bmQ6IzAwYWNlZTtjb2xvcjojZmZmIWltcG9ydGFudH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGlbY2xhc3MqPXNoYXJlLV0uc2hhcmUtcGludGVyZXN0IGEuc2QtYnV0dG9ue2JhY2tncm91bmQ6I2NhMWYyNztjb2xvcjojZmZmIWltcG9ydGFudH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGlbY2xhc3MqPXNoYXJlLV0uc2hhcmUtZGlnZyBhLnNkLWJ1dHRvbntjb2xvcjojNTU1IWltcG9ydGFudH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGlbY2xhc3MqPXNoYXJlLV0uc2hhcmUtcHJlc3MtdGhpcyBhLnNkLWJ1dHRvbntiYWNrZ3JvdW5kOiM0Zjk0ZDQ7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LnNkLXNvY2lhbC1pY29uIC5zZC1jb250ZW50IHVsIGxpW2NsYXNzKj1zaGFyZS1dLnNoYXJlLXRlbGVncmFtIGEuc2QtYnV0dG9ue2JhY2tncm91bmQ6IzA4Yztjb2xvcjojZmZmIWltcG9ydGFudH0uc2Qtc29jaWFsLWljb24gLnNkLWNvbnRlbnQgdWwgbGlbY2xhc3MqPXNoYXJlLV0uc2hhcmUtbGlua2VkaW4gYS5zZC1idXR0b257YmFja2dyb3VuZDojMDA3N2I1O2NvbG9yOiNmZmYhaW1wb3J0YW50fS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXS5zaGFyZS1wb2NrZXQgYS5zZC1idXR0b257YmFja2dyb3VuZDojZWU0MDU2O2NvbG9yOiNmZmYhaW1wb3J0YW50fS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXS5zaGFyZS1yZWRkaXQgYS5zZC1idXR0b257YmFja2dyb3VuZDojY2VlM2Y4O2NvbG9yOiM1NTUhaW1wb3J0YW50fS5zZC1zb2NpYWwtaWNvbiAuc2QtY29udGVudCB1bCBsaVtjbGFzcyo9c2hhcmUtXS5zaGFyZS1za3lwZSBhLnNkLWJ1dHRvbntiYWNrZ3JvdW5kOiMwMGFmZjA7Y29sb3I6I2ZmZiFpbXBvcnRhbnR9LnNoYXJpbmctc2NyZWVuLXJlYWRlci10ZXh0e2NsaXA6cmVjdCgxcHgsMXB4LDFweCwxcHgpO2hlaWdodDoxcHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt3aWR0aDoxcHh9LnNoYXJpbmctc2NyZWVuLXJlYWRlci10ZXh0OmFjdGl2ZSwuc2hhcmluZy1zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMsLnNoYXJpbmctc2NyZWVuLXJlYWRlci10ZXh0OmhvdmVye2NsaXA6YXV0byFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjojZjBmMGYxO2JvcmRlci1yYWRpdXM6M3B4O2JveC1zaGFkb3c6MCAwIDJweCAycHggcmdiYSgwLDAsMCwuNik7Y29sb3I6IzIxNzU5YjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6YXV0bztsZWZ0OjVweDtsaW5lLWhlaWdodDpub3JtYWw7cGFkZGluZzoxNXB4IDIzcHggMTRweDt0ZXh0LWRlY29yYXRpb246bm9uZTt0b3A6NXB4O3dpZHRoOmF1dG87ei1pbmRleDoxMDAwMDB9I2pldHBhY2stc291cmNlX2ZfbmFtZXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50O2xlZnQ6LTkwMDBweDtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnR9LnNkLWNvbnRlbnQgLnNoYXJlLWN1c3RvbWl6ZS1saW5re2xpbmUtaGVpZ2h0OjExcHg7bWFyZ2luLXRvcDowfS5zZC1jb250ZW50IC5zaGFyZS1jdXN0b21pemUtbGluayBhe2ZvbnQtZmFtaWx5Ok9wZW4gU2FucyxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMXB4fUBtZWRpYSBwcmludHsuc2hhcmVkYWRkeS5zZC1zaGFyaW5nLWVuYWJsZWR7ZGlzcGxheTpub25lfX0uamV0cGFjay1zbGlkZXNob3ctd2luZG93e2JhY2tncm91bmQtY29sb3I6IzIyMjtib3JkZXI6MjBweCBzb2xpZCAjMjIyO2JvcmRlci1yYWRpdXM6MTBweDtoZWlnaHQ6MDttYXJnaW4tYm90dG9tOjIwcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctYm90dG9tOjU2LjI1JSFpbXBvcnRhbnQ7cGFkZGluZy10b3A6MzBweCFpbXBvcnRhbnQ7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS5qZXRwYWNrLXNsaWRlc2hvdy13aW5kb3cuamV0cGFjay1zbGlkZXNob3ctd2hpdGV7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmfS5qZXRwYWNrLXNsaWRlc2hvdy13aW5kb3csLmpldHBhY2stc2xpZGVzaG93LXdpbmRvdyAqe2JveC1zaXppbmc6Y29udGVudC1ib3h9LmpldHBhY2stc2xpZGVzaG93LWxvYWRpbmd7aGVpZ2h0OjEwMCU7bWFyZ2luOmF1dG87dGV4dC1hbGlnbjpjZW50ZXJ9Ym9keSBkaXYuamV0cGFjay1zbGlkZXNob3ctd2luZG93ICogaW1ne2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50O2JhY2tncm91bmQtaW1hZ2U6bm9uZSFpbXBvcnRhbnQ7Ym9yZGVyLXdpZHRoOjAhaW1wb3J0YW50O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgYXV0bzttYXgtaGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzowIWltcG9ydGFudDtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS5qZXRwYWNrLXNsaWRlc2hvdy1sb2FkaW5nIGltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmpldHBhY2stc2xpZGVzaG93LXNsaWRle2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MTAwJSFpbXBvcnRhbnQ7bGVmdDowO21hcmdpbjphdXRvO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDowO3dpZHRoOjEwMCUhaW1wb3J0YW50fS5qZXRwYWNrLXNsaWRlc2hvdy1zbGlkZSBpbWd7dmVydGljYWwtYWxpZ246bWlkZGxlfS5qZXRwYWNrLXNsaWRlc2hvdy1saW5lLWhlaWdodC1oYWNre2ZvbnQtc2l6ZTowO292ZXJmbG93OmhpZGRlbjt3aWR0aDowfS5qZXRwYWNrLXNsaWRlc2hvdy1zbGlkZS1jYXB0aW9ue2JvdHRvbTo1cHg7Y29sb3I6I2Y2ZjdmNztmb250LWZhbWlseTpIZWx2ZXRpY2EgTmV1ZSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxM3B4O2hlaWdodDoyNXB4O2xlZnQ6MDtsaW5lLWhlaWdodDoyNXB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RleHQtc2hhZG93OiMyMjIgMXB4IDFweCAycHg7d2lkdGg6MTAwJTt6LWluZGV4OjEwMH0uamV0cGFjay1zbGlkZXNob3ctY29udHJvbHN7Ym90dG9tOjMwcHg7ZGlyZWN0aW9uOmx0cjstbXMtZmlsdGVyOiJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT01MCkiO21hcmdpbjphdXRvO29wYWNpdHk6LjU7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlLW91dDt3aWR0aDoxMDAlO3otaW5kZXg6MTAwMH0uamV0cGFjay1zbGlkZXNob3ctd2luZG93OmhvdmVyIC5qZXRwYWNrLXNsaWRlc2hvdy1jb250cm9sc3stbXMtZmlsdGVyOiJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApIjtvcGFjaXR5OjF9Ym9keSBkaXYgZGl2LmpldHBhY2stc2xpZGVzaG93LWNvbnRyb2xzIGEsYm9keSBkaXYgZGl2LmpldHBhY2stc2xpZGVzaG93LWNvbnRyb2xzIGE6aG92ZXJ7em9vbToxO2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnQ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC42KSFpbXBvcnRhbnQ7YmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vbW9kdWxlcy9zaG9ydGNvZGVzL2ltZy9zbGlkZXNob3ctY29udHJvbHMucG5nKSFpbXBvcnRhbnQ7YmFja2dyb3VuZC1wb3NpdGlvbjotMzRweCA4cHghaW1wb3J0YW50O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MTQycHggMTZweCFpbXBvcnRhbnQ7Ym9yZGVyOjJweCBzb2xpZCBoc2xhKDAsMCUsMTAwJSwuMSkhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6MTBlbSFpbXBvcnRhbnQ7Y29sb3I6IzIyMiFpbXBvcnRhbnQ7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50OypkaXNwbGF5OmlubGluZTtoZWlnaHQ6MzJweCFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MzJweCFpbXBvcnRhbnQ7bWFyZ2luOjAgNXB4IWltcG9ydGFudDtwYWRkaW5nOjAhaW1wb3J0YW50O3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudDt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuM3MgZWFzZS1vdXQ7d2lkdGg6MzJweCFpbXBvcnRhbnR9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjEuNSl7Ym9keSBkaXYgZGl2LmpldHBhY2stc2xpZGVzaG93LWNvbnRyb2xzIGEsYm9keSBkaXYgZGl2LmpldHBhY2stc2xpZGVzaG93LWNvbnRyb2xzIGE6aG92ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vbW9kdWxlcy9zaG9ydGNvZGVzL2ltZy9zbGlkZXNob3ctY29udHJvbHMtMngucG5nKSFpbXBvcnRhbnR9fWJvZHkgZGl2IGRpdi5qZXRwYWNrLXNsaWRlc2hvdy1jb250cm9scyBhOmhvdmVye2JvcmRlci1jb2xvcjojZmZmIWltcG9ydGFudH1ib2R5IGRpdiBkaXYuamV0cGFjay1zbGlkZXNob3ctY29udHJvbHMgYTpmaXJzdC1jaGlsZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOi03NnB4IDhweCFpbXBvcnRhbnR9Ym9keSBkaXYgZGl2LmpldHBhY2stc2xpZGVzaG93LWNvbnRyb2xzIGE6bGFzdC1jaGlsZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xMTdweCA4cHghaW1wb3J0YW50fWJvZHkgZGl2IGRpdi5qZXRwYWNrLXNsaWRlc2hvdy1jb250cm9scyBhLnJ1bm5pbmcsYm9keSBkaXYgZGl2LmpldHBhY2stc2xpZGVzaG93LWNvbnRyb2xzIGE6bnRoLWNoaWxkKDIpe2JhY2tncm91bmQtcG9zaXRpb246LTM0cHggOHB4IWltcG9ydGFudH1ib2R5IGRpdiBkaXYuamV0cGFjay1zbGlkZXNob3ctY29udHJvbHMgYS5wYXVzZWR7YmFja2dyb3VuZC1wb3NpdGlvbjo5cHggOHB4IWltcG9ydGFudH0uamV0cGFjay1zbGlkZXNob3ctY29udHJvbHMgYSBpbWd7Ym9yZGVyOjUwcHggZG90dGVkICNmMGZ9Ym9keS5wcmVzZW50YXRpb24td3JhcHBlci1mdWxsc2NyZWVuLXBhcmVudCxodG1sLnByZXNlbnRhdGlvbi13cmFwcGVyLWZ1bGxzY3JlZW4tcGFyZW50e292ZXJmbG93OmhpZGRlbiFpbXBvcnRhbnR9LnByZXNlbnRhdGlvbi13cmFwcGVyLWZ1bGxzY3JlZW4tcGFyZW50ICN3cGFkbWluYmFye2Rpc3BsYXk6bm9uZX0ucHJlc2VudGF0aW9uLXdyYXBwZXItZnVsbHNjcmVlbiwucHJlc2VudGF0aW9uLXdyYXBwZXItZnVsbHNjcmVlbi1wYXJlbnR7Ym90dG9tOjAhaW1wb3J0YW50O2xlZnQ6MCFpbXBvcnRhbnQ7bWFyZ2luOjAhaW1wb3J0YW50O21pbi1oZWlnaHQ6MTAwJSFpbXBvcnRhbnQ7bWluLXdpZHRoOjEwMCUhaW1wb3J0YW50O3BhZGRpbmc6MCFpbXBvcnRhbnQ7cG9zaXRpb246YWJzb2x1dGUhaW1wb3J0YW50O3JpZ2h0OjAhaW1wb3J0YW50O3RvcDowIWltcG9ydGFudDt6LWluZGV4OjEwMDAwIWltcG9ydGFudH0ucHJlc2VudGF0aW9uLXdyYXBwZXItZnVsbHNjcmVlbntiYWNrZ3JvdW5kLWNvbG9yOmdyZXk7Ym9yZGVyOm5vbmUhaW1wb3J0YW50fS5wcmVzZW50YXRpb24td3JhcHBlci1mdWxsc2NyZWVuIC5uYXYtYXJyb3ctbGVmdCwucHJlc2VudGF0aW9uLXdyYXBwZXItZnVsbHNjcmVlbiAubmF2LWFycm93LXJpZ2h0e3otaW5kZXg6MjAwMDF9LnByZXNlbnRhdGlvbi13cmFwcGVyLWZ1bGxzY3JlZW4gLm5hdi1mdWxsc2NyZWVuLWJ1dHRvbnt6LWluZGV4OjIwMDAyfS5wcmVzZW50YXRpb24td3JhcHBlcntib3JkZXI6MXB4IHNvbGlkICNkY2RjZGU7bGluZS1oZWlnaHQ6bm9ybWFsO21hcmdpbjoyMHB4IGF1dG87b3ZlcmZsb3c6aGlkZGVufS5wcmVzZW50YXRpb257bWFyZ2luOjA7b3V0bGluZTpub25lO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0ucHJlc2VudGF0aW9uLC5wcmVzZW50YXRpb24gLnN0ZXB7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxMDAlIDEwMCV9LnByZXNlbnRhdGlvbiAuc3RlcC5mYWRlOm5vdCguYWN0aXZlKXtvcGFjaXR5OjB9LnByZXNlbnRhdGlvbiAuc2xpZGUtY29udGVudHtwYWRkaW5nOjMwcHh9LnByZXNlbnRhdGlvbiAubmF2LWFycm93LWxlZnQsLnByZXNlbnRhdGlvbiAubmF2LWFycm93LXJpZ2h0LC5wcmVzZW50YXRpb24gLm5hdi1mdWxsc2NyZWVuLWJ1dHRvbntiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzO3dpZHRoOjM0cHg7ei1pbmRleDoyfS5wcmVzZW50YXRpb24gLm5hdi1hcnJvdy1sZWZ0LC5wcmVzZW50YXRpb24gLm5hdi1hcnJvdy1yaWdodHtiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9tb2R1bGVzL3Nob3J0Y29kZXMvaW1hZ2VzL3NsaWRlLW5hdi5wbmcpO2JhY2tncm91bmQtc2l6ZTo0NTAlIDYxcHg7aGVpZ2h0OjEwMCV9LnByZXNlbnRhdGlvbiAubmF2LWFycm93LWxlZnR7YmFja2dyb3VuZC1wb3NpdGlvbjo0cHggNTAlO2xlZnQ6MH0ucHJlc2VudGF0aW9uIC5uYXYtYXJyb3ctcmlnaHR7YmFja2dyb3VuZC1wb3NpdGlvbjotMTIwcHggNTAlO3JpZ2h0OjB9LnByZXNlbnRhdGlvbiAubmF2LWZ1bGxzY3JlZW4tYnV0dG9ue2JhY2tncm91bmQtaW1hZ2U6dXJsKC4uL21vZHVsZXMvc2hvcnRjb2Rlcy9pbWFnZXMvZXhwYW5kLnBuZyk7YmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTtib3R0b206MDtoZWlnaHQ6MzJweDttYXJnaW46NHB4O3JpZ2h0OjA7d2lkdGg6MzJweDt6LWluZGV4OjN9LnByZXNlbnRhdGlvbjpob3ZlciAubmF2LWFycm93LWxlZnQsLnByZXNlbnRhdGlvbjpob3ZlciAubmF2LWFycm93LXJpZ2h0e29wYWNpdHk6MX0ucHJlc2VudGF0aW9uOmhvdmVyIC5uYXYtZnVsbHNjcmVlbi1idXR0b257b3BhY2l0eTouOH0ucHJlc2VudGF0aW9uLXdyYXBwZXItZnVsbHNjcmVlbiAubmF2LWZ1bGxzY3JlZW4tYnV0dG9ue2JhY2tncm91bmQtaW1hZ2U6dXJsKC4uL21vZHVsZXMvc2hvcnRjb2Rlcy9pbWFnZXMvY29sbGFwc2UucG5nKX0ucHJlc2VudGF0aW9uIC5hdXRvcGxheS1vdmVybGF5e2JhY2tncm91bmQtY29sb3I6I2RjZGNkZTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjc1KTtib3JkZXItcmFkaXVzOjUwcHg7ZGlzcGxheTp0YWJsZTtoZWlnaHQ6MTUlO21hcmdpbjozMCUgMTAlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7d2lkdGg6ODAlO3otaW5kZXg6MTAwfS5wcmVzZW50YXRpb24gLmF1dG9wbGF5LW92ZXJsYXkgLm92ZXJsYXktbXNne2NvbG9yOiNmZmY7ZGlzcGxheTp0YWJsZS1jZWxsO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ucHJlc2VudGF0aW9uIC53aWxsLWZhZGV7b3BhY2l0eTowfS5wcmVzZW50YXRpb24gLmRvLWZhZGV7b3BhY2l0eToxO3RyYW5zaXRpb246b3BhY2l0eSAuNXN9ZGl2LmpldHBhY2stcXVpentiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjM7Ym9yZGVyOjFweCBzb2xpZCAjZGVlZGUzO2JvcmRlci1yYWRpdXM6LjJlbTtsaW5lLWhlaWdodDoxLjNlbTttYXJnaW4tYm90dG9tOjJlbTtwYWRkaW5nOjFlbX1kaXYuamV0cGFjay1xdWl6IGRpdi5qZXRwYWNrLXF1aXotcXVlc3Rpb257Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1ib3R0b206LjVlbX1kaXYuamV0cGFjay1xdWl6IGRpdi5qZXRwYWNrLXF1aXotYW5zd2Vye2JvcmRlci1ib3R0b206MXB4IGRvdHRlZCAjOTk5O2N1cnNvcjpwb2ludGVyO21hcmdpbi1ib3R0b206LjVlbTtwYWRkaW5nOjFlbSAwIDFlbSAxZW19ZGl2LmpldHBhY2stcXVpeiBkaXYuamV0cGFjay1xdWl6LWFuc3dlci5sYXN0e2JvcmRlci1ib3R0b206MDttYXJnaW4tYm90dG9tOjA7cGFkZGluZy1ib3R0b206MH1kaXYuamV0cGFjay1xdWl6IGRpdi5qZXRwYWNrLXF1aXotYW5zd2VyLmNvcnJlY3R7Y29sb3I6Z3JlZW59ZGl2LmpldHBhY2stcXVpeiBkaXYuamV0cGFjay1xdWl6LWFuc3dlci53cm9uZ3tjb2xvcjpyZWR9ZGl2LmpldHBhY2stcXVpeiBkaXYuamV0cGFjay1xdWl6LWFuc3dlciBkaXYuamV0cGFjay1xdWl6LWV4cGxhbmF0aW9ue2Rpc3BsYXk6bm9uZX1kaXYuamV0cGFjay1xdWl6IGRpdi5qZXRwYWNrLXF1aXotYW5zd2VyLmNvcnJlY3QgZGl2LmpldHBhY2stcXVpei1leHBsYW5hdGlvbixkaXYuamV0cGFjay1xdWl6IGRpdi5qZXRwYWNrLXF1aXotYW5zd2VyLndyb25nIGRpdi5qZXRwYWNrLXF1aXotZXhwbGFuYXRpb257Y29sb3I6IzAwMDtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTo5MCU7bWFyZ2luLXRvcDoxZW19ZGl2LmpldHBhY2stcXVpeiBkaXYuamV0cGFjay1xdWl6LWFuc3dlci5jb3JyZWN0IGRpdi5qZXRwYWNrLXF1aXotZXhwbGFuYXRpb24gdHQsZGl2LmpldHBhY2stcXVpeiBkaXYuamV0cGFjay1xdWl6LWFuc3dlci53cm9uZyBkaXYuamV0cGFjay1xdWl6LWV4cGxhbmF0aW9uIHR0e2ZvbnQtc2l6ZTo4NSV9ZGl2LmpldHBhY2stcXVpeiBwcmV7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250OjE1cHggTW9uYWNvLENvbnNvbGFzLEFuZGFsZSBNb25vLERlamFWdSBTYW5zIE1vbm8sbW9ub3NwYWNlO21hcmdpbjowO3BhZGRpbmc6MH0uamV0cGFjay1xdWl6LW9wdGlvbnN7bWFyZ2luLXRvcDoxMnB4O3RleHQtYWxpZ246cmlnaHR9LmpldHBhY2stcXVpei1jb3VudHtjb2xvcjojNjQ2OTcwO2Zsb2F0OmxlZnQ7Zm9udC1zaXplOjEycHh9LmpldHBhY2stcXVpei1vcHRpb24tYnV0dG9ue2N1cnNvcjpwb2ludGVyO21hcmdpbi1sZWZ0OjEycHh9LmpldHBhY2stcXVpei1vcHRpb24tYnV0dG9uOmhvdmVyIHN2Z3tiYWNrZ3JvdW5kOiMzYzQzNGF9LmpldHBhY2stcXVpei1vcHRpb24tYnV0dG9uIHN2Z3tmaWxsOiNmZmY7YmFja2dyb3VuZDojMDAwO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9LmpldHBhY2stcXVpei13cmFwcGVyIC5qZXRwYWNrLXF1aXo6Zmlyc3Qtb2YtdHlwZSAuamV0cGFjay1xdWl6LW9wdGlvbi1idXR0b246Zmlyc3Qtb2YtdHlwZSwuamV0cGFjay1xdWl6LXdyYXBwZXIgLmpldHBhY2stcXVpejpsYXN0LW9mLXR5cGUgLmpldHBhY2stcXVpei1vcHRpb24tYnV0dG9uOmxhc3Qtb2YtdHlwZXtkaXNwbGF5Om5vbmV9I3N1YnNjcmliZS1lbWFpbCBpbnB1dHt3aWR0aDo5NSV9LmNvbW1lbnQtc3Vic2NyaXB0aW9uLWZvcm17bWFyZ2luLWJvdHRvbToxZW19LmNvbW1lbnQtc3Vic2NyaXB0aW9uLWZvcm0gLnN1YnNjcmliZS1sYWJlbHtkaXNwbGF5OmlubGluZSFpbXBvcnRhbnR9LmpldHBhY2stdmlkZW8td3JhcHBlcnttYXJnaW4tYm90dG9tOjEuNmVtfS5qZXRwYWNrLXZpZGVvLXdyYXBwZXI+LndwLXZpZGVvLC5qZXRwYWNrLXZpZGVvLXdyYXBwZXI+ZW1iZWQsLmpldHBhY2stdmlkZW8td3JhcHBlcj5pZnJhbWUsLmpldHBhY2stdmlkZW8td3JhcHBlcj5vYmplY3R7bWFyZ2luLWJvdHRvbTowfS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uIHVse2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjAgMCAxLjVlbTtwYWRkaW5nOjB9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24gbGl7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGluZS1oZWlnaHQ6MTttYXJnaW46MH0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbiBhe2JvcmRlcjowO2hlaWdodDoxZW07dGV4dC1kZWNvcmF0aW9uOm5vbmU7d2lkdGg6MWVtfS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLXN2ZyAuaWNvbntmaWxsOmN1cnJlbnRDb2xvcjtjb2xvcjppbmhlcml0O2hlaWdodDoxZW07dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjFlbX0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGE6YmVmb3Jley13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlO3NwZWFrOm5vbmU7Y29udGVudDoiXGY0MTUiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtZmFtaWx5OkdlbmVyaWNvbnM7Zm9udC1zaXplOjFlbTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7aGVpZ2h0OjFlbTtsaW5lLWhlaWdodDoxO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDoxZW19LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJjb2RlcGVuLmlvIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjE2In0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9ImRpZ2cuY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjIxIn0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9ImRyaWJiYmxlLmNvbSJdOmJlZm9yZXtjb250ZW50OiJcZjIwMSJ9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJkcm9wYm94LmNvbSJdOmJlZm9yZXtjb250ZW50OiJcZjIyNSJ9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJtYWlsdG86Il06YmVmb3Jle2NvbnRlbnQ6IlxmNDEwIn0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9ImZhY2Vib29rLmNvbSJdOmJlZm9yZXtjb250ZW50OiJcZjIwMyJ9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJmbGlja3IuY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjExIn0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9ImZvdXJzcXVhcmUuY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjI2In0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9ImdpdGh1Yi5jb20iXTpiZWZvcmV7Y29udGVudDoiXGYyMDAifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0icGx1cy5nb29nbGUuY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjA2In0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9Imluc3RhZ3JhbS5jb20iXTpiZWZvcmV7Y29udGVudDoiXGYyMTUifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0ibGlua2VkaW4uY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjA4In0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9InBhdGguY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjE5In0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9InBpbnRlcmVzdC4iXTpiZWZvcmV7Y29udGVudDoiXGYyMTAifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0iZ2V0cG9ja2V0LmNvbSJdOmJlZm9yZXtjb250ZW50OiJcZjIyNCJ9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJwb2xsZGFkZHkuY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjE3In0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9InJlZGRpdC5jb20iXTpiZWZvcmV7Y29udGVudDoiXGYyMjIifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmJD0iL2ZlZWQvIl06YmVmb3Jle2NvbnRlbnQ6IlxmNDEzIn0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9InNreXBlOiJdOmJlZm9yZXtjb250ZW50OiJcZjIyMCJ9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJzcG90aWZ5LmNvbSJdOmJlZm9yZXtjb250ZW50OiJcZjUxNSJ9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJzdHVtYmxldXBvbi5jb20iXTpiZWZvcmV7Y29udGVudDoiXGYyMjMifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0idHVtYmxyLmNvbSJdOmJlZm9yZXtjb250ZW50OiJcZjIxNCJ9LmpldHBhY2stc29jaWFsLW5hdmlnYXRpb24tZ2VuZXJpY29ucyBhW2hyZWYqPSJ0d2l0Y2gudHYiXTpiZWZvcmV7Y29udGVudDoiXGY1MTYifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0idHdpdHRlci5jb20iXTpiZWZvcmV7Y29udGVudDoiXGYyMDIifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0idmltZW8uY29tIl06YmVmb3Jle2NvbnRlbnQ6IlxmMjEyIn0uamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9InZpbmUuY28iXTpiZWZvcmV7Y29udGVudDoiXGY1MTcifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0id29yZHByZXNzLmNvbSJdOmJlZm9yZSwuamV0cGFjay1zb2NpYWwtbmF2aWdhdGlvbi1nZW5lcmljb25zIGFbaHJlZio9IndvcmRwcmVzcy5vcmciXTpiZWZvcmV7Y29udGVudDoiXGYyMDUifS5qZXRwYWNrLXNvY2lhbC1uYXZpZ2F0aW9uLWdlbmVyaWNvbnMgYVtocmVmKj0ieW91dHViZS5jb20iXTpiZWZvcmV7Y29udGVudDoiXGYyMTMifS50aWxlZC1nYWxsZXJ5e2NsZWFyOmJvdGg7bWFyZ2luOjAgMCAyMHB4O292ZXJmbG93OmhpZGRlbn0udGlsZWQtZ2FsbGVyeSBpbWd7bWFyZ2luOjJweCFpbXBvcnRhbnR9LnRpbGVkLWdhbGxlcnkgLmdhbGxlcnktZ3JvdXB7ZmxvYXQ6bGVmdDtwb3NpdGlvbjpyZWxhdGl2ZX0udGlsZWQtZ2FsbGVyeSAudGlsZWQtZ2FsbGVyeS1pdGVte2Zsb2F0OmxlZnQ7bWFyZ2luOjA7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6aW5oZXJpdH0udGlsZWQtZ2FsbGVyeSAuZ2FsbGVyeS1yb3d7b3ZlcmZsb3c6aGlkZGVufS50aWxlZC1nYWxsZXJ5IC50aWxlZC1nYWxsZXJ5LWl0ZW0gYXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2NvbG9yOmluaGVyaXQ7bWFyZ2luOjA7cGFkZGluZzowO3RleHQtZGVjb3JhdGlvbjpub25lO3dpZHRoOmF1dG99LnRpbGVkLWdhbGxlcnkgLnRpbGVkLWdhbGxlcnktaXRlbSBpbWcsLnRpbGVkLWdhbGxlcnkgLnRpbGVkLWdhbGxlcnktaXRlbSBpbWc6aG92ZXJ7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2JveC1zaGFkb3c6bm9uZTttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjA7dmVydGljYWwtYWxpZ246bWlkZGxlfS50aWxlZC1nYWxsZXJ5LWNhcHRpb257YmFja2dyb3VuZDojZjBmMGYxO2JhY2tncm91bmQ6aHNsYSgwLDAlLDEwMCUsLjgpO2JvdHRvbTowO2NvbG9yOiMzMzM7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjEwcHggMDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWluZGVudDoxMHB4O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCV9LnRpbGVkLWdhbGxlcnkgLnRpbGVkLWdhbGxlcnktaXRlbS1zbWFsbCAudGlsZWQtZ2FsbGVyeS1jYXB0aW9ue2ZvbnQtc2l6ZToxMXB4fS53aWRnZXQtZ2FsbGVyeSAudGlsZWQtZ2FsbGVyeS11bnJlc2l6ZWR7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO3Zpc2liaWxpdHk6aGlkZGVufS50aWxlZC1nYWxsZXJ5IC50aWxlZC1nYWxsZXJ5LWl0ZW0gaW1nLmdyYXlzY2FsZXtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9LnRpbGVkLWdhbGxlcnkgLnRpbGVkLWdhbGxlcnktaXRlbSBpbWcuZ3JheXNjYWxlOmhvdmVye29wYWNpdHk6MH0udGlsZWQtZ2FsbGVyeS50eXBlLWNpcmNsZSAudGlsZWQtZ2FsbGVyeS1pdGVtIGltZ3tib3JkZXItcmFkaXVzOjUwJSFpbXBvcnRhbnQ7b2JqZWN0LWZpdDpjb3Zlcn0udGlsZWQtZ2FsbGVyeS50eXBlLWNpcmNsZSAudGlsZWQtZ2FsbGVyeS1jYXB0aW9ue2Rpc3BsYXk6bm9uZX0udGlsZWQtZ2FsbGVyeS50eXBlLXNxdWFyZSAudGlsZWQtZ2FsbGVyeS1pdGVtIGltZ3tvYmplY3QtZml0OmNvdmVyfS5qZXRwYWNrLWRpc3BsYXktcmVtb3RlLXBvc3Rze21hcmdpbjo1cHggMCAyMHB4fS5qZXRwYWNrLWRpc3BsYXktcmVtb3RlLXBvc3RzIGg0e21hcmdpbjo1cHggMDtwYWRkaW5nOjB9LmpldHBhY2stZGlzcGxheS1yZW1vdGUtcG9zdHMgcHttYXJnaW46MDtwYWRkaW5nOjB9LmpldHBhY2stZGlzcGxheS1yZW1vdGUtcG9zdHMgaW1ne21heC13aWR0aDoxMDAlfS53aWRnZXQtZ3JvZmlsZSBoNHttYXJnaW46MWVtIDAgLjVlbX0ud2lkZ2V0LWdyb2ZpbGUgdWwuZ3JvZmlsZS11cmxze21hcmdpbi1sZWZ0OjA7b3ZlcmZsb3c6aGlkZGVufS53aWRnZXQtZ3JvZmlsZSB1bC5ncm9maWxlLWFjY291bnRzIGxpe2Rpc3BsYXk6aW5saW5lO2xpc3Qtc3R5bGU6bm9uZX0ud2lkZ2V0LWdyb2ZpbGUgdWwuZ3JvZmlsZS1hY2NvdW50cyBsaTpiZWZvcmV7Y29udGVudDoiIiFpbXBvcnRhbnR9LndpZGdldC1ncm9maWxlIC5ncm9maWxlLWFjY291bnRzLWxvZ297YmFja2dyb3VuZC1pbWFnZTp1cmwoaHR0cHM6Ly9zZWN1cmUuZ3JhdmF0YXIuY29tL2ltYWdlcy9ncmF2LXNoYXJlLXNwcml0ZS5wbmcpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtmbG9hdDpsZWZ0O2hlaWdodDoxNnB4O21hcmdpbi1ib3R0b206OHB4O21hcmdpbi1yaWdodDo4cHg7d2lkdGg6MTZweH0ucnRsIC53aWRnZXQtZ3JvZmlsZSAuZ3JvZmlsZS1hY2NvdW50cy1sb2dve21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6MH0uZ3JvZmlsZS10aHVtYm5haWx7bWF4LXdpZHRoOjEwMCU7d2lkdGg6NTAwcHh9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzozLzIpLG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjEuNSksb25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86MS41KSxvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MS41KXsud2lkZ2V0LWdyb2ZpbGUgLmdyb2ZpbGUtYWNjb3VudHMtbG9nb3tiYWNrZ3JvdW5kLWltYWdlOnVybChodHRwczovL3NlY3VyZS5ncmF2YXRhci5jb20vaW1hZ2VzL2dyYXYtc2hhcmUtc3ByaXRlLTJ4LnBuZyk7YmFja2dyb3VuZC1zaXplOjE2cHggNzg0cHh9fWRpdltjbGFzc149Z3JfY3VzdG9tX2NvbnRhaW5lcl17YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgZ3JheTtib3JkZXItcmFkaXVzOjEwcHg7Y29sb3I6IzAwMDtwYWRkaW5nOjEwcHggNXB4fWRpdltjbGFzc149Z3JfY3VzdG9tX2NvbnRhaW5lcl0gYXtjb2xvcjojMDAwfWgyW2NsYXNzXj1ncl9jdXN0b21faGVhZGVyXXtkaXNwbGF5Om5vbmV9ZGl2W2NsYXNzXj1ncl9jdXN0b21fZWFjaF9jb250YWluZXJde2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNhN2FhYWQ7Y2xlYXI6Ym90aDttYXJnaW4tYm90dG9tOjEwcHg7b3ZlcmZsb3c6YXV0bztwYWRkaW5nLWJvdHRvbTo0cHg7d2lkdGg6MTAwJX1kaXZbY2xhc3NePWdyX2N1c3RvbV9ib29rX2NvbnRhaW5lcl17ZmxvYXQ6cmlnaHQ7aGVpZ2h0OjYwcHg7bWFyZ2luLWxlZnQ6NHB4O292ZXJmbG93OmhpZGRlbjt3aWR0aDozOXB4fWRpdltjbGFzc149Z3JfY3VzdG9tX2F1dGhvcl17Zm9udC1zaXplOjEwcHh9ZGl2W2NsYXNzXj1ncl9jdXN0b21fdGFnc117Y29sb3I6Z3JheTtmb250LXNpemU6MTBweH1kaXZbY2xhc3NePWdyX2N1c3RvbV9yYXRpbmdde2Rpc3BsYXk6bm9uZX0ud2lkZ2V0X3dwY29tX3NvY2lhbF9tZWRpYV9pY29uc193aWRnZXQgdWx7bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luLWxlZnQ6MH0ud2lkZ2V0X3dwY29tX3NvY2lhbF9tZWRpYV9pY29uc193aWRnZXQgdWwgbGl7Ym9yZGVyOjA7ZGlzcGxheTppbmxpbmU7bWFyZ2luLXJpZ2h0Oi41ZW19LndpZGdldF93cGNvbV9zb2NpYWxfbWVkaWFfaWNvbnNfd2lkZ2V0IGxpIGF7Ym9yZGVyOjA7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LndpZGdldF93cGNvbV9zb2NpYWxfbWVkaWFfaWNvbnNfd2lkZ2V0IC5nZW5lcmljb257Zm9udC1mYW1pbHk6R2VuZXJpY29uc30ud2lkZ2V0X3dwY29tX3NvY2lhbF9tZWRpYV9pY29uc193aWRnZXQgLnNjcmVlbi1yZWFkZXItdGV4dHtjbGlwOnJlY3QoMXB4LDFweCwxcHgsMXB4KTtoZWlnaHQ6MXB4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7d2lkdGg6MXB4fS53aWRnZXRfd3Bjb21fc29jaWFsX21lZGlhX2ljb25zX3dpZGdldCAuc2NyZWVuLXJlYWRlci10ZXh0OmFjdGl2ZSwud2lkZ2V0X3dwY29tX3NvY2lhbF9tZWRpYV9pY29uc193aWRnZXQgLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cywud2lkZ2V0X3dwY29tX3NvY2lhbF9tZWRpYV9pY29uc193aWRnZXQgLnNjcmVlbi1yZWFkZXItdGV4dDpob3ZlcntjbGlwOmF1dG8haW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6I2YwZjBmMTtib3JkZXItcmFkaXVzOjNweDtib3gtc2hhZG93OjAgMCAycHggMnB4IHJnYmEoMCwwLDAsLjYpO2NvbG9yOiMyMTc1OWI7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTRweDtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7aGVpZ2h0OmF1dG87bGVmdDo1cHg7bGluZS1oZWlnaHQ6bm9ybWFsO3BhZGRpbmc6MTVweCAyM3B4IDE0cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dG9wOjVweDt3aWR0aDphdXRvO3otaW5kZXg6MTAwMDAwfS53aWRnZXRzLWdyaWQtbGF5b3V0e3dpZHRoOjEwMCV9LndpZGdldHMtZ3JpZC1sYXlvdXQ6YWZ0ZXIsLndpZGdldHMtZ3JpZC1sYXlvdXQ6YmVmb3Jle2NvbnRlbnQ6IiAiO2Rpc3BsYXk6dGFibGV9LndpZGdldHMtZ3JpZC1sYXlvdXQ6YWZ0ZXJ7Y2xlYXI6Ym90aH0ud2lkZ2V0LWdyaWQtdmlldy1pbWFnZXtmbG9hdDpsZWZ0O21heC13aWR0aDo1MCV9LndpZGdldC1ncmlkLXZpZXctaW1hZ2UgYXtkaXNwbGF5OmJsb2NrO21hcmdpbjowIDJweCA0cHggMH0ud2lkZ2V0LWdyaWQtdmlldy1pbWFnZTpudGgtY2hpbGQoMm4pe2Zsb2F0OnJpZ2h0fS53aWRnZXQtZ3JpZC12aWV3LWltYWdlOm50aC1jaGlsZCgybikgYXttYXJnaW46MCAwIDRweCAycHh9LndpZGdldHMtZ3JpZC1sYXlvdXQgLndpZGdldC1ncmlkLXZpZXctaW1hZ2UgaW1ne2hlaWdodDphdXRvO21heC13aWR0aDoxMDAlfS53aWRnZXRzLWxpc3QtbGF5b3V0e2xpc3Qtc3R5bGUtdHlwZTpub25lO21hcmdpbjowO3BhZGRpbmc6MH0ud2lkZ2V0cy1saXN0LWxheW91dCBsaTphZnRlciwud2lkZ2V0cy1saXN0LWxheW91dCBsaTpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OnRhYmxlfS53aWRnZXRzLWxpc3QtbGF5b3V0IGxpOmFmdGVye2NsZWFyOmJvdGh9LndpZGdldHMtbGlzdC1sYXlvdXQgbGl7em9vbToxO2xpc3Qtc3R5bGUtdHlwZTpub25lIWltcG9ydGFudDttYXJnaW4tYm90dG9tOjFlbX0ud2lkZ2V0cy1saXN0LWxheW91dCAud2lkZ2V0cy1saXN0LWxheW91dC1ibGF2YXRhcntmbG9hdDpsZWZ0O2hlaWdodDphdXRvO21heC13aWR0aDo0MHB4O3dpZHRoOjIxLjI3NjU5NiV9LndpZGdldHMtbGlzdC1sYXlvdXQtbGlua3N7ZmxvYXQ6cmlnaHQ7d2lkdGg6NzMuNDA0MjU1JX0ud2lkZ2V0cy1saXN0LWxheW91dCBzcGFue29wYWNpdHk6LjV9LndpZGdldHMtbGlzdC1sYXlvdXQgc3Bhbjpob3ZlcntvcGFjaXR5Oi44fS5qZXRwYWNrLWltYWdlLWNvbnRhaW5lcjphZnRlcntjbGVhcjpib3RofS5qZXRwYWNrLWltYWdlLWNvbnRhaW5lcjphZnRlciwuamV0cGFjay1pbWFnZS1jb250YWluZXI6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTp0YWJsZX0ud2lkZ2V0cy1tdWx0aS1jb2x1bW4tZ3JpZCB1bHtsaXN0LXN0eWxlLXR5cGU6bm9uZTttYXJnaW46MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowfS53aWRnZXRzLW11bHRpLWNvbHVtbi1ncmlkIHVsIGxpe2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtjbGVhcjpub25lO2Zsb2F0OmxlZnQ7bGlzdC1zdHlsZS10eXBlOm5vbmUhaW1wb3J0YW50O21hcmdpbjowIC01cHggLTNweCAwO3BhZGRpbmc6MCA4cHggNnB4IDB9LndpZGdldHMtbXVsdGktY29sdW1uLWdyaWQgdWwgbGkgYXtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOjA7bWFyZ2luOjA7cGFkZGluZzowfS53aWRnZXRzLW11bHRpLWNvbHVtbi1ncmlkIC5hdmF0YXJ7dmVydGljYWwtYWxpZ246bWlkZGxlfS53aWRnZXRfamV0cGFja19teV9jb21tdW5pdHkgLmF2YXRhci0yNDAsLndpZGdldF9qZXRwYWNrX215X2NvbW11bml0eSAuYXZhdGFyLTQ4e21heC1oZWlnaHQ6NDhweDttYXgtd2lkdGg6NDhweH0ud2lkZ2V0LndpZGdldF9hdXRob3JzIGxpPnVsLC53aWRnZXRfYXV0aG9ycz51bHttYXJnaW4tbGVmdDppbmhlcml0O3BhZGRpbmctbGVmdDowfS53aWRnZXRfYXV0aG9ycyB1bCBsaSBsaXtwYWRkaW5nLWxlZnQ6MH0ud2lkZ2V0X2F1dGhvcnM+dWw+bGl7bGlzdC1zdHlsZTpub25lO21hcmdpbi1ib3R0b206MWVtfS53aWRnZXRfYXV0aG9ycz51bD5saStsaXtib3JkZXItdG9wOjB9LndpZGdldC53aWRnZXRfYXV0aG9ycyBpbWd7Ym94LXNoYWRvdzpub25lO21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1yaWdodDo1cHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS53cGNudHtsaW5lLWhlaWdodDoyO3RleHQtYWxpZ246Y2VudGVyfS53cGF7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfS53cGEtYWJvdXR7Ym9yZGVyLWJvdHRvbTpub25lIWltcG9ydGFudDtib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50O2NvbG9yOiM4ODg7ZGlzcGxheTpibG9jaztmb250OjEwcHgvMSBPcGVuIFNhbnMsQXJpYWwsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7bGVmdDowO21hcmdpbi10b3A6MDtvcGFjaXR5Oi44NTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmUhaW1wb3J0YW50O3RvcDo1cHh9LndwYSAudT5kaXZ7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjFlbTttYXJnaW4tdG9wOjVweH1kaXYud3BhPmRpdnttYXJnaW4tdG9wOjIwcHh9LndwYSAudSAuYWRzYnlnb29nbGV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MWVtO21hcmdpbi10b3A6MTdweH0ud2lkZ2V0X2V1X2Nvb2tpZV9sYXdfd2lkZ2V0e2FuaW1hdGlvbjpmYWRlSW4gLjhzO2JvcmRlcjpub25lO2JvdHRvbToxZW07bGVmdDoxZW07bWFyZ2luOjA7cGFkZGluZzowO3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjFlbTt3aWR0aDphdXRvO3otaW5kZXg6NTAwMDF9QGtleWZyYW1lcyBmYWRlSW57MCV7b3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVufXRve29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGV9fS53aWRnZXRfZXVfY29va2llX2xhd193aWRnZXQud2lkZ2V0LnRvcHtib3R0b206YXV0bzt0b3A6MWVtfS5hZG1pbi1iYXIgLndpZGdldF9ldV9jb29raWVfbGF3X3dpZGdldC53aWRnZXQudG9we3RvcDozZW19YW1wLWNvbnNlbnQud2lkZ2V0X2V1X2Nvb2tpZV9sYXdfd2lkZ2V0LndpZGdldC50b3B7bWFyZ2luOjA7dG9wOjFlbX0uYWRtaW4tYmFyIGFtcC1jb25zZW50LndpZGdldF9ldV9jb29raWVfbGF3X3dpZGdldC53aWRnZXQudG9we21hcmdpbi10b3A6M2VtO3RvcDowfSNldS1jb29raWUtbGF3e2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZWRlZGU7Y29sb3I6IzJlNDQ2Nztmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjU7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6NnB4IDZweCA2cHggMTVweDtwb3NpdGlvbjpyZWxhdGl2ZX0jZXUtY29va2llLWxhdyBhLCNldS1jb29raWUtbGF3IGE6YWN0aXZlLCNldS1jb29raWUtbGF3IGE6dmlzaXRlZHtjb2xvcjppbmhlcml0O2N1cnNvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9I2V1LWNvb2tpZS1sYXcgYTpob3ZlcntjdXJzb3I6cG9pbnRlcjt0ZXh0LWRlY29yYXRpb246bm9uZX0jZXUtY29va2llLWxhdy5uZWdhdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7Ym9yZGVyOm5vbmU7Y29sb3I6I2ZmZn0jZXUtY29va2llLWxhdy5oaWRle29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzLHZpc2liaWxpdHkgLjRzO3Zpc2liaWxpdHk6aGlkZGVufSNldS1jb29raWUtbGF3IGZvcm17bWFyZ2luLWJvdHRvbTowO3Bvc2l0aW9uOnN0YXRpY30jZXUtY29va2llLWxhdyBpbnB1dCwjZXUtY29va2llLWxhdyBpbnB1dDpmb2N1cywjZXUtY29va2llLWxhdyBpbnB1dDpob3ZlcntiYWNrZ3JvdW5kOiNmM2YzZjM7Ym9yZGVyOjFweCBzb2xpZCAjZGVkZWRlO2JvcmRlci1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1czozcHg7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjNweDtjb2xvcjojMmU0NDUzO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lO2Zsb2F0OnJpZ2h0O2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6aW5oZXJpdDtsaW5lLWhlaWdodDppbmhlcml0O21hcmdpbjowIDAgMCA1JTtwYWRkaW5nOjhweCAxMnB4O3Bvc2l0aW9uOnN0YXRpYzt0ZXh0LXRyYW5zZm9ybTpub25lfSNldS1jb29raWUtbGF3Lm5lZ2F0aXZlIGlucHV0LCNldS1jb29raWUtbGF3Lm5lZ2F0aXZlIGlucHV0OmZvY3VzLCNldS1jb29raWUtbGF3Lm5lZ2F0aXZlIGlucHV0OmhvdmVye2JhY2tncm91bmQ6IzI4MjgyODtib3JkZXItY29sb3I6IzUzNTM1Mztjb2xvcjojZmZmfUBtZWRpYSAobWF4LXdpZHRoOjYwMHB4KXsjZXUtY29va2llLWxhd3twYWRkaW5nLWJvdHRvbTo1NXB4fSNldS1jb29raWUtbGF3IGlucHV0LmFjY2VwdHtib3R0b206OHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjhweH19LndpZGdldF9ldV9jb29raWVfbGF3X3dpZGdldCAuY3VzdG9taXplLXBhcnRpYWwtZWRpdC1zaG9ydGN1dD5idXR0b257bGVmdDowfS5mbGlja3ItaW1hZ2Vze3RleHQtYWxpZ246Y2VudGVyfS5mbGlja3Itc2l6ZS10aHVtYm5haWwgLmZsaWNrci1pbWFnZXN7YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7ZmxleC1mbG93OnJvdyB3cmFwO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmZsaWNrci1pbWFnZXMgaW1ne21hcmdpbjo1cHg7bWF4LXdpZHRoOjEwMCV9LndwY29tLWluc3RhZ3JhbS1pbWFnZXN7Z3JpZC1nYXA6LjVyZW07ZGlzcGxheTpncmlkO2dyaWQtYXV0by1jb2x1bW5zOjFmcn0ud3Bjb20taW5zdGFncmFtLWltYWdlczphZnRlciwud3Bjb20taW5zdGFncmFtLWltYWdlczpiZWZvcmV7Y29udGVudDpub25lfS53cGNvbS1pbnN0YWdyYW0taW1hZ2VzIGF7ZGlzcGxheTpibG9jazttYXJnaW46NHB4IDJweH0ud3Bjb20taW5zdGFncmFtLWNvbHVtbnMtMiBhLC53cGNvbS1pbnN0YWdyYW0tY29sdW1ucy0zIGF7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wfS53cGNvbS1pbnN0YWdyYW0tY29sdW1ucy0yIGF7d2lkdGg6Y2FsYyg1MCUgLSA4cHgpfS53cGNvbS1pbnN0YWdyYW0tY29sdW1ucy0zIGF7d2lkdGg6Y2FsYygzMy4zMzMzJSAtIDhweCl9LndwY29tLWluc3RhZ3JhbS1pbWFnZXMgLnNxLWJnLWltYWdle2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctYm90dG9tOjEwMCV9LndwY29tLWluc3RhZ3JhbS1jb2x1bW5zLTJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLDFmcil9LndwY29tLWluc3RhZ3JhbS1jb2x1bW5zLTN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLDFmcil9QHN1cHBvcnRzIChkaXNwbGF5OmdyaWQpey53cGNvbS1pbnN0YWdyYW0taW1hZ2VzIGF7ZGlzcGxheTpibG9jazttYXJnaW46MH0ud3Bjb20taW5zdGFncmFtLWNvbHVtbnMtMiBhLC53cGNvbS1pbnN0YWdyYW0tY29sdW1ucy0zIGF7d2lkdGg6YXV0b319LmpldHBhY2stc2VhcmNoLWZpbHRlcnMtd2lkZ2V0X19zdWItaGVhZGluZ3tmb250LXNpemU6aW5oZXJpdDtmb250LXdlaWdodDo3MDA7bWFyZ2luOjAgMCAuNWVtO3BhZGRpbmc6MH0uamV0cGFjay1zZWFyY2gtZm9ybSsuamV0cGFjay1zZWFyY2gtZmlsdGVycy13aWRnZXRfX3N1Yi1oZWFkaW5ne21hcmdpbi1ib3R0b206LjVlbSFpbXBvcnRhbnQ7bWFyZ2luLXRvcDoxLjVlbX0uamV0cGFjay1zZWFyY2gtZmlsdGVycy13aWRnZXRfX2NsZWFye21hcmdpbi1ib3R0b206LjVlbTttYXJnaW4tdG9wOi41ZW19LmpldHBhY2stc2VhcmNoLXNvcnQtd3JhcHBlcnttYXJnaW4tYm90dG9tOjEuNWVtO21hcmdpbi10b3A6MWVtfS5qZXRwYWNrLXNlYXJjaC1zb3J0LXdyYXBwZXIgbGFiZWx7ZGlzcGxheTppbmhlcml0fS53aWRnZXRfc2VhcmNoIC5qZXRwYWNrLXNlYXJjaC1maWx0ZXJzLXdpZGdldF9fZmlsdGVyLWxpc3QgaW5wdXRbdHlwZT1jaGVja2JveF17aGVpZ2h0OmF1dG87d2lkdGg6YXV0b311bC5qZXRwYWNrLXNlYXJjaC1maWx0ZXJzLXdpZGdldF9fZmlsdGVyLWxpc3QgbGl7Ym9yZGVyOm5vbmU7bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MH11bC5qZXRwYWNrLXNlYXJjaC1maWx0ZXJzLXdpZGdldF9fZmlsdGVyLWxpc3QgbGkgYXt0ZXh0LWRlY29yYXRpb246bm9uZX11bC5qZXRwYWNrLXNlYXJjaC1maWx0ZXJzLXdpZGdldF9fZmlsdGVyLWxpc3QgbGkgYTpob3Zlcntib3gtc2hhZG93Om5vbmV9dWwuamV0cGFjay1zZWFyY2gtZmlsdGVycy13aWRnZXRfX2ZpbHRlci1saXN0IGxpIGxhYmVse2Rpc3BsYXk6aW5oZXJpdDtmb250LXdlaWdodDppbmhlcml0fS5qZXRwYWNrLXNlYXJjaC1maWx0ZXJzLXdpZGdldF9fZmlsdGVyLWxpc3R7bGlzdC1zdHlsZTpub25lfXVsLmpldHBhY2stc2VhcmNoLWZpbHRlcnMtd2lkZ2V0X19maWx0ZXItbGlzdHttYXJnaW4tYm90dG9tOjEuNWVtfWJvZHkuc2VhcmNoIC5qZXRwYWNrLXNlYXJjaC1mb3JtIGlucHV0W25hbWU9c106OnBsYWNlaG9sZGVye2NvbG9yOnRyYW5zcGFyZW50fWJvZHkuc2VhcmNoIC5qZXRwYWNrLXNlYXJjaC1mb3JtIGlucHV0W25hbWU9c10uc2hvdy1wbGFjZWhvbGRlcjo6cGxhY2Vob2xkZXJ7Y29sb3I6aW5oZXJpdH1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjQwMHB4KXsud2lkZ2V0LmpldHBhY2stc2ltcGxlLXBheW1lbnRzIC5qZXRwYWNrLXNpbXBsZS1wYXltZW50cy1wcm9kdWN0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ud2lkZ2V0LmpldHBhY2stc2ltcGxlLXBheW1lbnRzIC5qZXRwYWNrLXNpbXBsZS1wYXltZW50cy1kZXRhaWxze3BhZGRpbmctbGVmdDowfX0uamV0cGFja193aWRnZXRfc29jaWFsX2ljb25zIGxpLC5qZXRwYWNrX3dpZGdldF9zb2NpYWxfaWNvbnMgdWx7bGlzdC1zdHlsZTpub25lfS5qZXRwYWNrX3dpZGdldF9zb2NpYWxfaWNvbnMgdWx7ZGlzcGxheTpibG9jazttYXJnaW46MCAwIDEuNWVtO3BhZGRpbmc6MH0uamV0cGFja193aWRnZXRfc29jaWFsX2ljb25zIHVsIGxpe2JvcmRlcjowO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2xpbmUtaGVpZ2h0OjE7bWFyZ2luOjA7cGFkZGluZzowfS5qZXRwYWNrX3dpZGdldF9zb2NpYWxfaWNvbnMgdWwgbGk6YWZ0ZXIsLmpldHBhY2tfd2lkZ2V0X3NvY2lhbF9pY29ucyB1bCBsaTpiZWZvcmV7ZGlzcGxheTpub25lfS5qZXRwYWNrX3dpZGdldF9zb2NpYWxfaWNvbnMgYXtib3JkZXI6MDtib3gtc2hhZG93Om5vbmU7ZGlzcGxheTpibG9jaztoZWlnaHQ6MjRweDt0ZXh0LWRlY29yYXRpb246bm9uZTt3aWR0aDoyNHB4fS5qZXRwYWNrX3dpZGdldF9zb2NpYWxfaWNvbnMgc3Zne2ZpbGw6Y3VycmVudENvbG9yO2NvbG9yOmluaGVyaXQ7aGVpZ2h0OmluaGVyaXQ7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOmluaGVyaXR9LmpldHBhY2tfd2lkZ2V0X3NvY2lhbF9pY29ucyB1bC5zaXplLXNtYWxsIGF7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0uamV0cGFja193aWRnZXRfc29jaWFsX2ljb25zIHVsLnNpemUtbWVkaXVtIGF7aGVpZ2h0OjMycHg7d2lkdGg6MzJweH0uamV0cGFja193aWRnZXRfc29jaWFsX2ljb25zIHVsLnNpemUtbGFyZ2UgYXtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS5zY3JlZW4tcmVhZGVyLXRleHR7Y2xpcDpyZWN0KDFweCwxcHgsMXB4LDFweCk7d29yZC13cmFwOm5vcm1hbCFpbXBvcnRhbnQ7Ym9yZGVyOjA7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoNTAlKTtjbGlwLXBhdGg6aW5zZXQoNTAlKTtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGUhaW1wb3J0YW50O3dpZHRoOjFweH0ubWlsZXN0b25lLXdpZGdldHttYXJnaW4tYm90dG9tOjFlbX0ubWlsZXN0b25lLWNvbnRlbnR7bGluZS1oZWlnaHQ6MjttYXJnaW4tdG9wOjVweDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjA7dGV4dC1hbGlnbjpjZW50ZXJ9Lm1pbGVzdG9uZS1oZWFkZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1taWxlc3RvbmUtdGV4dC1jb2xvciwjMTExKTtjb2xvcjp2YXIoLS1taWxlc3RvbmUtYmctY29sb3IsI2ZmZik7bGluZS1oZWlnaHQ6MS4zO21hcmdpbjowO3BhZGRpbmc6LjhlbX0ubWlsZXN0b25lLWhlYWRlciAuZGF0ZSwubWlsZXN0b25lLWhlYWRlciAuZXZlbnR7ZGlzcGxheTpibG9ja30ubWlsZXN0b25lLWhlYWRlciAuZXZlbnR7Zm9udC1zaXplOjEyMCV9Lm1pbGVzdG9uZS1jb3VudGRvd24gLmRpZmZlcmVuY2V7ZGlzcGxheTpibG9jaztmb250LXNpemU6NTAwJTtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MS4yfS5taWxlc3RvbmUtY291bnRkb3duLC5taWxlc3RvbmUtbWVzc2FnZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1pbGVzdG9uZS1iZy1jb2xvciwjZmZmKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLW1pbGVzdG9uZS1ib3JkZXItY29sb3IsIzc2NzY3Nik7Ym9yZGVyLXRvcDowO2NvbG9yOnZhcigtLW1pbGVzdG9uZS10ZXh0LWNvbG9yLCMxMTEpO3BhZGRpbmctYm90dG9tOjFlbX0ubWlsZXN0b25lLW1lc3NhZ2V7cGFkZGluZy10b3A6MWVtfQ=="}},"time_used":515,"timings":{"blocked":324,"dns":0,"connect":0,"send":0,"wait":96,"receive":95,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.644Z","timestamp":1785148618644,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 11224\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:10 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":11224,"size_decoded":11441,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (11126)","md5":"79b4956b7ec478ec10244b5e2d33ac7d","sha1":"a46025b9d05e3df30d610a8aef14f392c7058dc9","sha256":"029e0a2e809fd6b5dbe76abe8b7a74936be306c9a8c27c814c4d44aa54623300","sha512":"217f86fee871fa36eca4f25830e3917c7bf57a681140b135c508aa32f2a1e3eff5a80661f3b5ba46747d0c305af10b658d207f449550f3d417d9683216feea8f","ssdeep":"192:JrprDNvD66fPP/+I6OP1fQP0OIr96DB6MHXcwr1RF:JrprxG6fPP3P1fQMOIsDsMMS","tlshash":"8232c59d71a6b4624eb735b8b03f939f71b605d9250d8940d26cc9f6782c84ec22bf68","first_seen":"2023-03-07T01:02:02Z","last_seen":"2026-08-12T08:11:51.592781Z","times_seen":86667,"resource_available":true,"data":"LyohIGpRdWVyeSBNaWdyYXRlIHYzLjMuMiB8IChjKSBPcGVuSlMgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzIHwganF1ZXJ5Lm9yZy9saWNlbnNlICovCiJ1bmRlZmluZWQiPT10eXBlb2YgalF1ZXJ5Lm1pZ3JhdGVNdXRlJiYoalF1ZXJ5Lm1pZ3JhdGVNdXRlPSEwKSxmdW5jdGlvbih0KXsidXNlIHN0cmljdCI7ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJqcXVlcnkiXSxmdW5jdGlvbihlKXtyZXR1cm4gdChlLHdpbmRvdyl9KToib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlLmV4cG9ydHM/bW9kdWxlLmV4cG9ydHM9dChyZXF1aXJlKCJqcXVlcnkiKSx3aW5kb3cpOnQoalF1ZXJ5LHdpbmRvdyl9KGZ1bmN0aW9uKHMsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGUoZSl7cmV0dXJuIDA8PWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciByPS9eKFxkKylcLihcZCspXC4oXGQrKS8sbj1yLmV4ZWMoZSl8fFtdLG89ci5leGVjKHQpfHxbXSxpPTE7aTw9MztpKyspe2lmKCtvW2ldPCtuW2ldKXJldHVybiAxO2lmKCtuW2ldPCtvW2ldKXJldHVybi0xfXJldHVybiAwfShzLmZuLmpxdWVyeSxlKX1zLm1pZ3JhdGVWZXJzaW9uPSIzLjMuMiIsbi5jb25zb2xlJiZuLmNvbnNvbGUubG9nJiYocyYmZSgiMy4wLjAiKXx8bi5jb25zb2xlLmxvZygiSlFNSUdSQVRFOiBqUXVlcnkgMy4wLjArIFJFUVVJUkVEIikscy5taWdyYXRlV2FybmluZ3MmJm4uY29uc29sZS5sb2coIkpRTUlHUkFURTogTWlncmF0ZSBwbHVnaW4gbG9hZGVkIG11bHRpcGxlIHRpbWVzIiksbi5jb25zb2xlLmxvZygiSlFNSUdSQVRFOiBNaWdyYXRlIGlzIGluc3RhbGxlZCIrKHMubWlncmF0ZU11dGU/IiI6IiB3aXRoIGxvZ2dpbmcgYWN0aXZlIikrIiwgdmVyc2lvbiAiK3MubWlncmF0ZVZlcnNpb24pKTt2YXIgcj17fTtmdW5jdGlvbiB1KGUpe3ZhciB0PW4uY29uc29sZTtzLm1pZ3JhdGVEZWR1cGxpY2F0ZVdhcm5pbmdzJiZyW2VdfHwocltlXT0hMCxzLm1pZ3JhdGVXYXJuaW5ncy5wdXNoKGUpLHQmJnQud2FybiYmIXMubWlncmF0ZU11dGUmJih0Lndhcm4oIkpRTUlHUkFURTogIitlKSxzLm1pZ3JhdGVUcmFjZSYmdC50cmFjZSYmdC50cmFjZSgpKSl9ZnVuY3Rpb24gdChlLHQscixuKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdShuKSxyfSxzZXQ6ZnVuY3Rpb24oZSl7dShuKSxyPWV9fSl9ZnVuY3Rpb24gbyhlLHQscixuKXtlW3RdPWZ1bmN0aW9uKCl7cmV0dXJuIHUobiksci5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fXMubWlncmF0ZURlZHVwbGljYXRlV2FybmluZ3M9ITAscy5taWdyYXRlV2FybmluZ3M9W10sdm9pZCAwPT09cy5taWdyYXRlVHJhY2UmJihzLm1pZ3JhdGVUcmFjZT0hMCkscy5taWdyYXRlUmVzZXQ9ZnVuY3Rpb24oKXtyPXt9LHMubWlncmF0ZVdhcm5pbmdzLmxlbmd0aD0wfSwiQmFja0NvbXBhdCI9PT1uLmRvY3VtZW50LmNvbXBhdE1vZGUmJnUoImpRdWVyeSBpcyBub3QgY29tcGF0aWJsZSB3aXRoIFF1aXJrcyBNb2RlIik7dmFyIGksYSxjLGQ9e30sbD1zLmZuLmluaXQscD1zLmZpbmQsZj0vXFsoXHMqWy1cd10rXHMqKShbfnxeJCpdPz0pXHMqKFstXHcjXSo/I1stXHcjXSopXHMqXF0vLHk9L1xbKFxzKlstXHddK1xzKikoW358XiQqXT89KVxzKihbLVx3I10qPyNbLVx3I10qKVxzKlxdL2csbT0vXltcc1x1RkVGRlx4QTBdK3xbXHNcdUZFRkZceEEwXSskL2c7Zm9yKGkgaW4gcy5mbi5pbml0PWZ1bmN0aW9uKGUpe3ZhciB0PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cyk7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlJiYiIyI9PT1lJiYodSgialF1ZXJ5KCAnIycgKSBpcyBub3QgYSB2YWxpZCBzZWxlY3RvciIpLHRbMF09W10pLGwuYXBwbHkodGhpcyx0KX0scy5mbi5pbml0LnByb3RvdHlwZT1zLmZuLHMuZmluZD1mdW5jdGlvbih0KXt2YXIgcj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO2lmKCJzdHJpbmciPT10eXBlb2YgdCYmZi50ZXN0KHQpKXRyeXtuLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodCl9Y2F0Y2goZSl7dD10LnJlcGxhY2UoeSxmdW5jdGlvbihlLHQscixuKXtyZXR1cm4iWyIrdCtyKyciJytuKyciXSd9KTt0cnl7bi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHQpLHUoIkF0dHJpYnV0ZSBzZWxlY3RvciB3aXRoICcjJyBtdXN0IGJlIHF1b3RlZDogIityWzBdKSxyWzBdPXR9Y2F0Y2goZSl7dSgiQXR0cmlidXRlIHNlbGVjdG9yIHdpdGggJyMnIHdhcyBub3QgZml4ZWQ6ICIrclswXSl9fXJldHVybiBwLmFwcGx5KHRoaXMscil9LHApT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHAsaSkmJihzLmZpbmRbaV09cFtpXSk7byhzLmZuLCJzaXplIixmdW5jdGlvbigpe3JldHVybiB0aGlzLmxlbmd0aH0sImpRdWVyeS5mbi5zaXplKCkgaXMgZGVwcmVjYXRlZCBhbmQgcmVtb3ZlZDsgdXNlIHRoZSAubGVuZ3RoIHByb3BlcnR5IiksbyhzLCJwYXJzZUpTT04iLGZ1bmN0aW9uKCl7cmV0dXJuIEpTT04ucGFyc2UuYXBwbHkobnVsbCxhcmd1bWVudHMpfSwialF1ZXJ5LnBhcnNlSlNPTiBpcyBkZXByZWNhdGVkOyB1c2UgSlNPTi5wYXJzZSIpLG8ocywiaG9sZFJlYWR5IixzLmhvbGRSZWFkeSwialF1ZXJ5LmhvbGRSZWFkeSBpcyBkZXByZWNhdGVkIiksbyhzLCJ1bmlxdWUiLHMudW5pcXVlU29ydCwialF1ZXJ5LnVuaXF1ZSBpcyBkZXByZWNhdGVkOyB1c2UgalF1ZXJ5LnVuaXF1ZVNvcnQiKSx0KHMuZXhwciwiZmlsdGVycyIscy5leHByLnBzZXVkb3MsImpRdWVyeS5leHByLmZpbHRlcnMgaXMgZGVwcmVjYXRlZDsgdXNlIGpRdWVyeS5leHByLnBzZXVkb3MiKSx0KHMuZXhwciwiOiIscy5leHByLnBzZXVkb3MsImpRdWVyeS5leHByWyc6J10gaXMgZGVwcmVjYXRlZDsgdXNlIGpRdWVyeS5leHByLnBzZXVkb3MiKSxlKCIzLjEuMSIpJiZvKHMsInRyaW0iLGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOihlKyIiKS5yZXBsYWNlKG0sIiIpfSwialF1ZXJ5LnRyaW0gaXMgZGVwcmVjYXRlZDsgdXNlIFN0cmluZy5wcm90b3R5cGUudHJpbSIpLGUoIjMuMi4wIikmJihvKHMsIm5vZGVOYW1lIixmdW5jdGlvbihlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10LnRvTG93ZXJDYXNlKCl9LCJqUXVlcnkubm9kZU5hbWUgaXMgZGVwcmVjYXRlZCIpLG8ocywiaXNBcnJheSIsQXJyYXkuaXNBcnJheSwialF1ZXJ5LmlzQXJyYXkgaXMgZGVwcmVjYXRlZDsgdXNlIEFycmF5LmlzQXJyYXkiKSksZSgiMy4zLjAiKSYmKG8ocywiaXNOdW1lcmljIixmdW5jdGlvbihlKXt2YXIgdD10eXBlb2YgZTtyZXR1cm4oIm51bWJlciI9PXR8fCJzdHJpbmciPT10KSYmIWlzTmFOKGUtcGFyc2VGbG9hdChlKSl9LCJqUXVlcnkuaXNOdW1lcmljKCkgaXMgZGVwcmVjYXRlZCIpLHMuZWFjaCgiQm9vbGVhbiBOdW1iZXIgU3RyaW5nIEZ1bmN0aW9uIEFycmF5IERhdGUgUmVnRXhwIE9iamVjdCBFcnJvciBTeW1ib2wiLnNwbGl0KCIgIiksZnVuY3Rpb24oZSx0KXtkWyJbb2JqZWN0ICIrdCsiXSJdPXQudG9Mb3dlckNhc2UoKX0pLG8ocywidHlwZSIsZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/ZSsiIjoib2JqZWN0Ij09dHlwZW9mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlP2RbT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpXXx8Im9iamVjdCI6dHlwZW9mIGV9LCJqUXVlcnkudHlwZSBpcyBkZXByZWNhdGVkIiksbyhzLCJpc0Z1bmN0aW9uIixmdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZX0sImpRdWVyeS5pc0Z1bmN0aW9uKCkgaXMgZGVwcmVjYXRlZCIpLG8ocywiaXNXaW5kb3ciLGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlPT09ZS53aW5kb3d9LCJqUXVlcnkuaXNXaW5kb3coKSBpcyBkZXByZWNhdGVkIikpLHMuYWpheCYmKGE9cy5hamF4LGM9Lyg9KVw/KD89JnwkKXxcP1w/LyxzLmFqYXg9ZnVuY3Rpb24oKXt2YXIgZT1hLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gZS5wcm9taXNlJiYobyhlLCJzdWNjZXNzIixlLmRvbmUsImpRWEhSLnN1Y2Nlc3MgaXMgZGVwcmVjYXRlZCBhbmQgcmVtb3ZlZCIpLG8oZSwiZXJyb3IiLGUuZmFpbCwialFYSFIuZXJyb3IgaXMgZGVwcmVjYXRlZCBhbmQgcmVtb3ZlZCIpLG8oZSwiY29tcGxldGUiLGUuYWx3YXlzLCJqUVhIUi5jb21wbGV0ZSBpcyBkZXByZWNhdGVkIGFuZCByZW1vdmVkIikpLGV9LGUoIjQuMC4wIil8fHMuYWpheFByZWZpbHRlcigiK2pzb24iLGZ1bmN0aW9uKGUpeyExIT09ZS5qc29ucCYmKGMudGVzdChlLnVybCl8fCJzdHJpbmciPT10eXBlb2YgZS5kYXRhJiYwPT09KGUuY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmYy50ZXN0KGUuZGF0YSkpJiZ1KCJKU09OLXRvLUpTT05QIGF1dG8tcHJvbW90aW9uIGlzIGRlcHJlY2F0ZWQiKX0pKTt2YXIgZz1zLmZuLnJlbW92ZUF0dHIsaD1zLmZuLnRvZ2dsZUNsYXNzLHY9L1xTKy9nO2Z1bmN0aW9uIGooZSl7cmV0dXJuIGUucmVwbGFjZSgvLShbYS16XSkvZyxmdW5jdGlvbihlLHQpe3JldHVybiB0LnRvVXBwZXJDYXNlKCl9KX1zLmZuLnJlbW92ZUF0dHI9ZnVuY3Rpb24oZSl7dmFyIHI9dGhpcztyZXR1cm4gcy5lYWNoKGUubWF0Y2godiksZnVuY3Rpb24oZSx0KXtzLmV4cHIubWF0Y2guYm9vbC50ZXN0KHQpJiYodSgialF1ZXJ5LmZuLnJlbW92ZUF0dHIgbm8gbG9uZ2VyIHNldHMgYm9vbGVhbiBwcm9wZXJ0aWVzOiAiK3QpLHIucHJvcCh0LCExKSl9KSxnLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07dmFyIFEsYj0hKHMuZm4udG9nZ2xlQ2xhc3M9ZnVuY3Rpb24odCl7cmV0dXJuIHZvaWQgMCE9PXQmJiJib29sZWFuIiE9dHlwZW9mIHQ/aC5hcHBseSh0aGlzLGFyZ3VtZW50cyk6KHUoImpRdWVyeS5mbi50b2dnbGVDbGFzcyggYm9vbGVhbiApIGlzIGRlcHJlY2F0ZWQiKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT10aGlzLmdldEF0dHJpYnV0ZSYmdGhpcy5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiO2UmJnMuZGF0YSh0aGlzLCJfX2NsYXNzTmFtZV9fIixlKSx0aGlzLnNldEF0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIiwhZSYmITEhPT10JiZzLmRhdGEodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIil9KSl9KSx3PS9eW2Etel0vLHg9L14oPzpCb3JkZXIoPzpUb3B8UmlnaHR8Qm90dG9tfExlZnQpPyg/OldpZHRofCl8KD86TWFyZ2lufFBhZGRpbmcpPyg/OlRvcHxSaWdodHxCb3R0b218TGVmdCk/fCg/Ok1pbnxNYXgpPyg/OldpZHRofEhlaWdodCkpJC87cy5zd2FwJiZzLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCIsInJlbGlhYmxlTWFyZ2luUmlnaHQiXSxmdW5jdGlvbihlLHQpe3ZhciByPXMuY3NzSG9va3NbdF0mJnMuY3NzSG9va3NbdF0uZ2V0O3ImJihzLmNzc0hvb2tzW3RdLmdldD1mdW5jdGlvbigpe3ZhciBlO3JldHVybiBiPSEwLGU9ci5hcHBseSh0aGlzLGFyZ3VtZW50cyksYj0hMSxlfSl9KSxzLnN3YXA9ZnVuY3Rpb24oZSx0LHIsbil7dmFyIG8saSxhPXt9O2ZvcihpIGluIGJ8fHUoImpRdWVyeS5zd2FwKCkgaXMgdW5kb2N1bWVudGVkIGFuZCBkZXByZWNhdGVkIiksdClhW2ldPWUuc3R5bGVbaV0sZS5zdHlsZVtpXT10W2ldO2ZvcihpIGluIG89ci5hcHBseShlLG58fFtdKSx0KWUuc3R5bGVbaV09YVtpXTtyZXR1cm4gb30sZSgiMy40LjAiKSYmInVuZGVmaW5lZCIhPXR5cGVvZiBQcm94eSYmKHMuY3NzUHJvcHM9bmV3IFByb3h5KHMuY3NzUHJvcHN8fHt9LHtzZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdSgiSlFNSUdSQVRFOiBqUXVlcnkuY3NzUHJvcHMgaXMgZGVwcmVjYXRlZCIpLFJlZmxlY3Quc2V0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KSkscy5jc3NOdW1iZXJ8fChzLmNzc051bWJlcj17fSksUT1zLmZuLmNzcyxzLmZuLmNzcz1mdW5jdGlvbihlLHQpe3ZhciByLG4sbz10aGlzO3JldHVybiBlJiYib2JqZWN0Ij09dHlwZW9mIGUmJiFBcnJheS5pc0FycmF5KGUpPyhzLmVhY2goZSxmdW5jdGlvbihlLHQpe3MuZm4uY3NzLmNhbGwobyxlLHQpfSksdGhpcyk6KCJudW1iZXIiPT10eXBlb2YgdCYmKHI9aihlKSxuPXIsdy50ZXN0KG4pJiZ4LnRlc3QoblswXS50b1VwcGVyQ2FzZSgpK24uc2xpY2UoMSkpfHxzLmNzc051bWJlcltyXXx8dSgnTnVtYmVyLXR5cGVkIHZhbHVlcyBhcmUgZGVwcmVjYXRlZCBmb3IgalF1ZXJ5LmZuLmNzcyggIicrZSsnIiwgdmFsdWUgKScpKSxRLmFwcGx5KHRoaXMsYXJndW1lbnRzKSl9O3ZhciBBLGssUyxNLE49cy5kYXRhO3MuZGF0YT1mdW5jdGlvbihlLHQscil7dmFyIG4sbyxpO2lmKHQmJiJvYmplY3QiPT10eXBlb2YgdCYmMj09PWFyZ3VtZW50cy5sZW5ndGgpe2ZvcihpIGluIG49cy5oYXNEYXRhKGUpJiZOLmNhbGwodGhpcyxlKSxvPXt9LHQpaSE9PWooaSk/KHUoImpRdWVyeS5kYXRhKCkgYWx3YXlzIHNldHMvZ2V0cyBjYW1lbENhc2VkIG5hbWVzOiAiK2kpLG5baV09dFtpXSk6b1tpXT10W2ldO3JldHVybiBOLmNhbGwodGhpcyxlLG8pLHR9cmV0dXJuIHQmJiJzdHJpbmciPT10eXBlb2YgdCYmdCE9PWoodCkmJihuPXMuaGFzRGF0YShlKSYmTi5jYWxsKHRoaXMsZSkpJiZ0IGluIG4/KHUoImpRdWVyeS5kYXRhKCkgYWx3YXlzIHNldHMvZ2V0cyBjYW1lbENhc2VkIG5hbWVzOiAiK3QpLDI8YXJndW1lbnRzLmxlbmd0aCYmKG5bdF09ciksblt0XSk6Ti5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LHMuZngmJihTPXMuVHdlZW4ucHJvdG90eXBlLnJ1bixNPWZ1bmN0aW9uKGUpe3JldHVybiBlfSxzLlR3ZWVuLnByb3RvdHlwZS5ydW49ZnVuY3Rpb24oKXsxPHMuZWFzaW5nW3RoaXMuZWFzaW5nXS5sZW5ndGgmJih1KCInalF1ZXJ5LmVhc2luZy4iK3RoaXMuZWFzaW5nLnRvU3RyaW5nKCkrIicgc2hvdWxkIHVzZSBvbmx5IG9uZSBhcmd1bWVudCIpLHMuZWFzaW5nW3RoaXMuZWFzaW5nXT1NKSxTLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sQT1zLmZ4LmludGVydmFsfHwxMyxrPSJqUXVlcnkuZnguaW50ZXJ2YWwgaXMgZGVwcmVjYXRlZCIsbi5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShzLmZ4LCJpbnRlcnZhbCIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBuLmRvY3VtZW50LmhpZGRlbnx8dShrKSxBfSxzZXQ6ZnVuY3Rpb24oZSl7dShrKSxBPWV9fSkpO3ZhciBSPXMuZm4ubG9hZCxIPXMuZXZlbnQuYWRkLEM9cy5ldmVudC5maXg7cy5ldmVudC5wcm9wcz1bXSxzLmV2ZW50LmZpeEhvb2tzPXt9LHQocy5ldmVudC5wcm9wcywiY29uY2F0IixzLmV2ZW50LnByb3BzLmNvbmNhdCwialF1ZXJ5LmV2ZW50LnByb3BzLmNvbmNhdCgpIGlzIGRlcHJlY2F0ZWQgYW5kIHJlbW92ZWQiKSxzLmV2ZW50LmZpeD1mdW5jdGlvbihlKXt2YXIgdCxyPWUudHlwZSxuPXRoaXMuZml4SG9va3Nbcl0sbz1zLmV2ZW50LnByb3BzO2lmKG8ubGVuZ3RoKXt1KCJqUXVlcnkuZXZlbnQucHJvcHMgYXJlIGRlcHJlY2F0ZWQgYW5kIHJlbW92ZWQ6ICIrby5qb2luKCkpO3doaWxlKG8ubGVuZ3RoKXMuZXZlbnQuYWRkUHJvcChvLnBvcCgpKX1pZihuJiYhbi5fbWlncmF0ZWRfJiYobi5fbWlncmF0ZWRfPSEwLHUoImpRdWVyeS5ldmVudC5maXhIb29rcyBhcmUgZGVwcmVjYXRlZCBhbmQgcmVtb3ZlZDogIityKSwobz1uLnByb3BzKSYmby5sZW5ndGgpKXdoaWxlKG8ubGVuZ3RoKXMuZXZlbnQuYWRkUHJvcChvLnBvcCgpKTtyZXR1cm4gdD1DLmNhbGwodGhpcyxlKSxuJiZuLmZpbHRlcj9uLmZpbHRlcih0LGUpOnR9LHMuZXZlbnQuYWRkPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT1uJiYibG9hZCI9PT10JiYiY29tcGxldGUiPT09bi5kb2N1bWVudC5yZWFkeVN0YXRlJiZ1KCJqUXVlcnkod2luZG93KS5vbignbG9hZCcuLi4pIGNhbGxlZCBhZnRlciBsb2FkIGV2ZW50IG9jY3VycmVkIiksSC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LHMuZWFjaChbImxvYWQiLCJ1bmxvYWQiLCJlcnJvciJdLGZ1bmN0aW9uKGUsdCl7cy5mblt0XT1mdW5jdGlvbigpe3ZhciBlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTtyZXR1cm4ibG9hZCI9PT10JiYic3RyaW5nIj09dHlwZW9mIGVbMF0/Ui5hcHBseSh0aGlzLGUpOih1KCJqUXVlcnkuZm4uIit0KyIoKSBpcyBkZXByZWNhdGVkIiksZS5zcGxpY2UoMCwwLHQpLGFyZ3VtZW50cy5sZW5ndGg/dGhpcy5vbi5hcHBseSh0aGlzLGUpOih0aGlzLnRyaWdnZXJIYW5kbGVyLmFwcGx5KHRoaXMsZSksdGhpcykpfX0pLHMuZWFjaCgiYmx1ciBmb2N1cyBmb2N1c2luIGZvY3Vzb3V0IHJlc2l6ZSBzY3JvbGwgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNldXAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNlbGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSxmdW5jdGlvbihlLHIpe3MuZm5bcl09ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdSgialF1ZXJ5LmZuLiIrcisiKCkgZXZlbnQgc2hvcnRoYW5kIGlzIGRlcHJlY2F0ZWQiKSwwPGFyZ3VtZW50cy5sZW5ndGg/dGhpcy5vbihyLG51bGwsZSx0KTp0aGlzLnRyaWdnZXIocil9fSkscyhmdW5jdGlvbigpe3Mobi5kb2N1bWVudCkudHJpZ2dlckhhbmRsZXIoInJlYWR5Iil9KSxzLmV2ZW50LnNwZWNpYWwucmVhZHk9e3NldHVwOmZ1bmN0aW9uKCl7dGhpcz09PW4uZG9jdW1lbnQmJnUoIidyZWFkeScgZXZlbnQgaXMgZGVwcmVjYXRlZCIpfX0scy5mbi5leHRlbmQoe2JpbmQ6ZnVuY3Rpb24oZSx0LHIpe3JldHVybiB1KCJqUXVlcnkuZm4uYmluZCgpIGlzIGRlcHJlY2F0ZWQiKSx0aGlzLm9uKGUsbnVsbCx0LHIpfSx1bmJpbmQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdSgialF1ZXJ5LmZuLnVuYmluZCgpIGlzIGRlcHJlY2F0ZWQiKSx0aGlzLm9mZihlLG51bGwsdCl9LGRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxyLG4pe3JldHVybiB1KCJqUXVlcnkuZm4uZGVsZWdhdGUoKSBpcyBkZXByZWNhdGVkIiksdGhpcy5vbih0LGUscixuKX0sdW5kZWxlZ2F0ZTpmdW5jdGlvbihlLHQscil7cmV0dXJuIHUoImpRdWVyeS5mbi51bmRlbGVnYXRlKCkgaXMgZGVwcmVjYXRlZCIpLDE9PT1hcmd1bWVudHMubGVuZ3RoP3RoaXMub2ZmKGUsIioqIik6dGhpcy5vZmYodCxlfHwiKioiLHIpfSxob3ZlcjpmdW5jdGlvbihlLHQpe3JldHVybiB1KCJqUXVlcnkuZm4uaG92ZXIoKSBpcyBkZXByZWNhdGVkIiksdGhpcy5vbigibW91c2VlbnRlciIsZSkub24oIm1vdXNlbGVhdmUiLHR8fGUpfX0pO2Z1bmN0aW9uIFQoZSl7dmFyIHQ9bi5kb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpO3JldHVybiB0LmJvZHkuaW5uZXJIVE1MPWUsdC5ib2R5JiZ0LmJvZHkuaW5uZXJIVE1MfWZ1bmN0aW9uIFAoZSl7dmFyIHQ9ZS5yZXBsYWNlKE8sIjwkMT48LyQyPiIpO3QhPT1lJiZUKGUpIT09VCh0KSYmdSgiSFRNTCB0YWdzIG11c3QgYmUgcHJvcGVybHkgbmVzdGVkIGFuZCBjbG9zZWQ6ICIrZSl9dmFyIE89LzwoPyFhcmVhfGJyfGNvbHxlbWJlZHxocnxpbWd8aW5wdXR8bGlua3xtZXRhfHBhcmFtKSgoW2Etel1bXlwvXDA+XHgyMFx0XHJcblxmXSopW14+XSopXC8+L2dpLHE9cy5odG1sUHJlZmlsdGVyO3MuVU5TQUZFX3Jlc3RvcmVMZWdhY3lIdG1sUHJlZmlsdGVyPWZ1bmN0aW9uKCl7cy5odG1sUHJlZmlsdGVyPWZ1bmN0aW9uKGUpe3JldHVybiBQKGUpLGUucmVwbGFjZShPLCI8JDE+PC8kMj4iKX19LHMuaHRtbFByZWZpbHRlcj1mdW5jdGlvbihlKXtyZXR1cm4gUChlKSxxKGUpfTt2YXIgRCxfPXMuZm4ub2Zmc2V0O3MuZm4ub2Zmc2V0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpc1swXTtyZXR1cm4hZXx8ZS5ub2RlVHlwZSYmZS5nZXRCb3VuZGluZ0NsaWVudFJlY3Q/Xy5hcHBseSh0aGlzLGFyZ3VtZW50cyk6KHUoImpRdWVyeS5mbi5vZmZzZXQoKSByZXF1aXJlcyBhIHZhbGlkIERPTSBlbGVtZW50IiksYXJndW1lbnRzLmxlbmd0aD90aGlzOnZvaWQgMCl9LHMuYWpheCYmKEQ9cy5wYXJhbSxzLnBhcmFtPWZ1bmN0aW9uKGUsdCl7dmFyIHI9cy5hamF4U2V0dGluZ3MmJnMuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsO3JldHVybiB2b2lkIDA9PT10JiZyJiYodSgialF1ZXJ5LnBhcmFtKCkgbm8gbG9uZ2VyIHVzZXMgalF1ZXJ5LmFqYXhTZXR0aW5ncy50cmFkaXRpb25hbCIpLHQ9ciksRC5jYWxsKHRoaXMsZSx0KX0pO3ZhciBFLEYsSj1zLmZuLmFuZFNlbGZ8fHMuZm4uYWRkQmFjaztyZXR1cm4gcy5mbi5hbmRTZWxmPWZ1bmN0aW9uKCl7cmV0dXJuIHUoImpRdWVyeS5mbi5hbmRTZWxmKCkgaXMgZGVwcmVjYXRlZCBhbmQgcmVtb3ZlZCwgdXNlIGpRdWVyeS5mbi5hZGRCYWNrKCkiKSxKLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0scy5EZWZlcnJlZCYmKEU9cy5EZWZlcnJlZCxGPVtbInJlc29sdmUiLCJkb25lIixzLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxzLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwicmVzb2x2ZWQiXSxbInJlamVjdCIsImZhaWwiLHMuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHMuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLCJyZWplY3RlZCJdLFsibm90aWZ5IiwicHJvZ3Jlc3MiLHMuQ2FsbGJhY2tzKCJtZW1vcnkiKSxzLkNhbGxiYWNrcygibWVtb3J5IildXSxzLkRlZmVycmVkPWZ1bmN0aW9uKGUpe3ZhciBpPUUoKSxhPWkucHJvbWlzZSgpO3JldHVybiBpLnBpcGU9YS5waXBlPWZ1bmN0aW9uKCl7dmFyIG89YXJndW1lbnRzO3JldHVybiB1KCJkZWZlcnJlZC5waXBlKCkgaXMgZGVwcmVjYXRlZCIpLHMuRGVmZXJyZWQoZnVuY3Rpb24obil7cy5lYWNoKEYsZnVuY3Rpb24oZSx0KXt2YXIgcj0iZnVuY3Rpb24iPT10eXBlb2Ygb1tlXSYmb1tlXTtpW3RbMV1dKGZ1bmN0aW9uKCl7dmFyIGU9ciYmci5hcHBseSh0aGlzLGFyZ3VtZW50cyk7ZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUucHJvbWlzZT9lLnByb21pc2UoKS5kb25lKG4ucmVzb2x2ZSkuZmFpbChuLnJlamVjdCkucHJvZ3Jlc3Mobi5ub3RpZnkpOm5bdFswXSsiV2l0aCJdKHRoaXM9PT1hP24ucHJvbWlzZSgpOnRoaXMscj9bZV06YXJndW1lbnRzKX0pfSksbz1udWxsfSkucHJvbWlzZSgpfSxlJiZlLmNhbGwoaSxpKSxpfSxzLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2s9RS5leGNlcHRpb25Ib29rKSxzfSk7Cg=="}},"time_used":232,"timings":{"blocked":137,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/woocommerce-multilingual/res/js/cart_widget.min.js?ver=5.0.2","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.948Z","timestamp":1785148618948,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/woocommerce-multilingual/res/js/cart_widget.min.js?ver=5.0.2 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 364\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:26 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":364,"size_decoded":579,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (364), with no line terminators","md5":"ca73d10f3745efeaba4661f371be89f6","sha1":"cbe4a7eeaa2e03fd5a106dca9d4f5466da51c867","sha256":"00b55d4c2f81b6b53aa944b364b81ac1e1a3a4f3e94818b14eb270e5f156f24b","sha512":"b700d951c1c7cdd35a350c7b0bce763f8107ab02ac746a36b6837fde6ad0f4f9d22324ac491c2a612ee3316da908a28839cb9764482f9165797864c2af0a621c","ssdeep":"","tlshash":"88e0df27b1344b950ca75c31b0ba226ae0b3e940b50a47222436c4f04a2cf984323e8d","first_seen":"2023-03-07T12:02:32Z","last_seen":"2026-08-09T09:41:30.363102Z","times_seen":925,"resource_available":true,"data":"alF1ZXJ5KGZ1bmN0aW9uKCQpe3ZhciBlbXB0eV9jYXJ0X2hhc2g9c2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgid29vY29tbWVyY2VfY2FydF9oYXNoIik9PSIiO2lmKGVtcHR5X2NhcnRfaGFzaHx8YWN0aW9ucy5pc19sYW5nX3N3aXRjaGVkPT0xfHxhY3Rpb25zLmZvcmNlX3Jlc2V0PT0xKXt3Y21sX3Jlc2V0X2NhcnRfZnJhZ21lbnRzKCl9fSk7ZnVuY3Rpb24gd2NtbF9yZXNldF9jYXJ0X2ZyYWdtZW50cygpe3RyeXtqUXVlcnkoZnVuY3Rpb24oKXtqUXVlcnkoZG9jdW1lbnQuYm9keSkudHJpZ2dlcigid2NfZnJhZ21lbnRfcmVmcmVzaCIpO3Nlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oIndjX2ZyYWdtZW50cyIpfSl9Y2F0Y2goZXJyKXt9fQ=="}},"time_used":437,"timings":{"blocked":342,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/1003.gif","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.988Z","timestamp":1785148618988,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/1003.gif HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"code.tidio.co/phtyzzmdpggouhvrxhotb67e722nll0y.js","fqdn":"code.tidio.co","domain":"tidio.co","tld":"co"},"ip":{"addr":"172.67.73.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.936Z","timestamp":1785148618936,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"tidio.co","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Sun, 21 Jun 2026 20:02:32 GMT","end":"Sat, 19 Sep 2026 21:02:13 GMT"},"fingerprint":{"sha1":"B4:2F:9E:39:BF:54:A9:3D:84:9B:3D:A5:1E:C6:7A:DE:29:83:DC:D2","sha256":"CF:10:9D:C6:D1:72:BD:AB:36:BF:B0:F3:01:C9:0F:59:EA:1D:4A:4A:8A:18:0E:B4:82:77:9B:92:D7:AE:5E:4E"}}},"request":{"raw":"GET /phtyzzmdpggouhvrxhotb67e722nll0y.js HTTP/1.1\r\nHost: code.tidio.co\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 302 \r\ndate: Mon, 27 Jul 2026 10:36:59 GMT\r\ncontent-type: text/html; charset=UTF-8\r\nlocation: https://code.tidio.co/widget-v4/1_448_0/static/js/render.a5ee2e48209f8ae4b5f0.js\r\ncache-control: public, s-maxage=300, max-age=0\r\nserver: cloudflare\r\ncf-cache-status: MISS\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=tSj6dwn393GG9VEDFu4lUyHvt7qvOQu8nmTYPBNBjVgnTio1pVSE1fZPbr0DLO%2FiJFIj1SG%2BsoAKoQ78NthPBbnC7vTllxmJ99eqmhUHGzZ%2BM0V9%2B53goWFGCXO3VZQ%3D\"}]}\r\ncf-ray: a21b019479364e4c-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"302","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":0,"mime_type":"application/javascript","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":215,"timings":{"blocked":-1,"dns":3,"connect":1,"send":0,"wait":195,"receive":0,"ssl":16},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/img3.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.978Z","timestamp":1785148618978,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /img3.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Hw3aXo.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.470Z","timestamp":1785148619470,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /s/montserrat/v25/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Hw3aXo.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://equinuxglobalassets.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/affiliate-wp/assets/js/tracking.min.js?ver=2.9.6.1","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.922Z","timestamp":1785148618922,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/affiliate-wp/assets/js/tracking.min.js?ver=2.9.6.1 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 4182\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:12 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":4182,"size_decoded":4398,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (4182), with no line terminators","md5":"1f693895db157c862dc884377aeeb660","sha1":"8c3af3e1079b1df0acf6da2e38afede83d605d99","sha256":"9c7bb881d50daf10495cb74da00bd5530559e1d819b85a29db561f3e93762f05","sha512":"e3b330c7584b6244f873a261ed22f23c762183f92c60aa3d4c4e643d60f1718c7dea7cbee4e3d9354e57c8561f7186c0c6b3b6acafff17502471d29e8a198b98","ssdeep":"48:kM7H+ypasQpWZ9pVp44Mp1TrZvdqiwLiZuP2+/xF0FuezWr4QysB4n6+OBRZ86jW:V+b4OuP2+NBOHv6/gj","tlshash":"8781204b789a843fbed2155d5c7f0a7a203e9b9776ebd588cd20a5b80e10f0b1d21c1b","first_seen":"2023-03-07T01:19:17Z","last_seen":"2026-07-27T10:37:50.411249Z","times_seen":205,"resource_available":true,"data":"alF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigkKXtmdW5jdGlvbiBhZmZ3cF9nZXRfY29va2llX2l0ZW0oaXRlbSl7dmFyIHJlPW5ldyBSZWdFeHAoaXRlbSsiPShbXjtdKykiKSx2YWx1ZT1yZS5leGVjKGRvY3VtZW50LmNvb2tpZSk7cmV0dXJuIG51bGwhPXZhbHVlJiZ1bmVzY2FwZSh2YWx1ZVsxXSl9ZnVuY3Rpb24gYWZmd3BfZGVidWdfaW5saW5lX3ZhcnMoKXt2YXIgdmFycz17YWpheF91cmw6YWZmd3Bfc2NyaXB0cy5hamF4dXJsLmxlbmd0aD9KU09OLnN0cmluZ2lmeShhZmZ3cF9zY3JpcHRzLmFqYXh1cmwpOiJ1bmF2YWlsYWJsZSIscmVmOkpTT04uc3RyaW5naWZ5KEFGRldQLnJlZmVycmFsX3Zhcj9BRkZXUC5yZWZlcnJhbF92YXI6YWZmd3BfZ2V0X2Nvb2tpZV9pdGVtKGFmZndwX2RlYnVnX3ZhcnMucmVmX2Nvb2tpZSkpLHZpc2l0X2Nvb2tpZTphZmZ3cF9nZXRfY29va2llX2l0ZW0oYWZmd3BfZGVidWdfdmFycy52aXNpdF9jb29raWUpP0pTT04uc3RyaW5naWZ5KGFmZndwX2dldF9jb29raWVfaXRlbShhZmZ3cF9kZWJ1Z192YXJzLnZpc2l0X2Nvb2tpZSkpOiJ1bmF2YWlsYWJsZSIsY3JlZGl0X2xhc3Q6QUZGV1AucmVmZXJyYWxfY3JlZGl0X2xhc3Q/SlNPTi5zdHJpbmdpZnkoQUZGV1AucmVmZXJyYWxfY3JlZGl0X2xhc3QpOiJ1bmF2YWlsYWJsZSIsY2FtcGFpZ246SlNPTi5zdHJpbmdpZnkoYWZmd3BfZ2V0X3F1ZXJ5X3ZhcnMoKS5jYW1wYWlnbj9hZmZ3cF9nZXRfcXVlcnlfdmFycygpLmNhbXBhaWduOmFmZndwX2dldF9jb29raWVfaXRlbShhZmZ3cF9kZWJ1Z192YXJzLmNhbXBhaWduX2Nvb2tpZSkpLGN1cnJlbmN5OmFmZndwX2RlYnVnX3ZhcnMuY3VycmVuY3kubGVuZ3RoP0pTT04uc3RyaW5naWZ5KGFmZndwX2RlYnVnX3ZhcnMuY3VycmVuY3kpOiJ1bmF2YWlsYWJsZSIsdmVyc2lvbjphZmZ3cF9kZWJ1Z192YXJzLnZlcnNpb24ubGVuZ3RoP0pTT04uc3RyaW5naWZ5KGFmZndwX2RlYnVnX3ZhcnMudmVyc2lvbik6InVuYXZhaWxhYmxlIn07cmV0dXJuIHZhcnN9ZnVuY3Rpb24gYWZmd3BfZGVidWdfZ2V0X2ludGVncmF0aW9ucygpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgYWZmd3BfZGVidWdfdmFycyYmYWZmd3BfZGVidWdfdmFycy5pbnRlZ3JhdGlvbnN9ZnVuY3Rpb24gYWZmd3BfZGVidWdfb3V0cHV0KCl7Y29uc29sZS5hZmZ3cCgiVGhlIGZvbGxvd2luZyBkYXRhIGlzIHByb3ZpZGVkIGZyb20gQWZmaWxpYXRlV1AgZGVidWcgbW9kZS4gVG8gZGlzYWJsZSB0aGlzIGluZm9ybWF0aW9uLCBwbGVhc2UgZGVhY3RpdmF0ZSBkZWJ1ZyBtb2RlIGluIEFmZmlsaWF0ZVdQLiIpLGNvbnNvbGUuYWZmd3AoIkF2YWlsYWJsZSBkZWJ1ZyBkYXRhOiBcbiIrSlNPTi5zdHJpbmdpZnkoT2JqZWN0KGFmZndwX2RlYnVnX2lubGluZV92YXJzKCkpKSksY29uc29sZS5hZmZ3cCgiSW50ZWdyYXRpb25zXG4iK0pTT04uc3RyaW5naWZ5KE9iamVjdChhZmZ3cF9kZWJ1Z19nZXRfaW50ZWdyYXRpb25zKCkpKSl9ZnVuY3Rpb24gYWZmd3BfdHJhY2tfdmlzaXQoYWZmaWxpYXRlX2lkLHVybF9jYW1wYWlnbil7YWZmd3Bfc2V0X2Nvb2tpZShhZmZ3cF9kZWJ1Z192YXJzLnJlZl9jb29raWUsYWZmaWxpYXRlX2lkKSwkLmFqYXgoe3R5cGU6IlBPU1QiLGRhdGE6e2FjdGlvbjoiYWZmd3BfdHJhY2tfdmlzaXQiLGFmZmlsaWF0ZTphZmZpbGlhdGVfaWQsY2FtcGFpZ246dXJsX2NhbXBhaWduLHVybDpkb2N1bWVudC5VUkwscmVmZXJyZXI6ZG9jdW1lbnQucmVmZXJyZXJ9LHVybDphZmZ3cF9zY3JpcHRzLmFqYXh1cmwsc3VjY2VzczpmdW5jdGlvbihyZXNwb25zZSl7YWZmd3Bfc2V0X2Nvb2tpZShhZmZ3cF9kZWJ1Z192YXJzLnZpc2l0X2Nvb2tpZSxyZXNwb25zZSksYWZmd3Bfc2V0X2Nvb2tpZShhZmZ3cF9kZWJ1Z192YXJzLmNhbXBhaWduX2Nvb2tpZSx1cmxfY2FtcGFpZ24pfX0pLmZhaWwoZnVuY3Rpb24ocmVzcG9uc2Upe3dpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cmJmNvbnNvbGUubG9nKHJlc3BvbnNlKX0pfWZ1bmN0aW9uIGFmZndwX3NldF9jb29raWUobmFtZSx2YWx1ZSl7ImNvb2tpZV9kb21haW4iaW4gQUZGV1A/JC5jb29raWUobmFtZSx2YWx1ZSx7ZXhwaXJlczpBRkZXUC5leHBpcmF0aW9uLHBhdGg6Ii8iLGRvbWFpbjpBRkZXUC5jb29raWVfZG9tYWlufSk6JC5jb29raWUobmFtZSx2YWx1ZSx7ZXhwaXJlczpBRkZXUC5leHBpcmF0aW9uLHBhdGg6Ii8ifSl9ZnVuY3Rpb24gYWZmd3BfZ2V0X3F1ZXJ5X3ZhcnMoKXtmb3IodmFyIGhhc2gsdmFycz1bXSxoYXNoZXM9d2luZG93LmxvY2F0aW9uLmhyZWYuc2xpY2Uod2luZG93LmxvY2F0aW9uLmhyZWYuaW5kZXhPZigiPyIpKzEpLnNwbGl0KCImIiksaT0wO2k8aGFzaGVzLmxlbmd0aDtpKyspe2hhc2g9aGFzaGVzW2ldLnNwbGl0KCI9IiksdmFycy5wdXNoKGhhc2hbMF0pO3ZhciBrZXk9InVuZGVmaW5lZCI9PXR5cGVvZiBoYXNoWzFdPzA6MSxuPWhhc2hba2V5XS5pbmRleE9mKCIjIik7aGFzaFtrZXldPWhhc2hba2V5XS5zdWJzdHJpbmcoMCxuIT0tMT9uOmhhc2hba2V5XS5sZW5ndGgpLHZhcnNbaGFzaFswXV09aGFzaFtrZXldfXJldHVybiB2YXJzfXZhciByZWZfY29va2llPSQuY29va2llKGFmZndwX2RlYnVnX3ZhcnMucmVmX2Nvb2tpZSksY3JlZGl0X2xhc3Q9KCQuY29va2llKGFmZndwX2RlYnVnX3ZhcnMudmlzaXRfY29va2llKSwkLmNvb2tpZShhZmZ3cF9kZWJ1Z192YXJzLmNhbXBhaWduX2Nvb2tpZSksQUZGV1AucmVmZXJyYWxfY3JlZGl0X2xhc3QpO2lmKDE9PT1BRkZXUC5kZWJ1Zyl7dmFyIGFmZndwQ29uc29sZVN0eWxlcz1bImJhY2tncm91bmQ6IHRyYW5zcGFyZW50IiwiYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNFMzRGNDMiLCJjb2xvcjogYmxhY2siLCJkaXNwbGF5OiBibG9jayIsImxpbmUtaGVpZ2h0OiAxOHB4IiwidGV4dC1hbGlnbjogbGVmdCIsIm1hcmdpbjogNHB4IiwiZm9udC13ZWlnaHQ6IGJvbGQiXS5qb2luKCI7Iik7Y29uc29sZS5hZmZ3cD1mdW5jdGlvbigpe0FycmF5LnByb3RvdHlwZS51bnNoaWZ0LmNhbGwoYXJndW1lbnRzLCIlYyAqIEFmZmlsaWF0ZVdQOiAiLGFmZndwQ29uc29sZVN0eWxlcysiICoiKSxjb25zb2xlLmxvZy5hcHBseShjb25zb2xlLGFyZ3VtZW50cyl9LGFmZndwX2RlYnVnX291dHB1dCgpfWlmKCIxIj09Y3JlZGl0X2xhc3R8fCFyZWZfY29va2llKXt2YXIgcmVmPWFmZndwX2dldF9xdWVyeV92YXJzKClbQUZGV1AucmVmZXJyYWxfdmFyXSxjYW1wYWlnbj1hZmZ3cF9nZXRfcXVlcnlfdmFycygpLmNhbXBhaWduO2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgcmVmfHwkLmlzRnVuY3Rpb24ocmVmKSl7dmFyIHBhdGg9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnNwbGl0KCIvIik7JC5lYWNoKHBhdGgsZnVuY3Rpb24oa2V5LHZhbHVlKXtBRkZXUC5yZWZlcnJhbF92YXI9PXZhbHVlJiYocmVmPXBhdGhba2V5KzFdKX0pfSQuaXNGdW5jdGlvbihyZWYpfHwoInVuZGVmaW5lZCI9PXR5cGVvZiByZWZ8fCQuaXNOdW1lcmljKHJlZik/cmVmJiYhcmVmX2Nvb2tpZT9hZmZ3cF90cmFja192aXNpdChyZWYsY2FtcGFpZ24pOiIxIj09Y3JlZGl0X2xhc3QmJnJlZiYmcmVmX2Nvb2tpZSYmcmVmIT09cmVmX2Nvb2tpZSYmKCQucmVtb3ZlQ29va2llKGFmZndwX2RlYnVnX3ZhcnMucmVmX2Nvb2tpZSksYWZmd3BfdHJhY2tfdmlzaXQocmVmLGNhbXBhaWduKSk6JC5hamF4KHt0eXBlOiJQT1NUIixkYXRhOnthY3Rpb246ImFmZndwX2dldF9hZmZpbGlhdGVfaWQiLGFmZmlsaWF0ZTpyZWZ9LHVybDphZmZ3cF9zY3JpcHRzLmFqYXh1cmwsc3VjY2VzczpmdW5jdGlvbihyZXNwb25zZSl7IjEiPT1yZXNwb25zZS5kYXRhLnN1Y2Nlc3MmJigiMSI9PWNyZWRpdF9sYXN0JiZyZWZfY29va2llJiZyZWZfY29va2llIT1yZXNwb25zZS5kYXRhLmFmZmlsaWF0ZV9pZCYmJC5yZW1vdmVDb29raWUoYWZmd3BfZGVidWdfdmFycy5yZWZfY29va2llKSwoIjEiPT1jcmVkaXRfbGFzdCYmcmVmX2Nvb2tpZSYmcmVmX2Nvb2tpZSE9cmVzcG9uc2UuZGF0YS5hZmZpbGlhdGVfaWR8fCFyZWZfY29va2llKSYmYWZmd3BfdHJhY2tfdmlzaXQocmVzcG9uc2UuZGF0YS5hZmZpbGlhdGVfaWQsY2FtcGFpZ24pKX19KS5mYWlsKGZ1bmN0aW9uKHJlc3BvbnNlKXt3aW5kb3cuY29uc29sZSYmd2luZG93LmNvbnNvbGUubG9nJiZjb25zb2xlLmxvZyhyZXNwb25zZSl9KSl9fSk7"}},"time_used":275,"timings":{"blocked":181,"dns":0,"connect":0,"send":0,"wait":94,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/themes/Divi/includes/builder/feature/dynamic-assets/assets/js/jquery.fitvids.js?ver=4.18.0","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.944Z","timestamp":1785148618944,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/themes/Divi/includes/builder/feature/dynamic-assets/assets/js/jquery.fitvids.js?ver=4.18.0 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 3349\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:24 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":3349,"size_decoded":3565,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"fa07f10043b891dacdb82f26fd2b42bc","sha1":"9c1dc49e9747758e033c0e9a7d016401bd78602c","sha256":"462747422c6af30aa81a0373fa1cfd736455cef52bdbb816f67be9531d84eace","sha512":"828f723649ae5a7b996de43fefc9b904d1a1d54f83671cc6998fdc7e0bb75c7761c8e0bb4a4497f2e4658606c193953c7019d7859e6ebab3db34c794ec575618","ssdeep":"","tlshash":"1361316932a6282d4d5330ef1eaf4014b619c0b707ebe86c78be85c98f849480625bfd","first_seen":"2023-03-07T01:11:43Z","last_seen":"2026-08-12T05:35:10.618283Z","times_seen":43708,"resource_available":true,"data":"Lypqc2hpbnQgYnJvd3Nlcjp0cnVlICovCi8qIQoqIEZpdFZpZHMgMS4xCioKKiBDb3B5cmlnaHQgMjAxMywgQ2hyaXMgQ295aWVyIC0gaHR0cDovL2Nzcy10cmlja3MuY29tICsgRGF2ZSBSdXBlcnQgLSBodHRwOi8vZGF2ZXJ1cGVydC5jb20KKiBDcmVkaXQgdG8gVGhpZXJyeSBLb2JsZW50eiAtIGh0dHA6Ly93d3cuYWxpc3RhcGFydC5jb20vYXJ0aWNsZXMvY3JlYXRpbmctaW50cmluc2ljLXJhdGlvcy1mb3ItdmlkZW8vCiogUmVsZWFzZWQgdW5kZXIgdGhlIFdURlBMIGxpY2Vuc2UgLSBodHRwOi8vc2FtLnpveS5vcmcvd3RmcGwvCioKKi8KCjsoZnVuY3Rpb24oICQgKXsKCiAgJ3VzZSBzdHJpY3QnOwoKICAkLmZuLmZpdFZpZHMgPSBmdW5jdGlvbiggb3B0aW9ucyApIHsKICAgIHZhciBzZXR0aW5ncyA9IHsKICAgICAgY3VzdG9tU2VsZWN0b3I6IG51bGwsCiAgICAgIGlnbm9yZTogbnVsbAogICAgfTsKCiAgICBpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpdC12aWRzLXN0eWxlJykpIHsKICAgICAgLy8gYXBwZW5kU3R5bGVzOiBodHRwczovL2dpdGh1Yi5jb20vdG9kZG1vdHRvL2ZsdWlkdmlkcy9ibG9iL21hc3Rlci9kaXN0L2ZsdWlkdmlkcy5qcwogICAgICB2YXIgaGVhZCA9IGRvY3VtZW50LmhlYWQgfHwgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXTsKICAgICAgdmFyIGNzcyA9ICcuZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlcnt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmc6MDt9LmZsdWlkLXdpZHRoLXZpZGVvLXdyYXBwZXIgaWZyYW1lLC5mbHVpZC13aWR0aC12aWRlby13cmFwcGVyIG9iamVjdCwuZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlciBlbWJlZCB7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7fSc7CiAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKICAgICAgZGl2LmlubmVySFRNTCA9ICc8cD54PC9wPjxzdHlsZSBpZD0iZml0LXZpZHMtc3R5bGUiPicgKyBjc3MgKyAnPC9zdHlsZT4nOwogICAgICBoZWFkLmFwcGVuZENoaWxkKGRpdi5jaGlsZE5vZGVzWzFdKTsKICAgIH0KCiAgICBpZiAoIG9wdGlvbnMgKSB7CiAgICAgICQuZXh0ZW5kKCBzZXR0aW5ncywgb3B0aW9ucyApOwogICAgfQoKICAgIHJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXsKICAgICAgdmFyIHNlbGVjdG9ycyA9IFsKICAgICAgICAnaWZyYW1lW3NyYyo9InBsYXllci52aW1lby5jb20iXScsCiAgICAgICAgJ2lmcmFtZVtzcmMqPSJ5b3V0dWJlLmNvbSJdJywKICAgICAgICAnaWZyYW1lW3NyYyo9InlvdXR1YmUtbm9jb29raWUuY29tIl0nLAogICAgICAgICdpZnJhbWVbc3JjKj0ia2lja3N0YXJ0ZXIuY29tIl1bc3JjKj0idmlkZW8uaHRtbCJdJywKICAgICAgICAnb2JqZWN0JywKICAgICAgICAnZW1iZWQnCiAgICAgIF07CgogICAgICBpZiAoc2V0dGluZ3MuY3VzdG9tU2VsZWN0b3IpIHsKICAgICAgICBzZWxlY3RvcnMucHVzaChzZXR0aW5ncy5jdXN0b21TZWxlY3Rvcik7CiAgICAgIH0KCiAgICAgIHZhciBpZ25vcmVMaXN0ID0gJy5maXR2aWRzaWdub3JlJzsKCiAgICAgIGlmKHNldHRpbmdzLmlnbm9yZSkgewogICAgICAgIGlnbm9yZUxpc3QgPSBpZ25vcmVMaXN0ICsgJywgJyArIHNldHRpbmdzLmlnbm9yZTsKICAgICAgfQoKICAgICAgdmFyICRhbGxWaWRlb3MgPSAkKHRoaXMpLmZpbmQoc2VsZWN0b3JzLmpvaW4oJywnKSk7CiAgICAgICRhbGxWaWRlb3MgPSAkYWxsVmlkZW9zLm5vdCgnb2JqZWN0IG9iamVjdCcpOyAvLyBTd2ZPYmogY29uZmxpY3QgcGF0Y2gKICAgICAgJGFsbFZpZGVvcyA9ICRhbGxWaWRlb3Mubm90KGlnbm9yZUxpc3QpOyAvLyBEaXNhYmxlIEZpdFZpZHMgb24gdGhpcyB2aWRlby4KCiAgICAgICRhbGxWaWRlb3MuZWFjaChmdW5jdGlvbigpewogICAgICAgIHZhciAkdGhpcyA9ICQodGhpcyk7CiAgICAgICAgaWYoJHRoaXMucGFyZW50cyhpZ25vcmVMaXN0KS5sZW5ndGggPiAwKSB7CiAgICAgICAgICByZXR1cm47IC8vIERpc2FibGUgRml0VmlkcyBvbiB0aGlzIHZpZGVvLgogICAgICAgIH0KICAgICAgICBpZiAodGhpcy50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdlbWJlZCcgJiYgJHRoaXMucGFyZW50KCdvYmplY3QnKS5sZW5ndGggfHwgJHRoaXMucGFyZW50KCcuZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlcicpLmxlbmd0aCkgeyByZXR1cm47IH0KICAgICAgICBpZiAoKCEkdGhpcy5jc3MoJ2hlaWdodCcpICYmICEkdGhpcy5jc3MoJ3dpZHRoJykpICYmIChpc05hTigkdGhpcy5hdHRyKCdoZWlnaHQnKSkgfHwgaXNOYU4oJHRoaXMuYXR0cignd2lkdGgnKSkpKQogICAgICAgIHsKICAgICAgICAgICR0aGlzLmF0dHIoJ2hlaWdodCcsIDkpOwogICAgICAgICAgJHRoaXMuYXR0cignd2lkdGgnLCAxNik7CiAgICAgICAgfQogICAgICAgIHZhciBoZWlnaHQgPSAoIHRoaXMudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnb2JqZWN0JyB8fCAoJHRoaXMuYXR0cignaGVpZ2h0JykgJiYgIWlzTmFOKHBhcnNlSW50KCR0aGlzLmF0dHIoJ2hlaWdodCcpLCAxMCkpKSApID8gcGFyc2VJbnQoJHRoaXMuYXR0cignaGVpZ2h0JyksIDEwKSA6ICR0aGlzLmhlaWdodCgpLAogICAgICAgICAgICB3aWR0aCA9ICFpc05hTihwYXJzZUludCgkdGhpcy5hdHRyKCd3aWR0aCcpLCAxMCkpID8gcGFyc2VJbnQoJHRoaXMuYXR0cignd2lkdGgnKSwgMTApIDogJHRoaXMud2lkdGgoKSwKICAgICAgICAgICAgYXNwZWN0UmF0aW8gPSBoZWlnaHQgLyB3aWR0aDsKICAgICAgICBpZighJHRoaXMuYXR0cignbmFtZScpKXsKICAgICAgICAgIHZhciB2aWRlb05hbWUgPSAnZml0dmlkJyArICQuZm4uZml0Vmlkcy5fY291bnQ7CiAgICAgICAgICAkdGhpcy5hdHRyKCduYW1lJywgdmlkZW9OYW1lKTsKICAgICAgICAgICQuZm4uZml0Vmlkcy5fY291bnQrKzsKICAgICAgICB9CiAgICAgICAgJHRoaXMud3JhcCgnPGRpdiBjbGFzcz0iZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlciI+PC9kaXY+JykucGFyZW50KCcuZmx1aWQtd2lkdGgtdmlkZW8td3JhcHBlcicpLmNzcygncGFkZGluZy10b3AnLCAoYXNwZWN0UmF0aW8gKiAxMDApKyclJyk7CiAgICAgICAgJHRoaXMucmVtb3ZlQXR0cignaGVpZ2h0JykucmVtb3ZlQXR0cignd2lkdGgnKTsKICAgICAgfSk7CiAgICB9KTsKICB9OwogIAogIC8vIEludGVybmFsIGNvdW50ZXIgZm9yIHVuaXF1ZSB2aWRlbyBuYW1lcy4KICAkLmZuLmZpdFZpZHMuX2NvdW50ID0gMDsKICAKLy8gV29ya3Mgd2l0aCBlaXRoZXIgalF1ZXJ5IG9yIFplcHRvCn0pKCB3aW5kb3cualF1ZXJ5IHx8IHdpbmRvdy5aZXB0byApOw=="}},"time_used":352,"timings":{"blocked":257,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/pwa-register-sw.js?ver=1.7.49","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.958Z","timestamp":1785148618958,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /pwa-register-sw.js?ver=1.7.49 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/et-cache/4625/et-core-unified-tb-6728-deferred-4625.min.css?ver=1662279877","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.929Z","timestamp":1785148618929,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/et-cache/4625/et-core-unified-tb-6728-deferred-4625.min.css?ver=1662279877 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=0\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/css\r\nContent-Length: 49263\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:26 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":49263,"size_decoded":49473,"mime_type":"text/css","magic":"ASCII text, with very long lines (49263), with no line terminators","md5":"fddb5a06b237f5871accb690d9f24653","sha1":"d9b6c6d616d2103b795f41b954576df95d02c014","sha256":"b6bbe1755cca2fba54f22202bb6002487ddc125adf505a5f79c08ddb747ce691","sha512":"065eeb158ecad48a9420223b676904c404b409270064aca78532715c9e1fe1d8eb06ad7368ccb310206226ddcdd7233fe8c4eee00367efafe2236af84acd283b","ssdeep":"1536:n7Acj2lCNRK3I2GS5wfGau9U70zfw5S+Jl2jcI8gvip3/Ts1miym1sTDWSPEZ5F1:n7Acj2lCNRK3I2GS5wfGau9U70zfw5SV","tlshash":"e423104ff7763ab3b9022250fcb26164729fd44fbaad4591fc14c9909a92c5013a92ff","first_seen":"2026-07-27T08:11:28.905117Z","last_seen":"2026-07-27T10:37:50.409596Z","times_seen":3,"resource_available":false,"data":"LmV0X3BiX3NlY3Rpb25fMF90Yl9mb290ZXIuZXRfcGJfc2VjdGlvbntwYWRkaW5nLXRvcDo0cHg7cGFkZGluZy1ib3R0b206NnB4O2JhY2tncm91bmQtY29sb3I6IzIxMGY1NiFpbXBvcnRhbnR9LmV0X3BiX3Jvd18wX3RiX2Zvb3Rlci5ldF9wYl9yb3d7cGFkZGluZy10b3A6MHB4IWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbTo2cHghaW1wb3J0YW50O3BhZGRpbmctbGVmdDowcHghaW1wb3J0YW50O21hcmdpbi10b3A6MzBweCFpbXBvcnRhbnQ7cGFkZGluZy10b3A6MHB4O3BhZGRpbmctYm90dG9tOjZweDtwYWRkaW5nLWxlZnQ6MHB4fS5ldF9wYl9pbWFnZV8wX3RiX2Zvb3Rlcnt3aWR0aDo4MCU7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbi1sZWZ0OjB9LmV0X3BiX3RleHRfNF90Yl9mb290ZXIuZXRfcGJfdGV4dCwuZXRfcGJfdGV4dF8zX3RiX2Zvb3Rlci5ldF9wYl90ZXh0LC5ldF9wYl90ZXh0XzJfdGJfZm9vdGVyLmV0X3BiX3RleHQsLmV0X3BiX3RleHRfMV90Yl9mb290ZXIuZXRfcGJfdGV4dCwuZXRfcGJfdGV4dF8wX3RiX2Zvb3Rlci5ldF9wYl90ZXh0e2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50fS5ldF9wYl90ZXh0XzBfdGJfZm9vdGVye2xpbmUtaGVpZ2h0OjEuNmVtO2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7bGV0dGVyLXNwYWNpbmc6MXB4O2xpbmUtaGVpZ2h0OjEuNmVtfWJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzBfdGJfZm9vdGVyIGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzNfdGJfZm9vdGVyIGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzJfdGJfZm9vdGVyIGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzRfdGJfZm9vdGVyIGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzFfdGJfZm9vdGVyIGgze2ZvbnQtdmFyaWFudC1saWdhdHVyZXM6bm8tY29tbW9uLWxpZ2F0dXJlc30uZXRfcGJfdGV4dF8xX3RiX2Zvb3Rlcntmb250LWZhbWlseTonTGF0bycsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxOHB4O2xldHRlci1zcGFjaW5nOjFweH0uZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyAuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd19uZXR3b3JrXzBfdGJfZm9vdGVyLmV0X3BiX3NvY2lhbF9pY29uIC5pY29uOmJlZm9yZSwuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyAuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd19uZXR3b3JrXzFfdGJfZm9vdGVyLmV0X3BiX3NvY2lhbF9pY29uIC5pY29uOmJlZm9yZSwuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvdyAuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd19uZXR3b3JrXzJfdGJfZm9vdGVyLmV0X3BiX3NvY2lhbF9pY29uIC5pY29uOmJlZm9yZSwuZXRfcGJfc29jaWFsX21lZGlhX2ZvbGxvd18wX3RiX2Zvb3RlciBsaS5ldF9wYl9zb2NpYWxfaWNvbiBhLmljb246YmVmb3Jle2NvbG9yOiMwMDAwMDB9LmV0X3BiX3RleHRfMl90Yl9mb290ZXJ7bGluZS1oZWlnaHQ6MS41ZW07Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjVlbTtwYWRkaW5nLWJvdHRvbToxMHB4IWltcG9ydGFudDttYXJnaW4tYm90dG9tOjVweCFpbXBvcnRhbnR9LmV0X3BiX3RleHRfMl90Yl9mb290ZXIgaDIsLmV0X3BiX3RleHRfM190Yl9mb290ZXIgaDJ7Zm9udC1mYW1pbHk6J01vbnRzZXJyYXQnLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC12YXJpYW50OnNtYWxsLWNhcHM7Zm9udC1zaXplOjE2cHg7Y29sb3I6I2ZmZmZmZiFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS42ZW19LmV0X3BiX3RleHRfM190Yl9mb290ZXJ7bGluZS1oZWlnaHQ6MS41ZW07Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjVlbTtwYWRkaW5nLWJvdHRvbToxMHB4IWltcG9ydGFudH0uZXRfcGJfdGV4dF8zX3RiX2Zvb3Rlci5ldF9wYl90ZXh0IGF7Y29sb3I6I0ZGRkZGRiFpbXBvcnRhbnR9LmV0X3BiX3RleHRfM190Yl9mb290ZXIgYSwuZXRfcGJfdGV4dF80X3RiX2Zvb3Rlcntmb250LWZhbWlseTonTW9udHNlcnJhdCcsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjYwMH0uZXRfcGJfcm93XzFfdGJfZm9vdGVyLmV0X3BiX3Jvd3twYWRkaW5nLWJvdHRvbTo1cHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjVweH0uZXRfcGJfdGV4dF80X3RiX2Zvb3Rlci5ldF9wYl90ZXh0IGF7Y29sb3I6I2VkZjAwMCFpbXBvcnRhbnR9LmV0X3BiX3RleHRfNF90Yl9mb290ZXIgYXtmb250LWZhbWlseTonTW9udHNlcnJhdCcsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmfS5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93X25ldHdvcmtfMV90Yl9mb290ZXIgYS5pY29uLC5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93X25ldHdvcmtfMl90Yl9mb290ZXIgYS5pY29uLC5ldF9wYl9zb2NpYWxfbWVkaWFfZm9sbG93X25ldHdvcmtfMF90Yl9mb290ZXIgYS5pY29ue2JhY2tncm91bmQtY29sb3I6I2ZmZmZmZiFpbXBvcnRhbnR9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk4MHB4KXsuZXRfcGJfaW1hZ2VfMF90Yl9mb290ZXIgLmV0X3BiX2ltYWdlX3dyYXAgaW1ne3dpZHRoOmF1dG99fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCl7LmV0X3BiX2ltYWdlXzBfdGJfZm9vdGVye3RleHQtYWxpZ246Y2VudGVyO21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG99LmV0X3BiX2ltYWdlXzBfdGJfZm9vdGVyIC5ldF9wYl9pbWFnZV93cmFwIGltZ3t3aWR0aDphdXRvfX1kaXYuZXRfcGJfc2VjdGlvbi5ldF9wYl9zZWN0aW9uXzIsZGl2LmV0X3BiX3NlY3Rpb24uZXRfcGJfc2VjdGlvbl82LGRpdi5ldF9wYl9zZWN0aW9uLmV0X3BiX3NlY3Rpb25fNHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCgxMzBkZWcsIzIxMGY1NiAyNSUsIzIxMGY1NiAxMDAlKSFpbXBvcnRhbnR9LmV0X3BiX3NlY3Rpb25fMi5ldF9wYl9zZWN0aW9ue3BhZGRpbmctdG9wOjBweDtwYWRkaW5nLWJvdHRvbTo1cHg7bWFyZ2luLXRvcDoxMDBweDttYXJnaW4tYm90dG9tOjJweDtiYWNrZ3JvdW5kLWNvbG9yOiM4NjI0RTEhaW1wb3J0YW50fS5ldF9wYl9zZWN0aW9uXzIuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl9ib3R0b21fZGl2aWRlciAuZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l5TlRad2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAyNTZweDtib3R0b206MDtoZWlnaHQ6MjU2cHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgxLDEpfS5ldF9wYl9yb3dfNC5ldF9wYl9yb3d7cGFkZGluZy10b3A6MHB4IWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjBweCFpbXBvcnRhbnQ7cGFkZGluZy1sZWZ0OjBweCFpbXBvcnRhbnQ7bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50O21hcmdpbi1ib3R0b206MzBweCFpbXBvcnRhbnQ7bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnQ7cGFkZGluZy10b3A6MDtwYWRkaW5nLXJpZ2h0OjBweDtwYWRkaW5nLWxlZnQ6MHB4fS5ldF9wYl90ZXh0XzQsLmV0X3BiX3RleHRfOCwuZXRfcGJfdGV4dF8xN3tsaW5lLWhlaWdodDoyZW07bGluZS1oZWlnaHQ6MmVtO3BhZGRpbmctdG9wOjIxcHghaW1wb3J0YW50O21hcmdpbi1ib3R0b206OXB4IWltcG9ydGFudDttYXgtd2lkdGg6ODAwcHh9LmV0X3BiX3RleHRfMTcgaDIsLmV0X3BiX3RleHRfNCBoMiwuZXRfcGJfdGV4dF84IGgye2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTozNnB4O2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuM2VtfWJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzYgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfNyBoMyxib2R5LnVpd2VidmlldyAuZXRfcGJfdGV4dF8xNSBoMyxib2R5LnVpd2VidmlldyAuZXRfcGJfdGV4dF84IGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzE3IGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzE4IGgzLGJvZHkudWl3ZWJ2aWV3IC5ldF9wYl90ZXh0XzkgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfMTYgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfMTMgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfMTIgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfMTQgaDMsYm9keS51aXdlYnZpZXcgLmV0X3BiX3RleHRfNSBoMyxib2R5LnVpd2VidmlldyAuZXRfcGJfdGV4dF8xMCBoMyxib2R5LnVpd2VidmlldyAuZXRfcGJfdGV4dF8xMSBoMyxib2R5LnVpd2VidmlldyAuZXRfcGJfdGV4dF80IGgze2ZvbnQtdmFyaWFudC1saWdhdHVyZXM6bm8tY29tbW9uLWxpZ2F0dXJlc30uZXRfcGJfZGl2aWRlcl80LC5ldF9wYl9kaXZpZGVyXzMsLmV0X3BiX2RpdmlkZXJfMiwuZXRfcGJfZGl2aWRlcl8xLC5ldF9wYl9kaXZpZGVyXzV7d2lkdGg6MTAlfS5ldF9wYl9kaXZpZGVyXzM6YmVmb3JlLC5ldF9wYl9kaXZpZGVyXzE6YmVmb3JlLC5ldF9wYl9kaXZpZGVyXzU6YmVmb3Jle2JvcmRlci10b3AtY29sb3I6I2ZmZmZmZjtib3JkZXItdG9wLXdpZHRoOjNweH0uZXRfcGJfdGV4dF8xOC5ldF9wYl90ZXh0LC5ldF9wYl90ZXh0XzkuZXRfcGJfdGV4dCwuZXRfcGJfdGV4dF81LmV0X3BiX3RleHR7Y29sb3I6I2ZmZmZmZiFpbXBvcnRhbnR9LmV0X3BiX3RleHRfNSwuZXRfcGJfdGV4dF85e2xpbmUtaGVpZ2h0OjEuNWVtO2ZvbnQtZmFtaWx5OidMYXRvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MS41ZW07cGFkZGluZy1yaWdodDowcHghaW1wb3J0YW50O3BhZGRpbmctbGVmdDowcHghaW1wb3J0YW50O21heC13aWR0aDo4MDBweH0uZXRfcGJfdGV4dF8xMiBoMSwuZXRfcGJfdGV4dF83IGgxLC5ldF9wYl90ZXh0XzE1IGgxLC5ldF9wYl90ZXh0XzkgaDEsLmV0X3BiX3RleHRfMTggaDEsLmV0X3BiX3RleHRfMTYgaDEsLmV0X3BiX3RleHRfMTMgaDEsLmV0X3BiX3RleHRfNSBoMXtmb250LWZhbWlseTonUm9ib3RvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZTo4MHB4O2xpbmUtaGVpZ2h0OjEuMmVtO3RleHQtYWxpZ246Y2VudGVyfS5ldF9wYl90ZXh0XzkgaDMsLmV0X3BiX3RleHRfMTUgaDMsLmV0X3BiX3RleHRfMTggaDMsLmV0X3BiX3RleHRfMTIgaDMsLmV0X3BiX3RleHRfMTYgaDMsLmV0X3BiX3RleHRfNyBoMywuZXRfcGJfdGV4dF8xMyBoMywuZXRfcGJfdGV4dF81IGgze2ZvbnQtZmFtaWx5OidSb2JvdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2ZvbnQtc2l6ZToyNHB4O2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOjEwcHg7bGluZS1oZWlnaHQ6MmVtO3RleHQtYWxpZ246Y2VudGVyfS5ldF9wYl9yb3dfNS5ldF9wYl9yb3d7cGFkZGluZy1ib3R0b206MTUwcHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjE1MHB4fS5ldF9wYl9ibHVyYl81LmV0X3BiX2JsdXJiIC5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9ibHVyYl81LmV0X3BiX2JsdXJiIC5ldF9wYl9tb2R1bGVfaGVhZGVyIGEsLmV0X3BiX2JsdXJiXzguZXRfcGJfYmx1cmIgLmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2JsdXJiXzguZXRfcGJfYmx1cmIgLmV0X3BiX21vZHVsZV9oZWFkZXIgYSwuZXRfcGJfYmx1cmJfNC5ldF9wYl9ibHVyYiAuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfYmx1cmJfNC5ldF9wYl9ibHVyYiAuZXRfcGJfbW9kdWxlX2hlYWRlciBhLC5ldF9wYl9ibHVyYl83LmV0X3BiX2JsdXJiIC5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9ibHVyYl83LmV0X3BiX2JsdXJiIC5ldF9wYl9tb2R1bGVfaGVhZGVyIGEsLmV0X3BiX2JsdXJiXzYuZXRfcGJfYmx1cmIgLmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2JsdXJiXzYuZXRfcGJfYmx1cmIgLmV0X3BiX21vZHVsZV9oZWFkZXIgYXtmb250LWZhbWlseTonTW9udHNlcnJhdCcsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6MjRweDtjb2xvcjojZmZmZmZmIWltcG9ydGFudH0uZXRfcGJfYmx1cmJfNi5ldF9wYl9ibHVyYiBwLC5ldF9wYl9ibHVyYl81LmV0X3BiX2JsdXJiIHAsLmV0X3BiX2JsdXJiXzcuZXRfcGJfYmx1cmIgcCwuZXRfcGJfdG9nZ2xlXzMuZXRfcGJfdG9nZ2xlIHAsLmV0X3BiX2JsdXJiXzQuZXRfcGJfYmx1cmIgcCwuZXRfcGJfdG9nZ2xlXzUuZXRfcGJfdG9nZ2xlIHAsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZSBwLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUgcCwuZXRfcGJfYmx1cmJfOC5ldF9wYl9ibHVyYiBwLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUgcCwuZXRfcGJfdG9nZ2xlXzAuZXRfcGJfdG9nZ2xlIHAsLmV0X3BiX3RvZ2dsZV8yLmV0X3BiX3RvZ2dsZSBwLC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlIHAsLmV0X3BiX3RvZ2dsZV84LmV0X3BiX3RvZ2dsZSBwLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUgcCwuZXRfcGJfdG9nZ2xlXzEuZXRfcGJfdG9nZ2xlIHAsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUgcHtsaW5lLWhlaWdodDoxLjZlbX0uZXRfcGJfYmx1cmJfNS5ldF9wYl9ibHVyYiwuZXRfcGJfYmx1cmJfNC5ldF9wYl9ibHVyYiwuZXRfcGJfYmx1cmJfNi5ldF9wYl9ibHVyYntmb250LWZhbWlseTonTGF0bycsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmO2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuNmVtfS5ldF9wYl9ibHVyYl80IC5ldC1wYi1pY29uLC5ldF9wYl9ibHVyYl84IC5ldC1wYi1pY29uLC5ldF9wYl9ibHVyYl83IC5ldC1wYi1pY29uLC5ldF9wYl9ibHVyYl82IC5ldC1wYi1pY29uLC5ldF9wYl9ibHVyYl81IC5ldC1wYi1pY29ue2NvbG9yOiNmZmZmZmY7Zm9udC1mYW1pbHk6RVRtb2R1bGVzIWltcG9ydGFudDtmb250LXdlaWdodDo0MDAhaW1wb3J0YW50fS5ldF9wYl9ibHVyYl83LmV0X3BiX2JsdXJie2ZvbnQtZmFtaWx5OidMYXRvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Y29sb3I6I2ZmZmZmZiFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS42ZW07bWFyZ2luLWJvdHRvbToycHghaW1wb3J0YW50fS5ldF9wYl9ibHVyYl84LmV0X3BiX2JsdXJie2ZvbnQtZmFtaWx5OidMYXRvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Y29sb3I6I2ZmZmZmZiFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS42ZW07cGFkZGluZy1ib3R0b206MHB4IWltcG9ydGFudH0uZXRfcGJfc2VjdGlvbl8zLmV0X3BiX3NlY3Rpb257cGFkZGluZy10b3A6MHB4O3BhZGRpbmctYm90dG9tOjNweH0uZXRfcGJfc2VjdGlvbl8ze3dpZHRoOjEwMCV9LmV0X3BiX3Jvd182LmV0X3BiX3Jvd3twYWRkaW5nLXRvcDo0NXB4IWltcG9ydGFudDtwYWRkaW5nLXRvcDo0NXB4fS5ldF9wYl90ZXh0XzEwLC5ldF9wYl90ZXh0XzZ7bGluZS1oZWlnaHQ6MmVtO2xpbmUtaGVpZ2h0OjJlbTttYXJnaW4tYm90dG9tOjlweCFpbXBvcnRhbnQ7bWF4LXdpZHRoOjgwMHB4fS5ldF9wYl90ZXh0XzEwIGgyLC5ldF9wYl90ZXh0XzYgaDJ7Zm9udC1mYW1pbHk6J01vbnRzZXJyYXQnLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjM2cHg7Y29sb3I6IzIxMGY1NiFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4zZW19LmV0X3BiX2RpdmlkZXJfMjpiZWZvcmUsLmV0X3BiX2RpdmlkZXJfNDpiZWZvcmV7Ym9yZGVyLXRvcC1jb2xvcjojMjEwZjU2O2JvcmRlci10b3Atd2lkdGg6M3B4fS5ldF9wYl90ZXh0XzEzLmV0X3BiX3RleHQsLmV0X3BiX3RleHRfNy5ldF9wYl90ZXh0LC5ldF9wYl90ZXh0XzEyLmV0X3BiX3RleHQsLmV0X3BiX3RleHRfMTYuZXRfcGJfdGV4dCwuZXRfcGJfdGV4dF8xNS5ldF9wYl90ZXh0LC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzUuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV81LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzUuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV81LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV84LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV84LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV82LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV82LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzcuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV83LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzcuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV83LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzkuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzkuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzQuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzQuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzMuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzMuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8yLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8yLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMi5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTAuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9vcGVuIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEwLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTAuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9vcGVuIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEwLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzAuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8wLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzAuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8wLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDUuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTAuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgxLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEwLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTAuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMy5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg0LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEwLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoNS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGgxLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSBoMy5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlIGg0LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9vcGVuIGg1LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9vcGVuIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4gaDYuZXRfcGJfdG9nZ2xlX3RpdGxle2NvbG9yOiMwMDAwMDAhaW1wb3J0YW50fS5ldF9wYl90ZXh0XzEyLC5ldF9wYl90ZXh0XzEzLC5ldF9wYl90ZXh0XzE1LC5ldF9wYl90ZXh0XzE2LC5ldF9wYl90ZXh0Xzd7bGluZS1oZWlnaHQ6MS41ZW07Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxLjVlbTttYXgtd2lkdGg6ODAwcHh9LmV0X3BiX2N0YV8xLmV0X3BiX3Byb21vIGgyLC5ldF9wYl9jdGFfMS5ldF9wYl9wcm9tbyBoMS5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMS5ldF9wYl9wcm9tbyBoMy5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMS5ldF9wYl9wcm9tbyBoNC5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMS5ldF9wYl9wcm9tbyBoNS5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMS5ldF9wYl9wcm9tbyBoNi5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMy5ldF9wYl9wcm9tbyBoMiwuZXRfcGJfY3RhXzMuZXRfcGJfcHJvbW8gaDEuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfY3RhXzMuZXRfcGJfcHJvbW8gaDMuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfY3RhXzMuZXRfcGJfcHJvbW8gaDQuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfY3RhXzMuZXRfcGJfcHJvbW8gaDUuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfY3RhXzMuZXRfcGJfcHJvbW8gaDYuZXRfcGJfbW9kdWxlX2hlYWRlciwuZXRfcGJfY3RhXzIuZXRfcGJfcHJvbW8gaDIsLmV0X3BiX2N0YV8yLmV0X3BiX3Byb21vIGgxLmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2N0YV8yLmV0X3BiX3Byb21vIGgzLmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2N0YV8yLmV0X3BiX3Byb21vIGg0LmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2N0YV8yLmV0X3BiX3Byb21vIGg1LmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2N0YV8yLmV0X3BiX3Byb21vIGg2LmV0X3BiX21vZHVsZV9oZWFkZXIsLmV0X3BiX2N0YV8wLmV0X3BiX3Byb21vIGgyLC5ldF9wYl9jdGFfMC5ldF9wYl9wcm9tbyBoMS5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMC5ldF9wYl9wcm9tbyBoMy5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMC5ldF9wYl9wcm9tbyBoNC5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMC5ldF9wYl9wcm9tbyBoNS5ldF9wYl9tb2R1bGVfaGVhZGVyLC5ldF9wYl9jdGFfMC5ldF9wYl9wcm9tbyBoNi5ldF9wYl9tb2R1bGVfaGVhZGVye2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWYhaW1wb3J0YW50O2ZvbnQtc2l6ZToyNXB4IWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzoxcHghaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuMmVtIWltcG9ydGFudH0uZXRfcGJfY3RhXzAuZXRfcGJfcHJvbW8sLmV0X3BiX2N0YV8xLmV0X3BiX3Byb21vLC5ldF9wYl9jdGFfMy5ldF9wYl9wcm9tbywuZXRfcGJfY3RhXzIuZXRfcGJfcHJvbW97YmFja2dyb3VuZC1jb2xvcjojMjEwZjU2O2JvcmRlci1yYWRpdXM6MjBweCAyMHB4IDIwcHggMjBweDtvdmVyZmxvdzpoaWRkZW59Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8wLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9jdGFfMi5ldF9wYl9wcm9tbyAuZXRfcGJfcHJvbW9fYnV0dG9uLmV0X3BiX2J1dHRvbixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfY3RhXzEuZXRfcGJfcHJvbW8gLmV0X3BiX3Byb21vX2J1dHRvbi5ldF9wYl9idXR0b24sYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8zLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9ue2NvbG9yOiMwMDAwMDAhaW1wb3J0YW50O2JvcmRlci13aWR0aDowcHghaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6MjhweDtmb250LXNpemU6MTZweDtmb250LWZhbWlseTonTW9udHNlcnJhdCcsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmZ9Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8xLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9jdGFfMS5ldF9wYl9wcm9tbyAuZXRfcGJfcHJvbW9fYnV0dG9uLmV0X3BiX2J1dHRvbjpob3Zlcixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfY3RhXzMuZXRfcGJfcHJvbW8gLmV0X3BiX3Byb21vX2J1dHRvbi5ldF9wYl9idXR0b24sYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8zLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uOmhvdmVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9jdGFfMi5ldF9wYl9wcm9tbyAuZXRfcGJfcHJvbW9fYnV0dG9uLmV0X3BiX2J1dHRvbixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfY3RhXzIuZXRfcGJfcHJvbW8gLmV0X3BiX3Byb21vX2J1dHRvbi5ldF9wYl9idXR0b246aG92ZXIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8wLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9jdGFfMC5ldF9wYl9wcm9tbyAuZXRfcGJfcHJvbW9fYnV0dG9uLmV0X3BiX2J1dHRvbjpob3Zlcixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZ190YWJsZV9idXR0b24uZXRfcGJfYnV0dG9uLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9wcmljaW5nX3RhYmxlc18wIC5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbi5ldF9wYl9idXR0b246aG92ZXJ7cGFkZGluZzowLjNlbSAxZW0haW1wb3J0YW50fWJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9jdGFfMS5ldF9wYl9wcm9tbyAuZXRfcGJfcHJvbW9fYnV0dG9uLmV0X3BiX2J1dHRvbjpiZWZvcmUsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8xLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uOmFmdGVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9jdGFfMC5ldF9wYl9wcm9tbyAuZXRfcGJfcHJvbW9fYnV0dG9uLmV0X3BiX2J1dHRvbjpiZWZvcmUsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8wLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uOmFmdGVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fNTpiZWZvcmUsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl81OmFmdGVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9jdGFfMi5ldF9wYl9wcm9tbyAuZXRfcGJfcHJvbW9fYnV0dG9uLmV0X3BiX2J1dHRvbjpiZWZvcmUsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8yLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uOmFmdGVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fNjpiZWZvcmUsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl82OmFmdGVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9wcmljaW5nX3RhYmxlc18wIC5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbi5ldF9wYl9idXR0b246YmVmb3JlLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9wcmljaW5nX3RhYmxlc18wIC5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbi5ldF9wYl9idXR0b246YWZ0ZXIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2N0YV8zLmV0X3BiX3Byb21vIC5ldF9wYl9wcm9tb19idXR0b24uZXRfcGJfYnV0dG9uOmJlZm9yZSxib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfY3RhXzMuZXRfcGJfcHJvbW8gLmV0X3BiX3Byb21vX2J1dHRvbi5ldF9wYl9idXR0b246YWZ0ZXIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl8zOmJlZm9yZSxib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzM6YWZ0ZXIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl83OmJlZm9yZSxib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzc6YWZ0ZXIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl80OmJlZm9yZSxib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzQ6YWZ0ZXJ7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZXRfcGJfY3RhXzEgLmV0X3BiX2J1dHRvbiwuZXRfcGJfY3RhXzAgLmV0X3BiX2J1dHRvbiwuZXRfcGJfY3RhXzMgLmV0X3BiX2J1dHRvbiwuZXRfcGJfY3RhXzIgLmV0X3BiX2J1dHRvbntib3gtc2hhZG93OjBweCAycHggMThweCAwcHggcmdiYSgwLDAsMCwwLjMpfS5ldF9wYl9idXR0b25fNF93cmFwcGVyIC5ldF9wYl9idXR0b25fNCwuZXRfcGJfYnV0dG9uXzRfd3JhcHBlciAuZXRfcGJfYnV0dG9uXzQ6aG92ZXIsLmV0X3BiX2J1dHRvbl8zX3dyYXBwZXIgLmV0X3BiX2J1dHRvbl8zLC5ldF9wYl9idXR0b25fM193cmFwcGVyIC5ldF9wYl9idXR0b25fMzpob3ZlciwuZXRfcGJfYnV0dG9uXzdfd3JhcHBlciAuZXRfcGJfYnV0dG9uXzcsLmV0X3BiX2J1dHRvbl83X3dyYXBwZXIgLmV0X3BiX2J1dHRvbl83OmhvdmVyLC5ldF9wYl9idXR0b25fNl93cmFwcGVyIC5ldF9wYl9idXR0b25fNiwuZXRfcGJfYnV0dG9uXzZfd3JhcHBlciAuZXRfcGJfYnV0dG9uXzY6aG92ZXIsLmV0X3BiX2J1dHRvbl81X3dyYXBwZXIgLmV0X3BiX2J1dHRvbl81LC5ldF9wYl9idXR0b25fNV93cmFwcGVyIC5ldF9wYl9idXR0b25fNTpob3ZlcntwYWRkaW5nLXRvcDoxOHB4IWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjM0cHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjE4cHghaW1wb3J0YW50O3BhZGRpbmctbGVmdDozNHB4IWltcG9ydGFudH0uZXRfcGJfYnV0dG9uXzdfd3JhcHBlciwuZXRfcGJfYnV0dG9uXzVfd3JhcHBlciwuZXRfcGJfYnV0dG9uXzZfd3JhcHBlciwuZXRfcGJfYnV0dG9uXzRfd3JhcHBlciwuZXRfcGJfYnV0dG9uXzNfd3JhcHBlcnttYXJnaW4tdG9wOjIwcHghaW1wb3J0YW50fWJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fNSxib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzcsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl82LGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fMyxib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzR7Ym9yZGVyLXdpZHRoOjBweCFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMCk7Ym9yZGVyLXJhZGl1czo0cHg7bGV0dGVyLXNwYWNpbmc6MnB4O2ZvbnQtc2l6ZToxMnB4O2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWYhaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjYwMCFpbXBvcnRhbnQ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudDtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjMjg0Njg1IDAlLCMzZjdjYmMgMTAwJSl9Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl80OmhvdmVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fNzpob3Zlcixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfYnV0dG9uXzY6aG92ZXIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX2J1dHRvbl8zOmhvdmVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9idXR0b25fNTpob3ZlcntsZXR0ZXItc3BhY2luZzoycHghaW1wb3J0YW50fS5ldF9wYl9idXR0b25fMywuZXRfcGJfYnV0dG9uXzYsLmV0X3BiX2J1dHRvbl80LC5ldF9wYl9idXR0b25fNywuZXRfcGJfYnV0dG9uXzV7Ym94LXNoYWRvdzo4cHggMTJweCAzMHB4IC0xMHB4IHJnYmEoNDAsNzAsMTMzLDApO3RyYW5zaXRpb246bGV0dGVyLXNwYWNpbmcgMzAwbXMgZWFzZSAwbXN9LmV0X3BiX2J1dHRvbl80LC5ldF9wYl9idXR0b25fNDphZnRlciwuZXRfcGJfYnV0dG9uXzcsLmV0X3BiX2J1dHRvbl83OmFmdGVyLC5ldF9wYl9idXR0b25fNiwuZXRfcGJfYnV0dG9uXzY6YWZ0ZXIsLmV0X3BiX2J1dHRvbl81LC5ldF9wYl9idXR0b25fNTphZnRlciwuZXRfcGJfYnV0dG9uXzMsLmV0X3BiX2J1dHRvbl8zOmFmdGVye3RyYW5zaXRpb246YWxsIDMwMG1zIGVhc2UgMG1zfS5ldF9wYl9zZWN0aW9uXzQuZXRfcGJfc2VjdGlvbntwYWRkaW5nLXRvcDowcHg7cGFkZGluZy1ib3R0b206NXB4O21hcmdpbi10b3A6LTFweDttYXJnaW4tYm90dG9tOjJweDtiYWNrZ3JvdW5kLWNvbG9yOiM4NjI0RTEhaW1wb3J0YW50fS5ldF9wYl9zZWN0aW9uXzQuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl9ib3R0b21fZGl2aWRlciAuZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l5TlRad2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAyNTZweDtib3R0b206MDtoZWlnaHQ6MjU2cHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgtMSwxKX0uZXRfcGJfcm93XzkuZXRfcGJfcm93e3BhZGRpbmctdG9wOjJweCFpbXBvcnRhbnQ7cGFkZGluZy10b3A6MnB4fS5ldF9wYl9wcmljaW5nX3RhYmxlXzIsLmV0X3BiX3ByaWNpbmdfdGFibGVfMSwuZXRfcGJfcHJpY2luZ190YWJsZV8we2JveC1zaGFkb3c6MHB4IDJweCAxOHB4IDBweCByZ2JhKDE5OCwxOTgsMTk4LDAuMyl9LmV0X3BiX3ByaWNpbmcgLmV0X3BiX3ByaWNpbmdfdGFibGVfMi5ldF9wYl9wcmljaW5nX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcsLmV0X3BiX3ByaWNpbmcgLmV0X3BiX3ByaWNpbmdfdGFibGVfMS5ldF9wYl9wcmljaW5nX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcsLmV0X3BiX3ByaWNpbmcgLmV0X3BiX3ByaWNpbmdfdGFibGVfMC5ldF9wYl9wcmljaW5nX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmd7YmFja2dyb3VuZC1jb2xvcjojM2Y3Y2JjIWltcG9ydGFudH0uZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgyLC5ldF9wYl9wcmljaW5nX3RhYmxlc18wIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDEuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgzLmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVzXzAgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoNC5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlc18wIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDUuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGg2LmV0X3BiX3ByaWNpbmdfdGl0bGV7Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NjAwIWltcG9ydGFudDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2UhaW1wb3J0YW50O2ZvbnQtc2l6ZToxNHB4IWltcG9ydGFudDtjb2xvcjojN2E3ZDgwIWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzoxcHghaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuOGVtIWltcG9ydGFudH0uZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZyBsaXt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nLWxlZnQ6MH0uZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfc3Vte2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTo0MHB4O2NvbG9yOiM4ODM0ZmQhaW1wb3J0YW50fS5ldF9wYl9wcmljaW5nX3RhYmxlc18wIC5ldF9wYl9kb2xsYXJfc2lnbiwuZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfZnJlcXVlbmN5e2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojODgzNGZkIWltcG9ydGFudH0uZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZ190YWJsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC40OSl9Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX3ByaWNpbmdfdGFibGVzXzAgLmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uLmV0X3BiX2J1dHRvbntjb2xvcjojZmZmZmZmIWltcG9ydGFudDtib3JkZXItd2lkdGg6OHB4IWltcG9ydGFudDtib3JkZXItY29sb3I6IzIxMGY1Njtib3JkZXItcmFkaXVzOjEwMHB4O2xldHRlci1zcGFjaW5nOjFweDtmb250LXNpemU6MTRweDtmb250LWZhbWlseTonUm9ib3RvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWYhaW1wb3J0YW50O2ZvbnQtd2VpZ2h0OjYwMCFpbXBvcnRhbnQ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOiMyMTBmNTZ9Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX3ByaWNpbmdfdGFibGVzXzAgLmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uLmV0X3BiX2J1dHRvbjpob3ZlcntsZXR0ZXItc3BhY2luZzoxcHghaW1wb3J0YW50fS5ldF9wYl9wcmljaW5nX3RhYmxlc18wIC5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbi5ldF9wYl9idXR0b257dHJhbnNpdGlvbjpsZXR0ZXItc3BhY2luZyAzMDBtcyBlYXNlIDBtc30uZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZ19jb250ZW50X3RvcHtib3JkZXI6bm9uZX0uZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfcHJpY2luZ19jb250ZW50e21hcmdpbi10b3A6LTQwcHh9LmV0X3BiX3RvZ2dsZV82LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiwuZXRfcGJfdG9nZ2xlXzUuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9vcGVuLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX2Nsb3NlLC5ldF9wYl90b2dnbGVfOC5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4sLmV0X3BiX3RvZ2dsZV81LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9vcGVuLC5ldF9wYl90b2dnbGVfMTAuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSwuZXRfcGJfdG9nZ2xlXzEuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSwuZXRfcGJfdG9nZ2xlXzcuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSwuZXRfcGJfdG9nZ2xlXzcuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9vcGVuLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4sLmV0X3BiX3RvZ2dsZV8wLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UsLmV0X3BiX3RvZ2dsZV8wLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiwuZXRfcGJfdG9nZ2xlXzEwLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiwuZXRfcGJfdG9nZ2xlXzMuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlLmV0X3BiX3RvZ2dsZV9jbG9zZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfY2xvc2UsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiwuZXRfcGJfcHJpY2luZ190YWJsZXNfMCAuZXRfcGJfZmVhdHVyZWRfdGFibGUsLmV0X3BiX3RvZ2dsZV8xMS5ldF9wYl90b2dnbGUuZXRfcGJfdG9nZ2xlX29wZW4sLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZS5ldF9wYl90b2dnbGVfb3BlbiwuZXRfcGJfcHJpY2luZ190YWJsZV8wLmV0X3BiX3ByaWNpbmdfdGFibGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMS5ldF9wYl9wcmljaW5nX3RhYmxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzIuZXRfcGJfcHJpY2luZ190YWJsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmZ9LmV0X3BiX3ByaWNpbmdfdGFibGVzXzAgLmV0X3BiX3ByaWNpbmdfaGVhZGluZ3tiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMCl9LmV0X3BiX3NlY3Rpb25fNS5ldF9wYl9zZWN0aW9ue3BhZGRpbmctdG9wOjFweH0uZXRfcGJfcm93XzEyLmV0X3BiX3Jvd3twYWRkaW5nLXRvcDoxMnB4IWltcG9ydGFudDtwYWRkaW5nLXRvcDoxMnB4fS5ldF9wYl90ZXh0XzE0LC5ldF9wYl90ZXh0XzExe2xpbmUtaGVpZ2h0OjJlbTtsaW5lLWhlaWdodDoyZW07bWF4LXdpZHRoOjgwMHB4fS5ldF9wYl90ZXh0XzE0IGgyLC5ldF9wYl90ZXh0XzExIGgye2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTozMHB4O2NvbG9yOiMwMDAwMDAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuM2VtfS5ldF9wYl9zZWN0aW9uXzYuZXRfcGJfc2VjdGlvbntwYWRkaW5nLXRvcDoxNnZ3O3BhZGRpbmctYm90dG9tOjd2d30uZXRfcGJfc2VjdGlvbl82LnNlY3Rpb25faGFzX2RpdmlkZXIuZXRfcGJfdG9wX2RpdmlkZXIgLmV0X3BiX3RvcF9pbnNpZGVfZGl2aWRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVEF3SlNJZ2FHVnBaMmgwUFNJeU5UQndlQ0lnZG1sbGQwSnZlRDBpTUNBd0lERXlPREFnTVRRd0lpQndjbVZ6WlhKMlpVRnpjR1ZqZEZKaGRHbHZQU0p1YjI1bElpQjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaVBqeG5JR1pwYkd3OUlpTm1abVptWm1ZaVBqeHdZWFJvSUdROUlrMHdJREUwTUdneE1qZ3dRelUzTXk0d09DQXhOREFnTUNBd0lEQWdNSG9pSUdacGJHd3RiM0JoWTJsMGVUMGlMak1pTHo0OGNHRjBhQ0JrUFNKTk1DQXhOREJvTVRJNE1FTTFOek11TURnZ01UUXdJREFnTXpBZ01DQXpNSG9pSUdacGJHd3RiM0JoWTJsMGVUMGlMalVpTHo0OGNHRjBhQ0JrUFNKTk1DQXhOREJvTVRJNE1FTTFOek11TURnZ01UUXdJREFnTmpBZ01DQTJNSG9pTHo0OEwyYytQQzl6ZG1jKyk7YmFja2dyb3VuZC1zaXplOjEwMCUgMjUwcHg7dG9wOjA7aGVpZ2h0OjI1MHB4O3otaW5kZXg6MTt0cmFuc2Zvcm06c2NhbGUoMSwtMSl9LmV0X3BiX3RleHRfMTh7bGluZS1oZWlnaHQ6MS40ZW07Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXNpemU6MTdweDtsaW5lLWhlaWdodDoxLjRlbTttYXJnaW4tdG9wOjBweCFpbXBvcnRhbnQ7bWF4LXdpZHRoOjgwMHB4fS5ldF9wYl90b2dnbGVfMy5ldF9wYl90b2dnbGUgaDUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZSBoMi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZSBoMy5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZSBoNi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV82LmV0X3BiX3RvZ2dsZSBoNSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlIGgxLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlIGgyLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlIGg0LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzYuZXRfcGJfdG9nZ2xlIGg2LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEuZXRfcGJfdG9nZ2xlIGg1LC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUgaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUgaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUgaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNC5ldF9wYl90b2dnbGUgaDUsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZSBoMi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZSBoMy5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZSBoNi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUgaDUsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUgaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTAuZXRfcGJfdG9nZ2xlIGgyLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzEwLmV0X3BiX3RvZ2dsZSBoMy5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUgaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTAuZXRfcGJfdG9nZ2xlIGg2LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzAuZXRfcGJfdG9nZ2xlIGg1LC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUgaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUgaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUgaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMC5ldF9wYl90b2dnbGUgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlIGg1LC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlIGgxLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZSBoMi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8xMS5ldF9wYl90b2dnbGUgaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlIGg0LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZSBoNi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV8yLmV0X3BiX3RvZ2dsZSBoNSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlIGgxLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlIGgyLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlIGg0LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzIuZXRfcGJfdG9nZ2xlIGg2LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzUuZXRfcGJfdG9nZ2xlIGg1LC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUgaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUgaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUgaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNS5ldF9wYl90b2dnbGUgaDYuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUgaDUsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZSBoMS5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZSBoMi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZSBoMy5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZSBoNC5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZSBoNi5ldF9wYl90b2dnbGVfdGl0bGUsLmV0X3BiX3RvZ2dsZV84LmV0X3BiX3RvZ2dsZSBoNSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlIGgxLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlIGgyLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlIGgzLmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlIGg0LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlIGg2LmV0X3BiX3RvZ2dsZV90aXRsZSwuZXRfcGJfdG9nZ2xlXzcuZXRfcGJfdG9nZ2xlIGg1LC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUgaDEuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUgaDIuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUgaDMuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUgaDQuZXRfcGJfdG9nZ2xlX3RpdGxlLC5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUgaDYuZXRfcGJfdG9nZ2xlX3RpdGxle2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjEuNGVtfS5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUsLmV0X3BiX3RvZ2dsZV81LmV0X3BiX3RvZ2dsZSwuZXRfcGJfdG9nZ2xlXzQuZXRfcGJfdG9nZ2xlLC5ldF9wYl90b2dnbGVfOS5ldF9wYl90b2dnbGUsLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZSwuZXRfcGJfdG9nZ2xlXzguZXRfcGJfdG9nZ2xlLC5ldF9wYl90b2dnbGVfMS5ldF9wYl90b2dnbGUsLmV0X3BiX3RvZ2dsZV8yLmV0X3BiX3RvZ2dsZSwuZXRfcGJfdG9nZ2xlXzEwLmV0X3BiX3RvZ2dsZSwuZXRfcGJfdG9nZ2xlXzExLmV0X3BiX3RvZ2dsZSwuZXRfcGJfdG9nZ2xlXzAuZXRfcGJfdG9nZ2xlLC5ldF9wYl90b2dnbGVfNi5ldF9wYl90b2dnbGV7Zm9udC1mYW1pbHk6J0xhdG8nLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXNpemU6MTdweDtjb2xvcjojMDAwMDAwIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjZlbTtwYWRkaW5nLXRvcDozMHB4IWltcG9ydGFudDtwYWRkaW5nLXJpZ2h0OjQwcHghaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjMwcHghaW1wb3J0YW50O3BhZGRpbmctbGVmdDo0MHB4IWltcG9ydGFudH0uZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV8yLmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV80LmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV85LmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV81LmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV82LmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV8zLmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV84LmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV8wLmV0X3BiX3RvZ2dsZSwuZXRfcGJfbW9kdWxlLmV0X3BiX3RvZ2dsZV8xMC5ldF9wYl90b2dnbGUsLmV0X3BiX21vZHVsZS5ldF9wYl90b2dnbGVfNy5ldF9wYl90b2dnbGUsLmV0X3BiX21vZHVsZS5ldF9wYl90b2dnbGVfMTEuZXRfcGJfdG9nZ2xlLC5ldF9wYl9tb2R1bGUuZXRfcGJfdG9nZ2xlXzEuZXRfcGJfdG9nZ2xle2JvcmRlci1yYWRpdXM6MTBweCAxMHB4IDEwcHggMTBweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXdpZHRoOjBweH0uZXRfcGJfdG9nZ2xlXzExLC5ldF9wYl90b2dnbGVfMiwuZXRfcGJfdG9nZ2xlXzYsLmV0X3BiX3RvZ2dsZV85LC5ldF9wYl90b2dnbGVfNCwuZXRfcGJfdG9nZ2xlXzEwLC5ldF9wYl90b2dnbGVfNSwuZXRfcGJfdG9nZ2xlXzEsLmV0X3BiX3RvZ2dsZV83LC5ldF9wYl90b2dnbGVfMywuZXRfcGJfdG9nZ2xlXzgsLmV0X3BiX3RvZ2dsZV8we2JveC1zaGFkb3c6MHB4IDJweCAzMHB4IDBweCByZ2JhKDAsMCwwLDAuMDYpIWltcG9ydGFudH0uZXRfcGJfY29kZV8xe21hcmdpbi10b3A6NTBweCFpbXBvcnRhbnR9LmV0X3BiX2ltYWdlXzB7dGV4dC1hbGlnbjpjZW50ZXJ9LmV0X3BiX3ByaWNpbmdfdGFibGVfMSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgyLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoMS5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoMy5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoNC5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoNS5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoNi5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEuZXRfcGJfZmVhdHVyZWRfdGFibGUgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoMiwuZXRfcGJfcHJpY2luZ190YWJsZV8xLmV0X3BiX2ZlYXR1cmVkX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDEuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8xLmV0X3BiX2ZlYXR1cmVkX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDMuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8xLmV0X3BiX2ZlYXR1cmVkX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDQuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8xLmV0X3BiX2ZlYXR1cmVkX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDUuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8xLmV0X3BiX2ZlYXR1cmVkX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDYuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8yIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDIsLmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgxLmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgzLmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGg0LmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGg1LmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGg2LmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMi5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgyLC5ldF9wYl9wcmljaW5nX3RhYmxlXzIuZXRfcGJfZmVhdHVyZWRfdGFibGUgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoMS5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzIuZXRfcGJfZmVhdHVyZWRfdGFibGUgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoMy5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzIuZXRfcGJfZmVhdHVyZWRfdGFibGUgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoNC5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzIuZXRfcGJfZmVhdHVyZWRfdGFibGUgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoNS5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzIuZXRfcGJfZmVhdHVyZWRfdGFibGUgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoNi5ldF9wYl9wcmljaW5nX3RpdGxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzAgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyBoMiwuZXRfcGJfcHJpY2luZ190YWJsZV8wIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDEuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8wIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDMuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8wIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDQuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8wIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDUuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8wIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDYuZXRfcGJfcHJpY2luZ190aXRsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8wLmV0X3BiX2ZlYXR1cmVkX3RhYmxlIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgaDIsLmV0X3BiX3ByaWNpbmdfdGFibGVfMC5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgxLmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMC5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGgzLmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMC5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGg0LmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMC5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGg1LmV0X3BiX3ByaWNpbmdfdGl0bGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMC5ldF9wYl9mZWF0dXJlZF90YWJsZSAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIGg2LmV0X3BiX3ByaWNpbmdfdGl0bGV7Zm9udC1mYW1pbHk6J01vbnRzZXJyYXQnLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZiFpbXBvcnRhbnQ7Zm9udC1zaXplOjIwcHghaW1wb3J0YW50O2NvbG9yOiNmZmZmZmYhaW1wb3J0YW50fS5ldF9wYl9wcmljaW5nX3RhYmxlXzAgdWwuZXRfcGJfcHJpY2luZyBsaSwuZXRfcGJfcHJpY2luZ190YWJsZV8xIHVsLmV0X3BiX3ByaWNpbmcgbGksLmV0X3BiX3ByaWNpbmdfdGFibGVfMiB1bC5ldF9wYl9wcmljaW5nIGxpe2ZvbnQtZmFtaWx5OidMYXRvJyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxOHB4O2NvbG9yOnJnYmEoMCwwLDAsMC44MikhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOjFweDtsaW5lLWhlaWdodDoxZW19LmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ19oZWFkaW5nIC5ldF9wYl9iZXN0X3ZhbHVlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzAgLmV0X3BiX3ByaWNpbmdfaGVhZGluZyAuZXRfcGJfYmVzdF92YWx1ZSwuZXRfcGJfcHJpY2luZ190YWJsZV8xIC5ldF9wYl9wcmljaW5nX2hlYWRpbmcgLmV0X3BiX2Jlc3RfdmFsdWV7Zm9udC1mYW1pbHk6J01vbnRzZXJyYXQnLEhlbHZldGljYSxBcmlhbCxMdWNpZGEsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtjb2xvcjojZmZmZmZmIWltcG9ydGFudH0uZXRfcGJfcHJpY2luZ190YWJsZV8yIC5ldF9wYl9ldF9wcmljZSAuZXRfcGJfc3VtLC5ldF9wYl9wcmljaW5nX3RhYmxlXzAgLmV0X3BiX2V0X3ByaWNlIC5ldF9wYl9zdW0sLmV0X3BiX3ByaWNpbmdfdGFibGVfMSAuZXRfcGJfZXRfcHJpY2UgLmV0X3BiX3N1bXtmb250LWZhbWlseTonTW9udHNlcnJhdCcsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXNpemU6MjBweDtjb2xvcjojMjEwZjU2IWltcG9ydGFudH0uZXRfcGJfcHJpY2luZ190YWJsZV8yIHVsLmV0X3BiX3ByaWNpbmcgbGkuZXRfcGJfbm90X2F2YWlsYWJsZSwuZXRfcGJfcHJpY2luZ190YWJsZV8yIHVsLmV0X3BiX3ByaWNpbmcgbGkuZXRfcGJfbm90X2F2YWlsYWJsZSBzcGFuLC5ldF9wYl9wcmljaW5nX3RhYmxlXzIgdWwuZXRfcGJfcHJpY2luZyBsaS5ldF9wYl9ub3RfYXZhaWxhYmxlIGEsLmV0X3BiX3ByaWNpbmdfdGFibGVfMCB1bC5ldF9wYl9wcmljaW5nIGxpLmV0X3BiX25vdF9hdmFpbGFibGUsLmV0X3BiX3ByaWNpbmdfdGFibGVfMCB1bC5ldF9wYl9wcmljaW5nIGxpLmV0X3BiX25vdF9hdmFpbGFibGUgc3BhbiwuZXRfcGJfcHJpY2luZ190YWJsZV8wIHVsLmV0X3BiX3ByaWNpbmcgbGkuZXRfcGJfbm90X2F2YWlsYWJsZSBhLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgdWwuZXRfcGJfcHJpY2luZyBsaS5ldF9wYl9ub3RfYXZhaWxhYmxlLC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgdWwuZXRfcGJfcHJpY2luZyBsaS5ldF9wYl9ub3RfYXZhaWxhYmxlIHNwYW4sLmV0X3BiX3ByaWNpbmdfdGFibGVfMSB1bC5ldF9wYl9wcmljaW5nIGxpLmV0X3BiX25vdF9hdmFpbGFibGUgYXtjb2xvcjojM2EzYTNhIWltcG9ydGFudH0uZXRfcGJfcHJpY2luZyAuZXRfcGJfcHJpY2luZ190YWJsZS5ldF9wYl9wcmljaW5nX3RhYmxlXzIsLmV0X3BiX3ByaWNpbmcgLmV0X3BiX3ByaWNpbmdfdGFibGUuZXRfcGJfcHJpY2luZ190YWJsZV8xLC5ldF9wYl9wcmljaW5nIC5ldF9wYl9wcmljaW5nX3RhYmxlLmV0X3BiX3ByaWNpbmdfdGFibGVfMHtib3JkZXItcmFkaXVzOjEwcHggMTBweCAxMHB4IDEwcHg7b3ZlcmZsb3c6aGlkZGVufWJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9wcmljaW5nIC5ldF9wYl9wcmljaW5nX3RhYmxlXzIgLmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uLmV0X3BiX2J1dHRvbixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfcHJpY2luZyAuZXRfcGJfcHJpY2luZ190YWJsZV8xIC5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbi5ldF9wYl9idXR0b24sYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX3ByaWNpbmcgLmV0X3BiX3ByaWNpbmdfdGFibGVfMCAuZXRfcGJfcHJpY2luZ190YWJsZV9idXR0b24uZXRfcGJfYnV0dG9ue2JvcmRlci1jb2xvcjojM2Y3Y2JjO2ZvbnQtZmFtaWx5OidNb250c2VycmF0JyxIZWx2ZXRpY2EsQXJpYWwsTHVjaWRhLHNhbnMtc2VyaWYhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6IzNmN2NiY30uZXRfcGJfdGV4dF8xMy5ldF9wYl9tb2R1bGUsLmV0X3BiX3RleHRfNC5ldF9wYl9tb2R1bGUsLmV0X3BiX2RpdmlkZXJfNS5ldF9wYl9tb2R1bGUsLmV0X3BiX3RleHRfMTEuZXRfcGJfbW9kdWxlLC5ldF9wYl9kaXZpZGVyXzQuZXRfcGJfbW9kdWxlLC5ldF9wYl90ZXh0XzEwLmV0X3BiX21vZHVsZSwuZXRfcGJfdGV4dF8xNC5ldF9wYl9tb2R1bGUsLmV0X3BiX3RleHRfMTUuZXRfcGJfbW9kdWxlLC5ldF9wYl90ZXh0XzE2LmV0X3BiX21vZHVsZSwuZXRfcGJfdGV4dF8xNy5ldF9wYl9tb2R1bGUsLmV0X3BiX3RleHRfOS5ldF9wYl9tb2R1bGUsLmV0X3BiX2RpdmlkZXJfMS5ldF9wYl9tb2R1bGUsLmV0X3BiX3RleHRfMTguZXRfcGJfbW9kdWxlLC5ldF9wYl9kaXZpZGVyXzMuZXRfcGJfbW9kdWxlLC5ldF9wYl90ZXh0XzguZXRfcGJfbW9kdWxlLC5ldF9wYl90ZXh0XzcuZXRfcGJfbW9kdWxlLC5ldF9wYl90ZXh0XzEyLmV0X3BiX21vZHVsZSwuZXRfcGJfdGV4dF82LmV0X3BiX21vZHVsZSwuZXRfcGJfdGV4dF81LmV0X3BiX21vZHVsZSwuZXRfcGJfZGl2aWRlcl8yLmV0X3BiX21vZHVsZXttYXJnaW4tbGVmdDphdXRvIWltcG9ydGFudDttYXJnaW4tcmlnaHQ6YXV0byFpbXBvcnRhbnR9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjk4MXB4KXsuZXRfcGJfcm93XzcsYm9keSAjcGFnZS1jb250YWluZXIgLmV0LWRiICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd183LmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUgI3BhZ2UtY29udGFpbmVyICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd183LmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUuZXRfZnVsbF93aWR0aF9wYWdlICNwYWdlLWNvbnRhaW5lciAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfNy5ldF9wYl9yb3d7d2lkdGg6MTAwJX0uZXRfcGJfcm93XzEzLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldC1kYiAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfMTMuZXRfcGJfcm93LGJvZHkuZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0LnNpbmdsZSAjcGFnZS1jb250YWluZXIgI2V0LWJvYyAuZXQtbCAuZXRfcGJfcm93XzEzLmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUuZXRfZnVsbF93aWR0aF9wYWdlICNwYWdlLWNvbnRhaW5lciAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfMTMuZXRfcGJfcm93e3dpZHRoOjg5JTttYXgtd2lkdGg6ODklfX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTgwcHgpey5ldF9wYl9zZWN0aW9uXzIuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl9ib3R0b21fZGl2aWRlciAuZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l4TlRCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxNTBweDtib3R0b206MDtoZWlnaHQ6MTUwcHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgxLDEpfS5ldF9wYl90ZXh0XzE3IGgyLC5ldF9wYl90ZXh0XzExIGgyLC5ldF9wYl90ZXh0XzEwIGgyLC5ldF9wYl90ZXh0XzE0IGgyLC5ldF9wYl90ZXh0XzggaDIsLmV0X3BiX3RleHRfNiBoMiwuZXRfcGJfdGV4dF80IGgye2ZvbnQtc2l6ZTozNXB4fS5ldF9wYl90ZXh0XzE1IGgxLC5ldF9wYl90ZXh0XzcgaDEsLmV0X3BiX3RleHRfOSBoMSwuZXRfcGJfdGV4dF8xMyBoMSwuZXRfcGJfdGV4dF8xNiBoMSwuZXRfcGJfdGV4dF8xOCBoMSwuZXRfcGJfdGV4dF81IGgxLC5ldF9wYl90ZXh0XzEyIGgxe2ZvbnQtc2l6ZTo0MHB4fS5ldF9wYl90ZXh0XzE1IGgzLC5ldF9wYl90ZXh0XzEzIGgzLC5ldF9wYl90ZXh0XzE2IGgzLC5ldF9wYl90ZXh0XzEyIGgzLC5ldF9wYl90ZXh0XzE4IGgzLC5ldF9wYl90ZXh0XzkgaDMsLmV0X3BiX3RleHRfNyBoMywuZXRfcGJfdGV4dF81IGgze2ZvbnQtc2l6ZToxNnB4O2xldHRlci1zcGFjaW5nOjVweH0uZXRfcGJfcm93XzcsYm9keSAjcGFnZS1jb250YWluZXIgLmV0LWRiICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd183LmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUgI3BhZ2UtY29udGFpbmVyICNldC1ib2MgLmV0LWwgLmV0X3BiX3Jvd183LmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUuZXRfZnVsbF93aWR0aF9wYWdlICNwYWdlLWNvbnRhaW5lciAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfNy5ldF9wYl9yb3d7d2lkdGg6NTUlfS5ldF9wYl9zZWN0aW9uXzQuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl9ib3R0b21fZGl2aWRlciAuZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l4TlRCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxNTBweDtib3R0b206MDtoZWlnaHQ6MTUwcHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgtMSwxKX1ib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfcHJpY2luZyAuZXRfcGJfcHJpY2luZ190YWJsZV8wIC5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbi5ldF9wYl9idXR0b246YWZ0ZXIsYm9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX3ByaWNpbmcgLmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ190YWJsZV9idXR0b24uZXRfcGJfYnV0dG9uOmFmdGVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9wcmljaW5nIC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgLmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uLmV0X3BiX2J1dHRvbjphZnRlcntvcGFjaXR5OjB9LmV0X3BiX3NlY3Rpb25fNi5ldF9wYl9zZWN0aW9ue3BhZGRpbmctdG9wOjEwMHB4O3BhZGRpbmctYm90dG9tOjEwMHB4fS5ldF9wYl9zZWN0aW9uXzYuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl90b3BfZGl2aWRlciAuZXRfcGJfdG9wX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l4TlRCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxNTBweDt0b3A6MDtoZWlnaHQ6MTUwcHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgxLC0xKX0uZXRfcGJfcm93XzEzLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldC1kYiAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfMTMuZXRfcGJfcm93LGJvZHkuZXRfcGJfcGFnZWJ1aWxkZXJfbGF5b3V0LnNpbmdsZSAjcGFnZS1jb250YWluZXIgI2V0LWJvYyAuZXQtbCAuZXRfcGJfcm93XzEzLmV0X3BiX3Jvdyxib2R5LmV0X3BiX3BhZ2VidWlsZGVyX2xheW91dC5zaW5nbGUuZXRfZnVsbF93aWR0aF9wYWdlICNwYWdlLWNvbnRhaW5lciAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfMTMuZXRfcGJfcm93e3dpZHRoOjgwJTttYXgtd2lkdGg6ODAlfS5ldF9wYl9pbWFnZV8wIC5ldF9wYl9pbWFnZV93cmFwIGltZ3t3aWR0aDphdXRvfX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3cHgpey5ldF9wYl9zZWN0aW9uXzIuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl9ib3R0b21fZGl2aWRlciAuZXRfcGJfYm90dG9tX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l4TVRCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMTBweDtib3R0b206MDtoZWlnaHQ6MTEwcHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgxLDEpfS5ldF9wYl9yb3dfNC5ldF9wYl9yb3d7bWFyZ2luLWJvdHRvbTozMHB4IWltcG9ydGFudH0uZXRfcGJfdGV4dF8xNCBoMiwuZXRfcGJfdGV4dF8xMCBoMiwuZXRfcGJfdGV4dF8xMSBoMiwuZXRfcGJfdGV4dF82IGgyLC5ldF9wYl90ZXh0XzQgaDIsLmV0X3BiX3RleHRfOCBoMiwuZXRfcGJfdGV4dF8xNyBoMntmb250LXNpemU6MjNweH0uZXRfcGJfdGV4dF8xMyBoMSwuZXRfcGJfdGV4dF8xMiBoMSwuZXRfcGJfdGV4dF8xNSBoMSwuZXRfcGJfdGV4dF8xOCBoMSwuZXRfcGJfdGV4dF8xNiBoMSwuZXRfcGJfdGV4dF85IGgxLC5ldF9wYl90ZXh0XzcgaDEsLmV0X3BiX3RleHRfNSBoMXtmb250LXNpemU6MzJweH0uZXRfcGJfdGV4dF8xMyBoMywuZXRfcGJfdGV4dF8xOCBoMywuZXRfcGJfdGV4dF8xNiBoMywuZXRfcGJfdGV4dF8xNSBoMywuZXRfcGJfdGV4dF83IGgzLC5ldF9wYl90ZXh0XzEyIGgzLC5ldF9wYl90ZXh0XzUgaDMsLmV0X3BiX3RleHRfOSBoM3tmb250LXNpemU6MTRweH0uZXRfcGJfdGV4dF81e21hcmdpbi1yaWdodDowcHghaW1wb3J0YW50O21hcmdpbi1sZWZ0OjBweCFpbXBvcnRhbnR9LmV0X3BiX3Jvd183LGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldC1kYiAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfNy5ldF9wYl9yb3csYm9keS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQuc2luZ2xlICNwYWdlLWNvbnRhaW5lciAjZXQtYm9jIC5ldC1sIC5ldF9wYl9yb3dfNy5ldF9wYl9yb3csYm9keS5ldF9wYl9wYWdlYnVpbGRlcl9sYXlvdXQuc2luZ2xlLmV0X2Z1bGxfd2lkdGhfcGFnZSAjcGFnZS1jb250YWluZXIgI2V0LWJvYyAuZXQtbCAuZXRfcGJfcm93XzcuZXRfcGJfcm93e3dpZHRoOjc1JX0uZXRfcGJfc2VjdGlvbl80LnNlY3Rpb25faGFzX2RpdmlkZXIuZXRfcGJfYm90dG9tX2RpdmlkZXIgLmV0X3BiX2JvdHRvbV9pbnNpZGVfZGl2aWRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVEF3SlNJZ2FHVnBaMmgwUFNJeE1UQndlQ0lnZG1sbGQwSnZlRDBpTUNBd0lERXlPREFnTVRRd0lpQndjbVZ6WlhKMlpVRnpjR1ZqZEZKaGRHbHZQU0p1YjI1bElpQjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaVBqeG5JR1pwYkd3OUlpTm1abVptWm1ZaVBqeHdZWFJvSUdROUlrMHdJREUwTUdneE1qZ3dRelUzTXk0d09DQXhOREFnTUNBd0lEQWdNSG9pSUdacGJHd3RiM0JoWTJsMGVUMGlMak1pTHo0OGNHRjBhQ0JrUFNKTk1DQXhOREJvTVRJNE1FTTFOek11TURnZ01UUXdJREFnTXpBZ01DQXpNSG9pSUdacGJHd3RiM0JoWTJsMGVUMGlMalVpTHo0OGNHRjBhQ0JrUFNKTk1DQXhOREJvTVRJNE1FTTFOek11TURnZ01UUXdJREFnTmpBZ01DQTJNSG9pTHo0OEwyYytQQzl6ZG1jKyk7YmFja2dyb3VuZC1zaXplOjEwMCUgMTEwcHg7Ym90dG9tOjA7aGVpZ2h0OjExMHB4O3otaW5kZXg6MTt0cmFuc2Zvcm06c2NhbGUoLTEsMSl9Ym9keSAjcGFnZS1jb250YWluZXIgLmV0X3BiX3NlY3Rpb24gLmV0X3BiX3ByaWNpbmcgLmV0X3BiX3ByaWNpbmdfdGFibGVfMiAuZXRfcGJfcHJpY2luZ190YWJsZV9idXR0b24uZXRfcGJfYnV0dG9uOmFmdGVyLGJvZHkgI3BhZ2UtY29udGFpbmVyIC5ldF9wYl9zZWN0aW9uIC5ldF9wYl9wcmljaW5nIC5ldF9wYl9wcmljaW5nX3RhYmxlXzEgLmV0X3BiX3ByaWNpbmdfdGFibGVfYnV0dG9uLmV0X3BiX2J1dHRvbjphZnRlcixib2R5ICNwYWdlLWNvbnRhaW5lciAuZXRfcGJfc2VjdGlvbiAuZXRfcGJfcHJpY2luZyAuZXRfcGJfcHJpY2luZ190YWJsZV8wIC5ldF9wYl9wcmljaW5nX3RhYmxlX2J1dHRvbi5ldF9wYl9idXR0b246YWZ0ZXJ7b3BhY2l0eTowfS5ldF9wYl9zZWN0aW9uXzYuc2VjdGlvbl9oYXNfZGl2aWRlci5ldF9wYl90b3BfZGl2aWRlciAuZXRfcGJfdG9wX2luc2lkZV9kaXZpZGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1UQXdKU0lnYUdWcFoyaDBQU0l4TVRCd2VDSWdkbWxsZDBKdmVEMGlNQ0F3SURFeU9EQWdNVFF3SWlCd2NtVnpaWEoyWlVGemNHVmpkRkpoZEdsdlBTSnViMjVsSWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpUGp4bklHWnBiR3c5SWlObVptWm1abVlpUGp4d1lYUm9JR1E5SWswd0lERTBNR2d4TWpnd1F6VTNNeTR3T0NBeE5EQWdNQ0F3SURBZ01Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqTWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdNekFnTUNBek1Ib2lJR1pwYkd3dGIzQmhZMmwwZVQwaUxqVWlMejQ4Y0dGMGFDQmtQU0pOTUNBeE5EQm9NVEk0TUVNMU56TXVNRGdnTVRRd0lEQWdOakFnTUNBMk1Ib2lMejQ4TDJjK1BDOXpkbWMrKTtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMTBweDt0b3A6MDtoZWlnaHQ6MTEwcHg7ei1pbmRleDoxO3RyYW5zZm9ybTpzY2FsZSgxLC0xKX0uZXRfcGJfaW1hZ2VfMCAuZXRfcGJfaW1hZ2Vfd3JhcCBpbWd7d2lkdGg6YXV0b319"}},"time_used":95,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":94,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/plan1.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.979Z","timestamp":1785148618979,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/plan1.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/plan4.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.983Z","timestamp":1785148618983,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/plan4.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/pwa-for-wp/assets/css/pwaforwp-main.min.css?ver=1.7.49","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.636Z","timestamp":1785148618636,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/pwa-for-wp/assets/css/pwaforwp-main.min.css?ver=1.7.49 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/css\r\nContent-Length: 3282\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:16 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":3282,"size_decoded":3491,"mime_type":"text/css","magic":"Unicode text, UTF-8 text","md5":"2578d5fae547509bda4ecb82f2f3a807","sha1":"89c576003dbcf372399748d5c13fa60e27516abb","sha256":"0c1a4c870d1bbb4c4968197ee213b3f937988a9c1c93c5fdc53403b8bf74df1f","sha512":"5d3939b0a7360907fec2e366d8f175d3434da8b2f1481ef22b7dddd5f1bddd3e874306ed1209edab612721b1c94638484e7840807bc7c0e918ad0312376f4e32","ssdeep":"","tlshash":"056111ba79631144a333927d3baa2b02577c4483791edab579e8110ccfc12a866d739d","first_seen":"2023-09-16T23:01:16Z","last_seen":"2026-07-27T10:37:50.405131Z","times_seen":13,"resource_available":false,"data":"LyoKVG8gY2hhbmdlIHRoaXMgbGljZW5zZSBoZWFkZXIsIGNob29zZSBMaWNlbnNlIEhlYWRlcnMgaW4gUHJvamVjdCBQcm9wZXJ0aWVzLgpUbyBjaGFuZ2UgdGhpcyB0ZW1wbGF0ZSBmaWxlLCBjaG9vc2UgVG9vbHMgfCBUZW1wbGF0ZXMKYW5kIG9wZW4gdGhlIHRlbXBsYXRlIGluIHRoZSBlZGl0b3IuCiovCi8qIAogICAgQ3JlYXRlZCBvbiA6IE5vdiAyMCwgMjAxOCwgMzo1NToxNSBQTQogICAgQXV0aG9yICAgICA6IE1hZ2F6aW5lMwoqLwpAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7CiAgICAucHdhZm9yd3AtZm9vdGVyLXByb21wdCB7CiAgICAgICAgcGFkZGluZzogMSUgMyU7CiAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgfQp9Ci5wd2Fmb3J3cC1mb290ZXItcHJvbXB0ewogICAgZGlzcGxheTogbm9uZTsKICAgIHdpZHRoOiAxMDAlOwogICAgbGluZS1oZWlnaHQ6IDJlbTsgICAgCiAgICBjb2xvcjogIzMzMzsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgICAgCiAgICBtaW4taGVpZ2h0OiAxMCU7CiAgICBwYWRkaW5nOjE1cHggMHB4IDE1cHggMHB4OwogICAgcG9zaXRpb246IGZpeGVkOwogICAgYm90dG9tOiAwOwogICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICBmbGV4LWdyb3c6IDE7CiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzOwogICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsKICAgIHotaW5kZXg6IDk5OTk7Cn0KLnB3YWZvcndwLWZvb3Rlci1wcm9tcHQgLnB3YWZvcndwLXByb21wdC1jbG9zZTphZnRlcnsKICBjb250ZW50OiAi4pyWIjsKICBjb2xvcjogI2Q1ZTBlYjsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgcmlnaHQ6IDEwcHg7CiAgdG9wOiAxMHB4OwogIGZvbnQtc2l6ZTogMTJweDsKICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNDApOwogIGJvcmRlci1yYWRpdXM6IDMwcHg7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIHdpZHRoOiAyMHB4OwogIGhlaWdodDogMjBweDsKICBsaW5lLWhlaWdodDogMjJweDsKICBjdXJzb3I6IHBvaW50ZXI7Cn0gCi5wd2Fmb3J3cC1ib3VuY2VJblVwewogICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7Cn0KLnB3YWZvcndwLWFuaW1hdGVkIHsKICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7CiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOwp9Ci5wd2Fmb3J3cC1idG57CiAgICBib3JkZXI6IG5vbmU7ICAgCiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBoZWlnaHQ6IGF1dG87CiAgICBsaW5lLWhlaWdodDogMTsKICAgIG1pbi13aWR0aDogYXV0bzsKICAgIHBhZGRpbmc6IDhweCAxNnB4OwogICAgZm9udC1zaXplOiAxNnB4OwogICAgbWFyZ2luOiAxMHB4IDBweCAwcHggMHB4OwogICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7CiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsKICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7Cn0KLyogQ2VudGVyIHRoZSBsb2FkZXIgKi8KCiNwd2Fmb3J3cF9sb2FkaW5nX2RpdiB7CiAgZGlzcGxheTogbm9uZTsKICBwb3NpdGlvbjogZml4ZWQ7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAyMDAlOwogIHRvcDogMHB4OwogIGxlZnQ6IDBweDsKICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsKICB6LWluZGV4OiA5OTk5Owp9Ci5wd2Fmb3J3cC1sb2FkaW5nLXdyYXBwZXJ7ei1pbmRleDogOTk5OTk5OTtkaXNwbGF5Om5vbmU7fQojcHdhZm9yd3BfbG9hZGluZ19pY29uIHsKICBwb3NpdGlvbjogZml4ZWQ7CiAgbGVmdDogNTAlOwogIHRvcDogNTAlOwogIHotaW5kZXg6IDk5OTk5OTk7CiAgbWFyZ2luOiAtNjBweCAwIDAgLTYwcHg7CiAgYm9yZGVyOiAxNnB4IHNvbGlkICNmM2YzZjM7CiAgYm9yZGVyLXJhZGl1czogNTAlOwogIGJvcmRlci10b3A6IDE2cHggc29saWQgIzM0OThkYjsKICB3aWR0aDogMTIwcHg7CiAgaGVpZ2h0OiAxMjBweDsKICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7CiAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4gewogIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfQogIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0KfQoKQGtleWZyYW1lcyBzcGluIHsKICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9CiAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0KfQoKLyogQWRkIGFuaW1hdGlvbiB0byAicGFnZSBjb250ZW50IiAqLwouYW5pbWF0ZS1ib3R0b20gewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhbmltYXRlYm90dG9tOwogIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsKICBhbmltYXRpb24tbmFtZTogYW5pbWF0ZWJvdHRvbTsKICBhbmltYXRpb24tZHVyYXRpb246IDFzCn0KCkAtd2Via2l0LWtleWZyYW1lcyBhbmltYXRlYm90dG9tIHsKICBmcm9tIHsgYm90dG9tOi0xMDBweDsgb3BhY2l0eTowIH0gCiAgdG8geyBib3R0b206MHB4OyBvcGFjaXR5OjEgfQp9CgpAa2V5ZnJhbWVzIGFuaW1hdGVib3R0b20geyAKICBmcm9teyBib3R0b206LTEwMHB4OyBvcGFjaXR5OjAgfSAKICB0b3sgYm90dG9tOjA7IG9wYWNpdHk6MSB9Cn0KCi8qKiBBZGQgdG8gaG9tZSBzY3JlZW4gQ1NTICoqLwojcHdhZm9yd3AtYWRkLXRvLWhvbWUtY2xpY2sgaDN7CiAgZm9udC1zaXplOiAyMHB4OwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgbWFyZ2luOiAwcHg7CiAgbGluZS1oZWlnaHQ6IDEuNDsKICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsKfQoKQG1lZGlhKG1heC13aWR0aDo0MjVweCl7CiAgI3B3YWZvcndwLWFkZC10by1ob21lLWNsaWNrIGgzIHsKICAgIGZvbnQtc2l6ZTogMTZweDsKICB9CiAgLnB3YWZvcndwLWJ0bnsKICAgIGZvbnQtc2l6ZTogMTRweDsKICB9CiAgLnB3YWZvcndwLWZvb3Rlci1wcm9tcHR7CiAgICBwYWRkaW5nOjE1cHggMHB4IDEwcHggMHB4OwogIH0KICAucHdhZm9yd3AtZm9vdGVyLXByb21wdCAucHdhZm9yd3AtcHJvbXB0LWNsb3NlOmFmdGVyIHsKICAgIHJpZ2h0OiA1cHg7CiAgICB0b3A6IDVweDsKICB9Cn0KLnB3YWZvcndwLWFwcC1jb250ZW50c3tkaXNwbGF5OiBub25lO30K"}},"time_used":414,"timings":{"blocked":320,"dns":0,"connect":0,"send":0,"wait":94,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.googletagmanager.com/gtag/js?id=AW-10951843726","fqdn":"www.googletagmanager.com","domain":"googletagmanager.com","tld":"com"},"ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.926Z","timestamp":1785148618926,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google-analytics.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:33 GMT","end":"Mon, 21 Sep 2026 08:37:32 GMT"},"fingerprint":{"sha1":"85:82:80:E9:F0:BC:08:B5:D8:5D:91:B4:E5:D3:DB:B1:A7:2F:E3:F3","sha256":"E3:94:E9:DA:2C:F1:36:09:33:63:D3:69:08:E7:E6:91:8D:F3:61:7F:0F:D0:5F:8E:B6:E9:D7:F3:DD:10:3C:DC"}}},"request":{"raw":"GET /gtag/js?id=AW-10951843726 HTTP/1.1\r\nHost: www.googletagmanager.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/javascript; charset=UTF-8\r\naccess-control-allow-origin: *\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Cache-Control\r\ncontent-encoding: zstd\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 10:36:59 GMT\r\nexpires: Mon, 27 Jul 2026 10:36:59 GMT\r\ncache-control: private, max-age=900\r\nlast-modified: Mon, 27 Jul 2026 09:00:00 GMT\r\nstrict-transport-security: max-age=31536000; includeSubDomains\r\ncross-origin-resource-policy: cross-origin\r\nserver: Google Tag Manager\r\ncontent-length: 149630\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":425261,"size_decoded":150280,"mime_type":"application/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (5422)","md5":"d1e2209fe1403a0625c7848261166ebf","sha1":"a42b21edc802d80d08922e89564cb252834c5a21","sha256":"34efe54b238072ac17acf92a3961cc01ee014695f6841476e3626a0c73943d24","sha512":"6039c4dd45b66500415cb7320dcab39a395da69710a7ba60027133a15b8e3b29ebe5beb92e7e58b02af2410a045ca590dd66fe4b12a68b478243b08adb97b4f9","ssdeep":"6144:NkRU0jNo7P69FMxmRkqn0hdBScPmfxNf3EjvxTGaqoXi0:NkCYqP69V3KzxXqOi0","tlshash":"089408cdb3d6706293a2f478903f018bb27a69d2f448c899f185d8d42e7465a8277f7c","first_seen":"2026-07-27T08:11:28.899517Z","last_seen":"2026-07-27T10:37:50.40076Z","times_seen":3,"resource_available":false,"data":"Ci8vIENvcHlyaWdodCAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKKGZ1bmN0aW9uKCl7Cgp2YXIgZGF0YSA9IHsKInJlc291cmNlIjogewogICJ2ZXJzaW9uIjoiMSIsCiAgCiAgIm1hY3JvcyI6W3siZnVuY3Rpb24iOiJfX2UifV0sCiAgInRhZ3MiOlt7ImZ1bmN0aW9uIjoiX19vZ3RfMXBfZGF0YV92MiIsInByaW9yaXR5Ijo0LCJ2dHBfaXNBdXRvRW5hYmxlZCI6dHJ1ZSwidnRwX2F1dG9QaG9uZUVuYWJsZWQiOnRydWUsInZ0cF9hdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyI6WyJsaXN0IixbIm1hcCIsImV4Y2x1c2lvblNlbGVjdG9yIiwiIl1dLCJ2dHBfaXNFbmFibGVkIjp0cnVlLCJ2dHBfYXV0b0FkZHJlc3NFbmFibGVkIjp0cnVlLCJ2dHBfYXV0b0VtYWlsRW5hYmxlZCI6dHJ1ZSwidnRwX2lzQXV0b0NvbGxlY3RQaWlFbmFibGVkRmxhZyI6dHJ1ZSwidGFnX2lkIjo0fSx7ImZ1bmN0aW9uIjoiX19jY2RfYWRzX2ZpcnN0IiwicHJpb3JpdHkiOjMsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJBVy0xMDk1MTg0MzcyNiIsInRhZ19pZCI6OX0seyJmdW5jdGlvbiI6Il9fY2NkX2VtX3BhZ2VfdmlldyIsInByaW9yaXR5IjoyLCJ2dHBfaGlzdG9yeUV2ZW50cyI6dHJ1ZSwidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJBVy0xMDk1MTg0MzcyNiIsInRhZ19pZCI6OH0seyJmdW5jdGlvbiI6Il9fY2NkX2Fkc19jb252X21hcmtpbmciLCJwcmlvcml0eSI6MSwidnRwX2NvbnZlcnNpb25SdWxlcyI6WyJsaXN0IixbIm1hcCIsIm1hdGNoaW5nUnVsZXMiLCJ7XCJ0eXBlXCI6MixcImFyZ3NcIjpbe1wiYm9vbGVhbkV4cHJlc3Npb25WYWx1ZVwiOntcInR5cGVcIjoxLFwiYXJnc1wiOlt7XCJib29sZWFuRXhwcmVzc2lvblZhbHVlXCI6e1widHlwZVwiOjYsXCJhcmdzXCI6W3tcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJoaXREYXRhXCIsXCJwYWdlX2xvY2F0aW9uXCJdfX0se1wic3RyaW5nVmFsdWVcIjpcImh0dHA6XC9cL3d3dy5teWNyeXB0b3BhcmFkaXNlLmNvbVwifV19fSx7XCJib29sZWFuRXhwcmVzc2lvblZhbHVlXCI6e1widHlwZVwiOjYsXCJhcmdzXCI6W3tcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJoaXREYXRhXCIsXCJwYWdlX2xvY2F0aW9uXCJdfX0se1wic3RyaW5nVmFsdWVcIjpcImh0dHBzOlwvXC93d3cubXljcnlwdG9wYXJhZGlzZS5jb21cIn1dfX1dfX0se1wiYm9vbGVhbkV4cHJlc3Npb25WYWx1ZVwiOntcInR5cGVcIjoyLFwiYXJnc1wiOlt7XCJib29sZWFuRXhwcmVzc2lvblZhbHVlXCI6e1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJwYWdlX3ZpZXdcIn0se1wiY29udGV4dFZhbHVlXCI6e1wibmFtZXNwYWNlVHlwZVwiOjEsXCJrZXlQYXJ0c1wiOltcImV2ZW50TmFtZVwiXX19XX19LHtcImJvb2xlYW5FeHByZXNzaW9uVmFsdWVcIjp7XCJ0eXBlXCI6OCxcImFyZ3NcIjpbe1wiY29udGV4dFZhbHVlXCI6e1wibmFtZXNwYWNlVHlwZVwiOjEsXCJrZXlQYXJ0c1wiOltcImhpdERhdGFcIixcInBhZ2VfbG9jYXRpb25cIl19fSx7XCJzdHJpbmdWYWx1ZVwiOlwibXljcnlwdG9wYXJhZGlzZS5jb21cL1wifV19fV19fV19IiwiY29udmVyc2lvbkxhYmVsIiwiOU1KUkNOblp4TTRERUk2X24tWW8iXV0sInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJBVy0xMDk1MTg0MzcyNiIsInRhZ19pZCI6N30seyJmdW5jdGlvbiI6Il9fcmVwIiwidnRwX2NvbnRhaW5lcklkIjoiQVctMTA5NTE4NDM3MjYiLCJ2dHBfcmVtb3RlQ29uZmlnIjpbIm1hcCIsImVuaGFuY2VkX2NvbnZlcnNpb25zIixbIm1hcCJdXSwidGFnX2lkIjoxfSx7ImZ1bmN0aW9uIjoiX19jY2RfYWRzX2xhc3QiLCJwcmlvcml0eSI6MCwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkFXLTEwOTUxODQzNzI2IiwidGFnX2lkIjo2fV0sCiAgInByZWRpY2F0ZXMiOlt7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0uanMifSx7ImZ1bmN0aW9uIjoiX2VxIiwiYXJnMCI6WyJtYWNybyIsMF0sImFyZzEiOiJndG0uaW5pdCJ9XSwKICAicnVsZXMiOltbWyJpZiIsMF0sWyJhZGQiLDRdXSxbWyJpZiIsMV0sWyJhZGQiLDAsNSwzLDIsMV1dXQp9LAoicnVudGltZSI6WyBbNTAsIl9fY2NkX2Fkc19jb252X21hcmtpbmciLFs0NiwiYSJdLFsyMixbMzAsWzI4LFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl1dLFsyMCxbMTcsWzE3LFsxNSwiYSJdLCJjb252ZXJzaW9uUnVsZXMiXSwibGVuZ3RoIl0sMF1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY29weVByZUhpdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmV2YWx1YXRlQm9vbGVhbkV4cHJlc3Npb24iXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5wcm9jZXNzQXNOZXdFdmVudCJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJmIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZyIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiaCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJqIiwiY29udmVyc2lvbiJdLFsiZSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImYiXSwiQVEiXV1dLFsxNSwiaiJdXSxbMixbMTUsImsiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImYiXSwiQ1QiXV1dXSxbNDYsWzUzLFszNl1dXV0sWzUyLCJsIixbOCwicHJlSGl0IixbMTUsImsiXV1dLFs1MiwibSIsWzIsWzE1LCJrIl0sImdldEV2ZW50TmFtZSIsWzddXV0sWzIyLFsyMCxbMTUsIm0iXSxbMTcsWzE1LCJnIl0sIkFIIl1dLFs0NixbNTMsWzIsWzE1LCJrIl0sInNldEV2ZW50TmFtZSIsWzcsWzE3LFsxNSwiZyJdLCJBSyJdXV1dXV0sWzY1LCJuIixbMTcsWzE1LCJhIl0sImNvbnZlcnNpb25SdWxlcyJdLFs0NixbNTMsWzIyLFsiYyIsWzE3LFsxNSwibiJdLCJtYXRjaGluZ1J1bGVzIl0sWzE1LCJsIl1dLFs0NixbNTMsWzUyLCJvIixbImIiLFsxNSwiayJdXV0sWzIsWzE1LCJvIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJmIl0sIkFSIl0sWzE1LCJqIl1dXSxbMixbMTUsIm8iXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiZyJdLCJLRyJdLFsxNyxbMTUsIm4iXSwiY29udmVyc2lvbkxhYmVsIl1dXSxbMjIsWyJoIixbMTcsWzE1LCJpIl0sIkFEIl1dLFs0NixbNTMsWzIsWzE1LCJvIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJmIl0sIkNRIl0sZmFsc2VdXV1dXSxbImQiLFsxNSwibyJdXV1dXV1dXSxbMjIsWzIwLFsxNSwibSJdLFsxNyxbMTUsImciXSwiQUgiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0RXZlbnROYW1lIixbNyxbMTUsIm0iXV1dXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2Fkc19maXJzdCIsWzQ2LCJhIl0sWzUwLCJmIixbNDYsImciXSxbMixbMTUsImMiXSwiQSIsWzcsWzE1LCJnIl1dXSxbMixbMTUsImQiXSwiQSIsWzcsWzE1LCJnIl1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJnIl1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV90YXNrU2V0R3BwUGFyYW1zIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV90YXNrUGxhdGZvcm1EZXRlY3Rpb24iXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX3Rhc2tTZXRUZXN0SGl0UGFyYW1zIl1dLFsiYiIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXSxbNTEsIiIsWzcsImciXSxbImYiLFsxNSwiZyJdXV1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9hZHNfbGFzdCIsWzQ2LCJhIl0sWzUwLCJnIixbNDYsImgiXSxbMixbMTUsImYiXSwiQSIsWzcsWzE1LCJoIl1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfYWR3b3Jkc0hpdFR5cGUiXV0sWzUyLCJmIixbMTUsIl9fbW9kdWxlX3Rhc2tFbmFibGVFbmNyeXB0aW9uIl1dLFsiYiIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXSxbNTEsIiIsWzcsImgiXSxbImciLFsxNSwiaCJdXSxbNTIsImkiLFsyLFsxNSwiaCJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiYyJdLCJBUSJdXV1dLFsyMixbMjEsWzE1LCJpIl0sWzE3LFsxNSwiZSJdLCJEIl1dLFs0NixbNTMsWzIsWzE1LCJoIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImQiXSwiS0kiXSxbNDRdXV1dXV0sWzIyLFsxLFsyMCxbMTUsImkiXSxbMTcsWzE1LCJlIl0sIkQiXV0sWzI4LFsyLFsxNSwiaCJdLCJnZXRIaXREYXRhIixbNyxbMTcsWzE1LCJkIl0sIktHIl1dXV1dLFs0NixbNTMsWzIsWzE1LCJoIl0sImFib3J0IixbN11dXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX3BhZ2VfdmlldyIsWzQ2LCJhIl0sWzIyLFsyOCxbMTcsWzE1LCJhIl0sImhpc3RvcnlFdmVudHMiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2NjZEVtUGFnZVZpZXdBY3Rpdml0eSJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJnIixbMTcsWzE1LCJmIl0sIkMiXV0sWzUyLCJoIiwicGFnZV92aWV3Il0sWzUyLCJpIiwiaXNSZWdpc3RlcmVkIl0sWzUyLCJqIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdXSxbMjIsWyJiIixbMTUsImoiXSxbMTUsImciXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzIsWzE1LCJlIl0sIkEiLFs3LFsxNSwiaiJdXV0sWzIyLFsyLFsxNSwiZCJdLCJnZXRJdGVtIixbNyxbMTUsImkiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwiayIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuYWRkRGF0YUxheWVyRXZlbnRMaXN0ZW5lciJdXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uSGlzdG9yeUNoYW5nZSJdXSxbNTIsIm0iLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm4iLFsicmVxdWlyZSIsImludGVybmFsLnNlbmRHdGFnRXZlbnQiXV0sWzUyLCJvIixbMixbMTUsIm0iXSwiQSIsWzcsInBhZ2VfdmlldyJdXV0sWzUyLCJwIixbOCwiaW50ZXJ2YWwiLDEwMDAsInVzZVYyRXZlbnROYW1lIix0cnVlXV0sWzUyLCJxIixbImwiLFsxNSwicCJdXV0sWzIyLFsyOCxbMTUsInEiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzIsWzE1LCJkIl0sInNldEl0ZW0iLFs3LFsxNSwiaSJdLHRydWVdXSxbImsiLCJndG0uaGlzdG9yeUNoYW5nZS12MiIsWzUxLCIiLFs3LCJyIiwicyJdLFsicyJdLFs1MiwidCIsWzE2LFsxNSwiciJdLCJndG0ub2xkVXJsIl1dLFsyMixbMjAsWzE2LFsxNSwiciJdLCJndG0ubmV3VXJsIl0sWzE1LCJ0Il1dLFs0NixbMzZdXV0sWzUyLCJ1IixbMTYsWzE1LCJyIl0sImd0bS5oaXN0b3J5Q2hhbmdlU291cmNlIl1dLFsyMixbMSxbMSxbMjEsWzE1LCJ1Il0sInB1c2hTdGF0ZSJdLFsyMSxbMTUsInUiXSwicG9wc3RhdGUiXV0sWzIxLFsxNSwidSJdLCJyZXBsYWNlU3RhdGUiXV0sWzQ2LFs1MyxbMzZdXV1dLFs1MiwidiIsWzhdXSxbMjIsWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl0sWzQ2LFs1MyxbNDMsWzE1LCJ2Il0sInBhZ2VfbG9jYXRpb24iLFsxNixbMTUsInIiXSwiZ3RtLm5ld1VybCJdXSxbNDMsWzE1LCJ2Il0sInBhZ2VfcmVmZXJyZXIiLFsxNSwidCJdXV1dXSxbNTIsInciLFs4LCJldmVudElkIixbMTYsWzE1LCJyIl0sImd0bS51bmlxdWVFdmVudElkIl1dXSxbMjIsWzIxLFsxNyxbMTUsImEiXSwiZGVmZXJQYWdlVmlldyJdLGZhbHNlXSxbNDYsWzUzLFs0MyxbMTUsInciXSwiZGVmZXJyYWJsZSIsdHJ1ZV1dXV0sWzIsWzE1LCJtIl0sIkIiLFs3LFsxNSwidyJdXV0sWyJuIixbMTUsIm8iXSxbMTUsImgiXSxbMTUsInYiXSxbMTUsInciXV1dLFsxNSwicSJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19lIixbNDYsImEiXSxbMzYsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsicmVxdWlyZSIsImludGVybmFsLmdldEV2ZW50RGF0YSJdXSxbIiQwIiwiZXZlbnQiXV1dXQogLFs1MCwiX19vZ3RfMXBfZGF0YV92MiIsWzQ2LCJhIl0sWzUwLCJwIixbNDYsInIiLCJzIiwidCIsInUiXSxbMjIsWzIwLFsxNixbMTUsInMiXSwidHlwZSJdLFsxNSwidCJdXSxbNDYsWzUzLFsyMixbMjgsWzE1LCJyIl1dLFs0NixbNTMsWzMsInIiLFs4XV1dXV0sWzIyLFsyOCxbMTYsWzE1LCJyIl0sWzE1LCJ0Il1dXSxbNDYsWzUzLFs0MyxbMTUsInIiXSxbMTUsInQiXSxbMTYsWzE1LCJzIl0sInVzZXJEYXRhIl1dLFs1MiwidiIsWzgsIm1vZGUiLCJhIl1dLFsyMixbMTYsWzE1LCJzIl0sInRhZ05hbWUiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwibG9jYXRpb24iLFsxNixbMTUsInMiXSwidGFnTmFtZSJdXV1dXSxbMjIsWzE2LFsxNSwicyJdLCJxdWVyeVNlbGVjdG9yIl0sWzQ2LFs1MyxbNDMsWzE1LCJ2Il0sInNlbGVjdG9yIixbMTYsWzE1LCJzIl0sInF1ZXJ5U2VsZWN0b3IiXV1dXV0sWzQzLFsxNSwidSJdLFsxNSwidCJdLFsxNSwidiJdXV1dXV1dXSxbMzYsWzE1LCJyIl1dXSxbNTAsInEiLFs0NiwiciIsInMiLCJ0Il0sWzIyLFsyOCxbMTYsWzE1LCJhIl0sWzE1LCJ0Il1dXSxbNDYsWzM2XV1dLFs0MyxbMTUsInIiXSxbMTUsInMiXSxbOCwidmFsdWUiLFsxNixbMTUsImEiXSxbMTUsInQiXV1dXV0sWzIyLFsyOCxbMTcsWzE1LCJhIl0sImlzRW5hYmxlZCJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImciLFsicmVxdWlyZSIsImludGVybmFsLmRldGVjdFVzZXJQcm92aWRlZERhdGEiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJxdWVyeVBlcm1pc3Npb24iXV0sWzUyLCJpIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiayIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsIm0iLFsiYyIsWzE3LFsxNSwiZSJdLCJBVCJdXV0sWzUyLCJuIixbMzAsWyJmIl0sWzddXV0sWzUyLCJvIixbOCwiZW5hYmxlX2NvZGUiLHRydWVdXSxbMjIsWzE3LFsxNSwiYSJdLCJpc0F1dG9FbmFibGVkIl0sWzQ2LFs1MyxbNTIsInIiLFs3XV0sWzIyLFsxLFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzQ2LFs1MyxbNTMsWzQxLCJ1Il0sWzMsInUiLDBdLFs2MyxbNywidSJdLFsyMyxbMTUsInUiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzMzLFsxNSwidSJdLFszLCJ1IixbMCxbMTUsInUiXSwxXV1dLFs0NixbNTMsWzUyLCJ2IixbMTcsWzE2LFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTUsInUiXV0sImV4Y2x1c2lvblNlbGVjdG9yIl1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFsyLFsxNSwiciJdLCJwdXNoIixbNyxbMTUsInYiXV1dXV1dXV1dXV1dXSxbNTIsInMiLFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl1dLFs1MiwidCIsWzM5LFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl0sWzE3LFsxNSwiYSJdLCJhdXRvRW1haWxFbmFibGVkIl0sdHJ1ZV1dLFs0MyxbMTUsIm8iXSwiYXV0b19kZXRlY3QiLFs4LCJlbWFpbCIsWzE1LCJ0Il0sInBob25lIixbMSxbMTUsInMiXSxbMTcsWzE1LCJhIl0sImF1dG9QaG9uZUVuYWJsZWQiXV0sImFkZHJlc3MiLFsxLFsxNSwicyJdLFsxNyxbMTUsImEiXSwiYXV0b0FkZHJlc3NFbmFibGVkIl1dLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIixbMTUsInIiXV1dXV1dLFsyMixbMTcsWzE1LCJhIl0sImlzTWFudWFsRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJyIixbOF1dLFsyMixbMTcsWzE1LCJhIl0sIm1hbnVhbEVtYWlsRW5hYmxlZCJdLFs0NixbNTMsWyJxIixbMTUsInIiXSwiZW1haWwiLCJlbWFpbFZhbHVlIl1dXV0sWzIyLFsxNyxbMTUsImEiXSwibWFudWFsUGhvbmVFbmFibGVkIl0sWzQ2LFs1MyxbInEiLFsxNSwiciJdLCJwaG9uZSIsInBob25lVmFsdWUiXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJtYW51YWxBZGRyZXNzRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJzIixbOF1dLFsicSIsWzE1LCJzIl0sImZpcnN0X25hbWUiLCJmaXJzdE5hbWVWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImxhc3RfbmFtZSIsImxhc3ROYW1lVmFsdWUiXSxbInEiLFsxNSwicyJdLCJzdHJlZXQiLCJzdHJlZXRWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNpdHkiLCJjaXR5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJyZWdpb24iLCJyZWdpb25WYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNvdW50cnkiLCJjb3VudHJ5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJwb3N0YWxfY29kZSIsInBvc3RhbENvZGVWYWx1ZSJdLFs0MyxbMTUsInIiXSwibmFtZV9hbmRfYWRkcmVzcyIsWzcsWzE1LCJzIl1dXV1dXSxbNDMsWzE1LCJvIl0sInNlbGVjdG9ycyIsWzE1LCJyIl1dXV1dLFs2NSwiciIsWzE1LCJuIl0sWzQ2LFs1MyxbImkiLFsxNSwiciJdLCJ1c2VyX2RhdGFfc2V0dGluZ3MiLFsxNSwibyJdXSxbNTIsInMiLFsxNixbMTUsIm8iXSwiYXV0b19kZXRlY3QiXV0sWzIyLFsyOCxbMTUsInMiXV0sWzQ2LFs1MyxbNl1dXV0sWzUyLCJ0IixbNTEsIiIsWzcsInUiXSxbNTIsInYiLFsyLFsxNSwidSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWCJdXV1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFszNixbMTUsInYiXV1dXV0sWzUyLCJ3IixbImMiLFsxNyxbMTUsImUiXSwiQlYiXV1dLFs1MiwieCIsWyJjIixbMTcsWzE1LCJlIl0sIkNJIl1dXSxbNDEsInkiXSxbMjIsWyJoIiwiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iXSxbNDYsWzUzLFszLCJ5IixbImciLFs4LCJleGNsdWRlRWxlbWVudFNlbGVjdG9ycyIsWzE2LFsxNSwicyJdLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIl0sImZpZWxkRmlsdGVycyIsWzgsImVtYWlsIixbMTYsWzE1LCJzIl0sImVtYWlsIl0sInBob25lIixbMTYsWzE1LCJzIl0sInBob25lIl0sImFkZHJlc3MiLFsxNixbMTUsInMiXSwiYWRkcmVzcyJdXSwiaW5jbHVkZVNlbGVjdG9yIixbMTUsInciXSwicmVhZEZyb21EYXRhTGF5ZXIiLFsxNSwieCJdXV1dXV1dLFs1MiwieiIsWzEsWzE1LCJ5Il0sWzE2LFsxNSwieSJdLCJlbGVtZW50cyJdXV0sWzUyLCJhQSIsWzhdXSxbNTIsImFCIixbOF1dLFsyMixbMSxbMTUsInoiXSxbMTgsWzE3LFsxNSwieiJdLCJsZW5ndGgiXSwwXV0sWzQ2LFs1MyxbNDEsImFDIl0sWzQxLCJhRCJdLFszLCJhRCIsWzhdXSxbNTMsWzQxLCJhRSJdLFszLCJhRSIsMF0sWzYzLFs3LCJhRSJdLFsyMyxbMTUsImFFIl0sWzE3LFsxNSwieiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiYUUiXSxbMywiYUUiLFswLFsxNSwiYUUiXSwxXV1dLFs0NixbNTMsWzUyLCJhRiIsWzE2LFsxNSwieiJdLFsxNSwiYUUiXV1dLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwiZW1haWwiLFsxNSwiYUIiXV0sWzIyLFsiYyIsWzE3LFsxNSwiZSJdLCJCTyJdXSxbNDYsWzUzLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwicGhvbmVfbnVtYmVyIixbMTUsImFCIl1dLFszLCJhQyIsWyJwIixbMTUsImFDIl0sWzE1LCJhRiJdLCJmaXJzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwibGFzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwiY291bnRyeSIsWzE1LCJhRCJdXV0sWzMsImFDIixbInAiLFsxNSwiYUMiXSxbMTUsImFGIl0sInBvc3RhbF9jb2RlIixbMTUsImFEIl1dXV1dXV1dXV0sWzIyLFsxLFsxNSwiYUMiXSxbMjgsWzE2LFsxNSwiYUEiXSwiYWRkcmVzcyJdXV0sWzQ2LFs1MyxbNDMsWzE1LCJhQSJdLCJhZGRyZXNzIixbMTUsImFDIl1dLFsyMixbMTUsIm0iXSxbNDYsWzUzLFs0MyxbMTYsWzE1LCJhQSJdLCJhZGRyZXNzIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUQiXV1dXV1dXV1dXV0sWzIyLFsxLFsxNSwieSJdLFsxNSwieCJdXSxbNDYsWzUzLFs1MiwiYUMiLFsxNixbMTUsInkiXSwiZGF0YUxheWVyU2VhcmNoVGltZSJdXSxbNTIsImFEIixbMTYsWzE1LCJ5Il0sImRhdGFMYXllclNlYXJjaENvdW50Il1dLFsyLFsxNSwidSJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImwiXSwiRlQiXSxbOCwiZGxzdCIsWzE1LCJhQyJdLCJkbHNjIixbMTUsImFEIl1dXV1dXV0sWzIyLFsxNSwibSJdLFs0NixbNTMsWzIyLFszMCxbMTYsWzE1LCJhQSJdLCJlbWFpbCJdLFsxNixbMTUsImFBIl0sInBob25lX251bWJlciJdXSxbNDYsWzUzLFs0MyxbMTUsImFBIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUIiXV1dXV1dXV0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJrIl0sIkNYIl0sWzE1LCJhQSJdXV0sWzM2LFsxNSwiYUEiXV1dXSxbImoiLFsxNSwiciJdLFs1MSwiIixbNywidSJdLFsyLFsxNSwidSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWSJdLFsxNSwidCJdXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19yZXAiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJEZXN0aW5hdGlvbiJdXSxbMjIsWzI4LFsiYiIsWzE3LFsxNSwiYSJdLCJjb250YWluZXJJZCJdLFsxNyxbMTUsImEiXSwicmVtb3RlQ29uZmlnIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MiwiX19tb2R1bGVfYWR3b3Jkc0hpdFR5cGUiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJjb252ZXJzaW9uIl0sWzUyLCJjIiwiZmxvb2RsaWdodCJdLFs1MiwiZCIsImdhX2NvbnZlcnNpb24iXSxbNTIsImUiLCJwYWdlX3ZpZXciXSxbNTIsImYiLCJyZW1hcmtldGluZyJdLFs1MiwiZyIsInVzZXJfZGF0YV9sZWFkIl0sWzUyLCJoIiwidXNlcl9kYXRhX3dlYiJdLFszNixbOCwiRCIsWzE1LCJiIl0sIkUiLFsxNSwiYyJdLCJGIixbMTUsImQiXSwiSCIsWzE1LCJlIl0sIkkiLFsxNSwiZiJdLCJKIixbMTUsImciXSwiSyIsWzE1LCJoIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9ndGFnU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiYWRfcGVyc29uYWxpemF0aW9uIl0sWzUyLCJjIiwiYWRfc3RvcmFnZSJdLFs1MiwiZCIsImFkX3VzZXJfZGF0YSJdLFs1MiwiZSIsImNvbnNlbnRfdXBkYXRlZCJdLFs1MiwiZiIsImFwcF9yZW1vdmUiXSxbNTIsImciLCJhcHBfc3RvcmVfcmVmdW5kIl0sWzUyLCJoIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9jYW5jZWwiXSxbNTIsImkiLCJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NvbnZlcnQiXSxbNTIsImoiLCJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX3JlbmV3Il0sWzUyLCJrIiwiY29udmVyc2lvbiJdLFs1MiwibCIsInB1cmNoYXNlIl0sWzUyLCJtIiwiZmlyc3Rfb3BlbiJdLFs1MiwibiIsImZpcnN0X3Zpc2l0Il0sWzUyLCJvIiwiZ3RhZy5jb25maWciXSxbNTIsInAiLCJpbl9hcHBfcHVyY2hhc2UiXSxbNTIsInEiLCJwYWdlX3ZpZXciXSxbNTIsInIiLCJzZXNzaW9uX3N0YXJ0Il0sWzUyLCJzIiwidXNlcl9lbmdhZ2VtZW50Il0sWzUyLCJ0IiwiYWRzX2RhdGFfcmVkYWN0aW9uIl0sWzUyLCJ1IiwiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uX3NpZ25hbHMiXSxbNTIsInYiLCJhbGxvd19jdXN0b21fc2NyaXB0cyJdLFs1MiwidyIsImFsbG93X2VuaGFuY2VkX2NvbnZlcnNpb25zIl0sWzUyLCJ4IiwiYWxsb3dfZ29vZ2xlX3NpZ25hbHMiXSxbNTIsInkiLCJhdWlkIl0sWzUyLCJ6IiwiYXdfcmVtYXJrZXRpbmdfb25seSJdLFs1MiwiYUEiLCJkaXNjb3VudCJdLFs1MiwiYUIiLCJhd19mZWVkX2NvdW50cnkiXSxbNTIsImFDIiwiYXdfZmVlZF9sYW5ndWFnZSJdLFs1MiwiYUQiLCJpdGVtcyJdLFs1MiwiYUUiLCJhd19tZXJjaGFudF9pZCJdLFs1MiwiYUYiLCJhd19iYXNrZXRfdHlwZSJdLFs1MiwiYUciLCJjbGllbnRfaWQiXSxbNTIsImFIIiwiY29udmVyc2lvbl9jb29raWVfcHJlZml4Il0sWzUyLCJhSSIsImNvbnZlcnNpb25faWQiXSxbNTIsImFKIiwiY29udmVyc2lvbl9saW5rZXIiXSxbNTIsImFLIiwiY29udmVyc2lvbl9hcGkiXSxbNTIsImFMIiwiY29va2llX2RlcHJlY2F0aW9uIl0sWzUyLCJhTSIsImNvb2tpZV9leHBpcmVzIl0sWzUyLCJhTiIsImNvb2tpZV9wcmVmaXgiXSxbNTIsImFPIiwiY29va2llX3VwZGF0ZSJdLFs1MiwiYVAiLCJjb3VudHJ5Il0sWzUyLCJhUSIsImN1cnJlbmN5Il0sWzUyLCJhUiIsImN1c3RvbWVyX2xpZmV0aW1lX3ZhbHVlIl0sWzUyLCJhUyIsImN1c3RvbWVyX3R5cGUiXSxbNTIsImFUIiwiZGVidWdfbW9kZSJdLFs1MiwiYVUiLCJzaGlwcGluZyJdLFs1MiwiYVYiLCJlbmdhZ2VtZW50X3RpbWVfbXNlYyJdLFs1MiwiYVciLCJlc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZSJdLFs1MiwiYVgiLCJldmVudF9kZXZlbG9wZXJfaWRfc3RyaW5nIl0sWzUyLCJhWSIsImV2ZW50X2lkIl0sWzUyLCJhWiIsImV2ZW50Il0sWzUyLCJiQSIsIl8mYWUiXSxbNTIsImJCIiwiZXZlbnRfdGltZW91dCJdLFs1MiwiYkMiLCJleHRfY2xpZW50X2lkIl0sWzUyLCJiRCIsImZpcnN0X3BhcnR5X2NvbGxlY3Rpb24iXSxbNTIsImJFIiwibWF0Y2hfaWQiXSxbNTIsImJGIiwiZ2Rwcl9hcHBsaWVzIl0sWzUyLCJiRyIsIl9ndF9tZXRhZGF0YSJdLFs1MiwiYkgiLCJnb29nbGVfYW5hbHlzaXNfcGFyYW1zIl0sWzUyLCJiSSIsIl9nb29nbGVfbmciXSxbNTIsImJKIiwiX29ubyJdLFs1MiwiYksiLCJncHBfc2lkIl0sWzUyLCJiTCIsImdwcF9zdHJpbmciXSxbNTIsImJNIiwiZ3NhX2V4cGVyaW1lbnRfaWQiXSxbNTIsImJOIiwiZ3RhZ19ldmVudF9mZWF0dXJlX3VzYWdlIl0sWzUyLCJiTyIsImlmcmFtZV9zdGF0ZSJdLFs1MiwiYlAiLCJpZ25vcmVfcmVmZXJyZXIiXSxbNTIsImJRIiwiaXNfcGFzc3Rocm91Z2giXSxbNTIsImJSIiwibGFuZ3VhZ2UiXSxbNTIsImJTIiwibWVyY2hhbnRfZmVlZF9sYWJlbCJdLFs1MiwiYlQiLCJtZXJjaGFudF9mZWVkX2xhbmd1YWdlIl0sWzUyLCJiVSIsIm1lcmNoYW50X2lkIl0sWzUyLCJiViIsIm5ld19jdXN0b21lciJdLFs1MiwiYlciLCJwYWdlX2hvc3RuYW1lIl0sWzUyLCJiWCIsInBhZ2VfcGF0aCJdLFs1MiwiYlkiLCJwYWdlX3JlZmVycmVyIl0sWzUyLCJiWiIsInBhZ2VfdGl0bGUiXSxbNTIsImNBIiwiX3BsYXRpbnVtX3JlcXVlc3Rfc3RhdHVzIl0sWzUyLCJjQiIsInF1YW50aXR5Il0sWzUyLCJjQyIsInJlc3RyaWN0ZWRfZGF0YV9wcm9jZXNzaW5nIl0sWzUyLCJjRCIsInNjcmVlbl9yZXNvbHV0aW9uIl0sWzUyLCJjRSIsInNlbmRfcGFnZV92aWV3Il0sWzUyLCJjRiIsInNlcnZlcl9jb250YWluZXJfM3BfZW5yaWNobWVudCJdLFs1MiwiY0ciLCJzZXJ2ZXJfY29udGFpbmVyX3VybCJdLFs1MiwiY0giLCJzZXNzaW9uX2R1cmF0aW9uIl0sWzUyLCJjSSIsInNlc3Npb25fZW5nYWdlZF90aW1lIl0sWzUyLCJjSiIsInNlc3Npb25faWQiXSxbNTIsImNLIiwiX3NoYXJlZF91c2VyX2lkIl0sWzUyLCJjTCIsImRlbGl2ZXJ5X3Bvc3RhbF9jb2RlIl0sWzUyLCJjTSIsInRlc3Rvbmx5Il0sWzUyLCJjTiIsInRvcG1vc3RfdXJsIl0sWzUyLCJjTyIsInRyYW5zYWN0aW9uX2lkIl0sWzUyLCJjUCIsInRyYW5zYWN0aW9uX2lkX3NvdXJjZSJdLFs1MiwiY1EiLCJ0cmFuc3BvcnRfdXJsIl0sWzUyLCJjUiIsInVwZGF0ZSJdLFs1MiwiY1MiLCJfdXNlcl9hZ2VudF9hcmNoaXRlY3R1cmUiXSxbNTIsImNUIiwiX3VzZXJfYWdlbnRfYml0bmVzcyJdLFs1MiwiY1UiLCJfdXNlcl9hZ2VudF9mdWxsX3ZlcnNpb25fbGlzdCJdLFs1MiwiY1YiLCJfdXNlcl9hZ2VudF9tb2JpbGUiXSxbNTIsImNXIiwiX3VzZXJfYWdlbnRfbW9kZWwiXSxbNTIsImNYIiwiX3VzZXJfYWdlbnRfcGxhdGZvcm0iXSxbNTIsImNZIiwiX3VzZXJfYWdlbnRfcGxhdGZvcm1fdmVyc2lvbiJdLFs1MiwiY1oiLCJfdXNlcl9hZ2VudF93b3c2NCJdLFs1MiwiZEEiLCJ1c2VyX2RhdGEiXSxbNTIsImRCIiwidXNlcl9kYXRhX2F1dG9fbGF0ZW5jeSJdLFs1MiwiZEMiLCJ1c2VyX2RhdGFfYXV0b19tZXRhIl0sWzUyLCJkRCIsInVzZXJfZGF0YV9hdXRvX211bHRpIl0sWzUyLCJkRSIsInVzZXJfZGF0YV9hdXRvX3NlbGVjdG9ycyJdLFs1MiwiZEYiLCJ1c2VyX2RhdGFfYXV0b19zdGF0dXMiXSxbNTIsImRHIiwidXNlcl9kYXRhX21vZGUiXSxbNTIsImRIIiwidXNlcl9pZCJdLFs1MiwiZEkiLCJ1c2VyX3Byb3BlcnRpZXMiXSxbNTIsImRKIiwidXNfcHJpdmFjeV9zdHJpbmciXSxbNTIsImRLIiwidmFsdWUiXSxbNTIsImRMIiwiX2ZwbV9wYXJhbWV0ZXJzIl0sWzUyLCJkTSIsIl9ob3N0X25hbWUiXSxbNTIsImROIiwiX2luX3BhZ2VfY29tbWFuZCJdLFs1MiwiZE8iLCJfbWVhc3VyZW1lbnRfdHlwZSJdLFs1MiwiZFAiLCJub25fcGVyc29uYWxpemVkX2FkcyJdLFs1MiwiZFEiLCJjb252ZXJzaW9uX2xhYmVsIl0sWzUyLCJkUiIsInBhZ2VfbG9jYXRpb24iXSxbNTIsImRTIiwiX2V4dHJhY3RlZF9kYXRhIl0sWzUyLCJkVCIsImdsb2JhbF9kZXZlbG9wZXJfaWRfc3RyaW5nIl0sWzUyLCJkVSIsInRjX3ByaXZhY3lfc3RyaW5nIl0sWzM2LFs4LCJBIixbMTUsImIiXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJGIixbMTUsImUiXSwiSSIsWzE1LCJmIl0sIkoiLFsxNSwiZyJdLCJLIixbMTUsImgiXSwiTCIsWzE1LCJpIl0sIk0iLFsxNSwiaiJdLCJPIixbMTUsImsiXSwiQUEiLFsxNSwibCJdLCJBRiIsWzE1LCJtIl0sIkFHIixbMTUsIm4iXSwiQUgiLFsxNSwibyJdLCJBSiIsWzE1LCJwIl0sIkFLIixbMTUsInEiXSwiQU0iLFsxNSwiciJdLCJBUSIsWzE1LCJzIl0sIkJDIixbMTUsInQiXSwiQkoiLFsxNSwidSJdLCJCSyIsWzE1LCJ2Il0sIkJNIixbMTUsInciXSwiQk4iLFsxNSwieCJdLCJCVCIsWzE1LCJ5Il0sIkJYIixbMTUsInoiXSwiQlkiLFsxNSwiYUEiXSwiQloiLFsxNSwiYUIiXSwiQ0EiLFsxNSwiYUMiXSwiQ0IiLFsxNSwiYUQiXSwiQ0MiLFsxNSwiYUUiXSwiQ0QiLFsxNSwiYUYiXSwiQ0wiLFsxNSwiYUciXSwiQ1EiLFsxNSwiYUgiXSwiQ1IiLFsxNSwiYUkiXSwiS0ciLFsxNSwiZFEiXSwiQ1MiLFsxNSwiYUoiXSwiQ1UiLFsxNSwiYUsiXSwiQ1ciLFsxNSwiYUwiXSwiQ1kiLFsxNSwiYU0iXSwiREMiLFsxNSwiYU4iXSwiREQiLFsxNSwiYU8iXSwiREUiLFsxNSwiYVAiXSwiREYiLFsxNSwiYVEiXSwiREciLFsxNSwiYVIiXSwiREgiLFsxNSwiYVMiXSwiRE4iLFsxNSwiYVQiXSwiRUEiLFsxNSwiYVUiXSwiRUMiLFsxNSwiYVYiXSwiRUciLFsxNSwiYVciXSwiRUoiLFsxNSwiYVgiXSwiRUsiLFsxNSwiYVkiXSwiRU4iLFsxNSwiYVoiXSwiRU8iLFsxNSwiYkEiXSwiRVEiLFsxNSwiYkIiXSwiS0kiLFsxNSwiZFMiXSwiRVUiLFsxNSwiYkMiXSwiRVciLFsxNSwiYkQiXSwiRkUiLFsxNSwiYkUiXSwiRk8iLFsxNSwiYkYiXSwiRlAiLFsxNSwiYkciXSwiS0oiLFsxNSwiZFQiXSwiRlQiLFsxNSwiYkgiXSwiRlUiLFsxNSwiYkkiXSwiRlYiLFsxNSwiYkoiXSwiRlkiLFsxNSwiYksiXSwiRloiLFsxNSwiYkwiXSwiR0IiLFsxNSwiYk0iXSwiR0MiLFsxNSwiYk4iXSwiR0UiLFsxNSwiYk8iXSwiR0YiLFsxNSwiYlAiXSwiR0siLFsxNSwiYlEiXSwiR00iLFsxNSwiYlIiXSwiR1QiLFsxNSwiYlMiXSwiR1UiLFsxNSwiYlQiXSwiR1YiLFsxNSwiYlUiXSwiR1oiLFsxNSwiYlYiXSwiSEMiLFsxNSwiYlciXSwiS0giLFsxNSwiZFIiXSwiSEQiLFsxNSwiYlgiXSwiSEUiLFsxNSwiYlkiXSwiSEYiLFsxNSwiYloiXSwiSE4iLFsxNSwiY0EiXSwiSFAiLFsxNSwiY0IiXSwiSFQiLFsxNSwiY0MiXSwiSFgiLFsxNSwiY0QiXSwiSUEiLFsxNSwiY0UiXSwiSUMiLFsxNSwiY0YiXSwiSUQiLFsxNSwiY0ciXSwiSUYiLFsxNSwiY0giXSwiSUgiLFsxNSwiY0kiXSwiSUkiLFsxNSwiY0oiXSwiSUsiLFsxNSwiY0siXSwiSUwiLFsxNSwiY0wiXSwiS0siLFsxNSwiZFUiXSwiSVAiLFsxNSwiY00iXSwiSVIiLFsxNSwiY04iXSwiSVUiLFsxNSwiY08iXSwiSVYiLFsxNSwiY1AiXSwiSVciLFsxNSwiY1EiXSwiSVkiLFsxNSwiY1IiXSwiSkIiLFsxNSwiY1MiXSwiSkMiLFsxNSwiY1QiXSwiSkQiLFsxNSwiY1UiXSwiSkUiLFsxNSwiY1YiXSwiSkYiLFsxNSwiY1ciXSwiSkciLFsxNSwiY1giXSwiSkgiLFsxNSwiY1kiXSwiSkkiLFsxNSwiY1oiXSwiSkoiLFsxNSwiZEEiXSwiSksiLFsxNSwiZEIiXSwiSkwiLFsxNSwiZEMiXSwiSk0iLFsxNSwiZEQiXSwiSk4iLFsxNSwiZEUiXSwiSk8iLFsxNSwiZEYiXSwiSlAiLFsxNSwiZEciXSwiSlIiLFsxNSwiZEgiXSwiSlMiLFsxNSwiZEkiXSwiSlUiLFsxNSwiZEoiXSwiSlYiLFsxNSwiZEsiXSwiSlgiLFsxNSwiZEwiXSwiSlkiLFsxNSwiZE0iXSwiSloiLFsxNSwiZE4iXSwiS0MiLFsxNSwiZE8iXSwiS0QiLFsxNSwiZFAiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiYWJvcnRfd2l0aG91dF9mYWlsIl0sWzUyLCJjIiwiYWNjZXB0X2J5X2RlZmF1bHQiXSxbNTIsImQiLCJhbGxvd19hZF9wZXJzb25hbGl6YXRpb24iXSxbNTIsImUiLCJjb25zZW50X3N0YXRlIl0sWzUyLCJmIiwiY29uc2VudF91cGRhdGVkIl0sWzUyLCJnIiwiY29udmVyc2lvbl9saW5rZXJfZW5hYmxlZCJdLFs1MiwiaCIsImNvbnZlcnNpb25fbWFya2luZ19jYWxsZWQiXSxbNTIsImkiLCJjb29raWVfb3B0aW9ucyJdLFs1MiwiaiIsImRlZHVwZV9pZCJdLFs1MiwiayIsImVtX2V2ZW50Il0sWzUyLCJsIiwiZXZlbnRfcHJvdmVuYW5jZSJdLFs1MiwibSIsImV2ZW50X3NvdXJjZSJdLFs1MiwibiIsImV2ZW50X3N0YXJ0X3RpbWVzdGFtcF9tcyJdLFs1MiwibyIsImV2ZW50X3VzYWdlIl0sWzUyLCJwIiwiZXh0cmFfdGFnX2V4cGVyaW1lbnRfaWRzIl0sWzUyLCJxIiwiZm9ybV9ldmVudF9jYW5jZWxlZCJdLFs1MiwiciIsImdhNF9jb2xsZWN0aW9uX3N1YmRvbWFpbiJdLFs1MiwicyIsImd0bV9leHRyYWN0ZWRfZGF0YSJdLFs1MiwidCIsImhhbmRsZV9pbnRlcm5hbGx5Il0sWzUyLCJ1IiwiaGFzX2dhX2NvbnZlcnNpb25fY29uc2VudHMiXSxbNTIsInYiLCJoaXRfdHlwZSJdLFs1MiwidyIsImhpdF90eXBlX292ZXJyaWRlIl0sWzUyLCJ4IiwiaWdub3JlX2R1cGVfY29uZmlnIl0sWzUyLCJ5IiwiaXNfY29udmVyc2lvbiJdLFs1MiwieiIsImlzX2V4dGVybmFsX2V2ZW50Il0sWzUyLCJhQSIsImlzX2ZpcnN0X3Zpc2l0Il0sWzUyLCJhQiIsImlzX2ZpcnN0X3Zpc2l0X2NvbnZlcnNpb24iXSxbNTIsImFDIiwiaXNfZnBtX2VuY3J5cHRpb24iXSxbNTIsImFEIiwiaXNfZnBtX3NwbGl0Il0sWzUyLCJhRSIsImlzX2djcF9icm93c2VyIl0sWzUyLCJhRiIsImlzX2dvb2dsZV9tZWFzdXJlbWVudF9hbGxvd2VkIl0sWzUyLCJhRyIsImlzX3NlcnZlcl9zaWRlX2Rlc3RpbmF0aW9uIl0sWzUyLCJhSCIsImlzX3Nlc3Npb25fc3RhcnQiXSxbNTIsImFJIiwiaXNfc2Vzc2lvbl9zdGFydF9jb252ZXJzaW9uIl0sWzUyLCJhSiIsImlzX3NndG1fZ2FfYWRzX2NvbnZlcnNpb25fc3R1ZHlfY29udHJvbF9ncm91cCJdLFs1MiwiYUsiLCJpc19zZ3RtX3ByZWhpdCJdLFs1MiwiYUwiLCJpc19zcGxpdF9jb252ZXJzaW9uIl0sWzUyLCJhTSIsImlzX3N5biJdLFs1MiwiYU4iLCJpc190ZXN0X2V2ZW50Il0sWzUyLCJhTyIsInByZWhpdF9mb3JfcmV0cnkiXSxbNTIsImFQIiwicmVkYWN0X2Fkc19kYXRhIl0sWzUyLCJhUSIsInJlZGFjdF9jbGlja19pZHMiXSxbNTIsImFSIiwic2VuZF9jY21fcGFyYWxsZWxfcGluZyJdLFs1MiwiYVMiLCJzZW5kX3VzZXJfZGF0YV9oaXQiXSxbNTIsImFUIiwic3BlY3VsYXRpdmUiXSxbNTIsImFVIiwic3luX29yX21vZCJdLFs1MiwiYVYiLCJ0cmFuc2llbnRfZWNzaWQiXSxbNTIsImFXIiwidXNlcl9kYXRhIl0sWzUyLCJhWCIsInVzZXJfZGF0YV9mcm9tX2F1dG9tYXRpYyJdLFs1MiwiYVkiLCJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWNfZ2V0dGVyIl0sWzUyLCJhWiIsInVzZXJfZGF0YV9mcm9tX2NvZGUiXSxbNTIsImJBIiwidXNlcl9kYXRhX2Zyb21fbWFudWFsIl0sWzM2LFs4LCJBIixbMTUsImIiXSwiQiIsWzE1LCJjIl0sIkYiLFsxNSwiZCJdLCJNIixbMTUsImUiXSwiTiIsWzE1LCJmIl0sIk8iLFsxNSwiZyJdLCJQIixbMTUsImgiXSwiUSIsWzE1LCJpIl0sIlMiLFsxNSwiaiJdLCJUIixbMTUsImsiXSwiWiIsWzE1LCJsIl0sIkFBIixbMTUsIm0iXSwiQUIiLFsxNSwibiJdLCJBQyIsWzE1LCJvIl0sIkFEIixbMTUsInAiXSwiQUoiLFsxNSwicSJdLCJBSyIsWzE1LCJyIl0sIkFOIixbMTUsInMiXSwiQU8iLFsxNSwidCJdLCJBUCIsWzE1LCJ1Il0sIkFRIixbMTUsInYiXSwiQVIiLFsxNSwidyJdLCJBUyIsWzE1LCJ4Il0sIkFWIixbMTUsInkiXSwiQVkiLFsxNSwieiJdLCJBWiIsWzE1LCJhQSJdLCJCQSIsWzE1LCJhQiJdLCJCQyIsWzE1LCJhQyJdLCJCRCIsWzE1LCJhRCJdLCJCRSIsWzE1LCJhRSJdLCJCRiIsWzE1LCJhRiJdLCJCSyIsWzE1LCJhRyJdLCJCTCIsWzE1LCJhSCJdLCJCTSIsWzE1LCJhSSJdLCJCTiIsWzE1LCJhSiJdLCJCTyIsWzE1LCJhSyJdLCJCUSIsWzE1LCJhTCJdLCJCUiIsWzE1LCJhTSJdLCJCUyIsWzE1LCJhTiJdLCJCWSIsWzE1LCJhTyJdLCJDQiIsWzE1LCJhUCJdLCJDQyIsWzE1LCJhUSJdLCJDRSIsWzE1LCJhUiJdLCJDTiIsWzE1LCJhUyJdLCJDUSIsWzE1LCJhVCJdLCJDVCIsWzE1LCJhVSJdLCJDVSIsWzE1LCJhViJdLCJDVyIsWzE1LCJhVyJdLCJDWCIsWzE1LCJhWCJdLCJDWSIsWzE1LCJhWSJdLCJDWiIsWzE1LCJhWiJdLCJEQSIsWzE1LCJiQSJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZmVhdHVyZUZsYWdzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiw0NV0sWzUyLCJjIiw0Nl0sWzUyLCJkIiw0N10sWzUyLCJlIiwxNzRdLFs1MiwiZiIsMjc2XSxbMzYsWzgsIkYiLFsxNSwiYiJdLCJHIixbMTUsImMiXSwiSCIsWzE1LCJkIl0sIlYiLFsxNSwiZSJdLCJBRCIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9mZWF0dXJlcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsNDI1XSxbNTIsImMiLDQzNV0sWzUyLCJkIiw0ODhdLFs1MiwiZSIsNDg5XSxbNTIsImYiLDQ5OF0sWzUyLCJnIiw1MDNdLFs1MiwiaCIsNTA0XSxbNTIsImkiLDUwNl0sWzUyLCJqIiw1MjNdLFs1MiwiayIsNTMyXSxbNTIsImwiLDU1M10sWzUyLCJtIiw1NjhdLFs1MiwibiIsNTc3XSxbNTIsIm8iLDU4MV0sWzUyLCJwIiw1ODNdLFs1MiwicSIsNTkyXSxbNTIsInIiLDU5NF0sWzUyLCJzIiw1OTldLFszNixbOCwiQVYiLFsxNSwiayJdLCJBRCIsWzE1LCJkIl0sIkNJIixbMTUsInEiXSwiQlYiLFsxNSwibiJdLCJCTyIsWzE1LCJtIl0sIkNLIixbMTUsInIiXSwiQ1AiLFsxNSwicyJdLCJBTSIsWzE1LCJnIl0sIkJaIixbMTUsIm8iXSwiQVQiLFsxNSwiaiJdLCJBRSIsWzE1LCJlIl0sIkFOIixbMTUsImgiXSwiTCIsWzE1LCJjIl0sIkJDIixbMTUsImwiXSwiQU8iLFsxNSwiaSJdLCJDQiIsWzE1LCJwIl0sIkFJIixbMTUsImYiXSwiSSIsWzE1LCJiIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jcm9zc0NvbnRhaW5lclNjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImNvb2tpZV9kZXByZWNhdGlvbl9sYWJlbCJdLFs1MiwiYyIsInBsZCJdLFs1MiwiZCIsInNoYXJlZF91c2VyX2lkIl0sWzUyLCJlIiwic2hhcmVkX3VzZXJfaWRfcmVxdWVzdGVkIl0sWzUyLCJmIiwic2hhcmVkX3VzZXJfaWRfc291cmNlIl0sWzM2LFs4LCJCIixbMTUsImIiXSwiTiIsWzE1LCJjIl0sIlMiLFsxNSwiZCJdLCJUIixbMTUsImUiXSwiVSIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9wbGF0Zm9ybVNjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsMV0sWzUyLCJjIiwyXSxbNTIsImQiLDNdLFs1MiwiZSIsNF0sWzUyLCJmIiw1XSxbNTIsImciLDZdLFszNixbOCwiQSIsWzE1LCJiIl0sIkYiLFsxNSwiZyJdLCJCIixbMTUsImMiXSwiQyIsWzE1LCJkIl0sIkQiLFsxNSwiZSJdLCJFIixbMTUsImYiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiYWVfYmxvY2tfZG93bmxvYWRzIl0sWzUyLCJjIiwiYWVfYmxvY2tfZm9ybSJdLFs1MiwiZCIsImFlX2Jsb2NrX2hpc3RvcnkiXSxbNTIsImUiLCJhZV9ibG9ja19vdXRib3VuZF9jbGljayJdLFs1MiwiZiIsImFlX2Jsb2NrX3Njcm9sbCJdLFs1MiwiZyIsImFlX2Jsb2NrX3ZpZGVvIl0sWzM2LFs4LCJBIixbMTUsImIiXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJEIixbMTUsImUiXSwiRSIsWzE1LCJmIl0sIkYiLFsxNSwiZyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1EZXRlY3Rpb24iLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm8iLFs0Nl0sWzY4LCJ3IixbNTMsWzIyLFsxLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiQUkiXV1dLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiSSJdXV1dLFs0NixbNTMsWzM2LFs3XV1dXV0sWzUyLCJ3IixbImIiLFsxNyxbMTUsImciXSwiTiJdXV0sWzIyLFsibiIsWzE1LCJ3Il1dLFs0NixbNTMsWzM2LFsxNSwidyJdXV1dXSxbNTIsIngiLFs3XV0sWzIyLFsicCJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJBIl1dXV1dLFsyMixbInEiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiQiJdXV1dXSxbMjIsWyJyIl0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkYiXV1dXV0sWzIyLFsidSJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJEIl1dXV1dLFsyMixbInMiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiRSJdXV1dXSxbMjIsWyJ0Il0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkMiXV1dXV0sWzIyLFsibCJdLFs0NixbNTMsWyJmIixbMTcsWzE1LCJnIl0sIk4iXSxbMTUsIngiXSx0cnVlXV1dXSxbMzYsWzE1LCJ4Il1dXSxbNDZdXSxbMzYsWzddXV0sWzUwLCJwIixbNDZdLFs2OCwidyIsWzUzLFszNixbMjgsWzI4LFsiYyIsInNjcmlwdFtkYXRhLXJlcXVpcmVtb2R1bGVePVwibWFnZS9cIl0iXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJxIixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWyJtIiwiWVhOelpYUnpMbk54ZFdGeVpYTndZV05sTG1OdmJTOD0iXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjXj1cIi8vIixbMTUsInciXV0sIlwiXSJdXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJyIixbNDZdLFsyMixbMjgsWyJlIixbMTcsWzE1LCJoIl0sIkkiXV1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNjgsInciLFs1MyxbNTIsInciLFsibSIsImMyaHZjR2xtZVM1amIyMD0iXV0sWzUyLCJ4IixbIm0iLCJjMmh2Y0dsbWVXTmtiaTVqYjIwPSJdXSxbMjIsWzMwLFsyOCxbMTUsInciXV0sWzI4LFsxNSwieCJdXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLCJzY3JpcHRbc3JjKj1cImNkbi4iLFsxNSwidyJdXSwiXCJdLCJdLCJtZXRhW3Byb3BlcnR5PVwib2c6aW1hZ2VcIl1bY29udGVudCo9XCJjZG4uIl0sWzE1LCJ3Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cImNkbi4iXSxbMTUsInciXV0sIlwiXSwiXSwibGlua1tyZWw9XCJwcmVjb25uZWN0XCJdW2hyZWYqPVwiZm9udHMuIl0sWzE1LCJ4Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cIml0ZXJhYmxlLXNob3BpZnlcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cInYuIl0sWzE1LCJ3Il1dLCJcIl0iXV1dXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwicyIsWzQ2XSxbNjgsInciLFs1MyxbNTIsInciLFsiZCIsInByb3RvY29sIl1dLFs1MiwieCIsWyJkIiwiaG9zdCJdXSxbNTIsInkiLFszOSxbMSxbMTUsInciXSxbMTUsIngiXV0sWzAsWzAsWzAsWzAsIltzcmNePVwiIixbMTUsInciXV0sIjovLyJdLFsxNSwieCJdXSwiL3dwLWNvbnRlbnRcIl0sIl0sIiJdXSxbNTIsInoiLFsibSIsIkxuZHZjbVJ3Y21WemN5NWpiMjA9Il1dLFs1MiwiYUEiLFsibSIsIkx5OXpMbmN1YjNKbiJdXSxbMjIsWzMwLFsyOCxbMTUsInoiXV0sWzI4LFsxNSwiYUEiXV1dLFs0NixbMzYsZmFsc2VdXV0sWzM2LFszMCxbInYiLFsxNSwieCJdLFsxNSwieiJdXSxbMjgsWzI4LFsiYyIsWzAsWzAsWzAsWzAsWzE1LCJ5Il0sIm1ldGFbbmFtZT1cImdlbmVyYXRvclwiXVtjb250ZW50Xj1cIldvcmRQcmVzcyBcIl0sIl0sImxpbmtbcmVsPVwiZG5zLXByZWZldGNoXCJdW2hyZWY9XCIiXSxbMTUsImFBIl1dLCJcIl0iXV1dXV1dXSxbNDZdXSxbMzYsZmFsc2VdXSxbNTAsInQiLFs0Nl0sWzY4LCJ3IixbNTMsWzUyLCJ3IixbMjgsWzI4LFsiYyIsWzAsIltjbGFzcyo9XCJ3b29jb21tZXJjZVwiXSwiLCJtZXRhW25hbWU9XCJnZW5lcmF0b3JcIl1bY29udGVudF49XCJXb29Db21tZXJjZSBcIl0iXV1dXV0sWzIyLFsxNSwidyJdLFs0NixbNTNdXV0sWzM2LFsxNSwidyJdXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJ1IixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjKj1cIndvb2NvbW1lcmNlXCJdLCIsImxpbmtbaHJlZio9XCJ3b29jb21tZXJjZVwiXSwiXSwiW2NsYXNzfD1cIndvb2NvbW1lcmNlXCJdIl1dXV1dLFsyMixbMTUsInciXSxbNDYsWzUzXV1dLFszNixbMTUsInciXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwidiIsWzQ2LCJ3IiwieCJdLFszNixbMSxbMTksWzE3LFsxNSwidyJdLCJsZW5ndGgiXSxbMTcsWzE1LCJ4Il0sImxlbmd0aCJdXSxbMjAsWzIsWzE1LCJ3Il0sInN1YnN0cmluZyIsWzcsWzM3LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sWzE3LFsxNSwieCJdLCJsZW5ndGgiXV0sWzE3LFsxNSwidyJdLCJsZW5ndGgiXV1dLFsxNSwieCJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciJdXSxbNTIsImQiLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiXV0sWzUyLCJqIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtU2NoZW1hIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLmlzRG9tUmVhZHkiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJmcm9tQmFzZTY0Il1dLFs1MiwibiIsWzUxLCIiLFs3LCJ3Il0sWzM2LFsyMCxbImsiLFsxNSwidyJdXSwiYXJyYXkiXV1dXSxbMzYsWzgsIkEiLFsxNSwibyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZSIsWzQ2LCJnIl0sWzUyLCJoIixbImIiXV0sWzUyLCJpIixbN11dLFs1MyxbNDEsImoiXSxbMywiaiIsMF0sWzYzLFs3LCJqIl0sWzIzLFsxNSwiaiJdLFsxNyxbMTUsImgiXSwibGVuZ3RoIl1dLFszMyxbMTUsImoiXSxbMywiaiIsWzAsWzE1LCJqIl0sMV1dXSxbNDYsWzUzLFs1MiwiayIsWzE2LFsxNSwiaCJdLFsxNSwiaiJdXV0sWzIyLFsiZCIsWzE1LCJnIl0sWzE1LCJrIl1dLFs0NixbNTMsWzIsWzE1LCJpIl0sInB1c2giLFs3LFsxNSwiayJdXV1dXV1dXV1dLFszNixbMTUsImkiXV1dLFs1MCwiZiIsWzQ2LCJnIiwiaCJdLFs1MiwiaSIsWzMwLFsxNSwiaCJdLFs4XV1dLFs0MyxbMTUsImkiXSxbMTcsWzE1LCJjIl0sIlQiXSx0cnVlXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJDUSJdLHRydWVdLFs0MyxbMTUsImkiXSxbMTcsWzE1LCJjIl0sIloiXSwiYSJdLFs0MyxbMTUsImciXSwiZXZlbnRNZXRhZGF0YSIsWzE1LCJpIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldERlc3RpbmF0aW9uSWRzIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmNsYWltRGVzdGluYXRpb24iXV0sWzM2LFs4LCJBIixbMTUsImUiXSwiQiIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jY2RFbVBhZ2VWaWV3QWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImoiLFs0NiwiayJdLFsiYyIsWzE1LCJrIl0sWzUxLCIiLFs3LCJsIl0sWzIyLFszMCxbMjEsWzIsWzE1LCJsIl0sImdldEV2ZW50TmFtZSIsWzddXSxbMTUsImkiXV0sWzI4LFsyLFsxNSwibCJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJUIl1dXV1dLFs0NixbNTMsWzM2XV1dXSxbMjIsWyJiIixbMTUsImsiXSxbMTUsImgiXV0sWzQ2LFs1MyxbMixbMTUsImwiXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMjIsWzI4LFsyLFsxNSwibCJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJCTyJdXV1dLFs0NixbNTMsWyJkIixbMTUsImsiXSxbMTcsWzE1LCJmIl0sIkhFIl0sWzIsWzE1LCJsIl0sImdldEhpdERhdGEiLFs3LFsxNyxbMTUsImYiXSwiSEUiXV1dXV1dXSxbMixbMTUsImwiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQ1EiXSxmYWxzZV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJmIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiaCIsWzE3LFsxNSwiZyJdLCJDIl1dLFs1MiwiaSIsWzE3LFsxNSwiZiJdLCJBSyJdXSxbMzYsWzgsIkEiLFsxNSwiaiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1NldEdwcFBhcmFtcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZCIsWzQ2LCJlIl0sWzUyLCJmIixbImIiXV0sWzIyLFsxNixbMTUsImYiXSxbMTcsWzE1LCJjIl0sIkZaIl1dLFs0NixbNTMsWzIsWzE1LCJlIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImMiXSwiRloiXSxbMTYsWzE1LCJmIl0sWzE3LFsxNSwiYyJdLCJGWiJdXV1dXV1dLFsyMixbMTYsWzE1LCJmIl0sWzE3LFsxNSwiYyJdLCJGWSJdXSxbNDYsWzUzLFsyLFsxNSwiZSJdLCJzZXRIaXREYXRhIixbNyxbMTcsWzE1LCJjIl0sIkZZIl0sWzE2LFsxNSwiZiJdLFsxNyxbMTUsImMiXSwiRlkiXV1dXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcml2YWN5U3RyaW5ncyJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbMzYsWzgsIkEiLFsxNSwiZCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1NldFRlc3RIaXRQYXJhbXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImYiLFs0NiwiZyJdLFsyMixbMixbMTUsImciXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQlMiXV1dLFs0NixbNTMsWzIsWzE1LCJnIl0sInNldEhpdERhdGEiLFs3LFsxNyxbMTUsImQiXSwiSVAiXSwiMSJdXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9mZWF0dXJlcyJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImYiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tFbmFibGVFbmNyeXB0aW9uIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImoiXSxbNTIsImsiLFsyLFsxNSwiaiJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZyJdLCJBUSJdXV1dLFsyMixbMSxbMzAsWzIwLFsxNSwiayJdLFsxNyxbMTUsImIiXSwiSyJdXSxbMjAsWzE1LCJrIl0sWzE3LFsxNSwiYiJdLCJKIl1dXSxbImkiLFsxNSwiaiJdXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImciXSwiQkMiXSx0cnVlXV1dXV1dLFs1MCwiaSIsWzQ2LCJqIl0sWzIyLFsyOCxbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImciXSwiQ1ciXV1dXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzM2LFsiYyJdXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2Fkd29yZHNIaXRUeXBlIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGcGZlIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuaXNGZWF0dXJlRW5hYmxlZCJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX3Rhc2tQbGF0Zm9ybURldGVjdGlvbiIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZCIsWzQ2LCJlIl0sWzUyLCJmIixbMixbMTUsImMiXSwiQSIsWzddXV0sWzIyLFsxLFsxNSwiZiJdLFsxOCxbMTcsWzE1LCJmIl0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFsyLFsxNSwiZSJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImIiXSwiRlQiXSxbOCwicGxmIixbMixbMTUsImYiXSwiam9pbiIsWzcsIi4iXV1dXV1dXV1dLFs1MiwiYiIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9wbGF0Zm9ybURldGVjdGlvbiJdXSxbMzYsWzgsIkEiLFsxNSwiZCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogCl0KLCJlbnRpdGllcyI6ewoiX19jY2RfYWRzX2NvbnZfbWFya2luZyI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9hZHNfZmlyc3QiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfYWRzX2xhc3QiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fcGFnZV92aWV3Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZSI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX29ndF8xcF9kYXRhX3YyIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fcmVwIjp7IjUiOnRydWUsIjYiOnRydWV9CgoKfQosImJsb2IiOnsiMSI6IjEiLCIxMCI6IkFXLTEwOTUxODQzNzI2IiwiMTQiOiI2N20wIiwiMTUiOiIwIiwiMTYiOiJDaEVJOElPYzB3WVFnT21za3Z1bHhLcVJBUklmQUwyUFlaYjFJZzJ2aEhHeUJuODdpMGthaDZ5ZVM2QjVRZ0hqdnI5VE9Cb0NRSmM9IiwiMTciOiIiLCIxOSI6ImRhdGFMYXllciIsIjIwIjoiIiwiMjEiOiJ3d3cuZ29vZ2xldGFnbWFuYWdlci5jb20iLCIyMiI6ImV5SXdJam9pVGs4aUxDSXhJam9pVGs4dE1ETWlMQ0l5SWpwbVlXeHpaU3dpTXlJNkltZHZiMmRzWlM1dWJ5SXNJalFpT2lKeVpXZHBiMjR4SWl3aU5TSTZabUZzYzJVc0lqWWlPblJ5ZFdVc0lqY2lPaUpoWkY5emRHOXlZV2RsZkdGdVlXeDVkR2xqYzE5emRHOXlZV2RsZkdGa1gzVnpaWEpmWkdGMFlYeGhaRjl3WlhKemIyNWhiR2w2WVhScGIyNGlMQ0k1SWpwMGNuVmxmUSIsIjIzIjoiZ29vZ2xlLnRhZ21hbmFnZXIuZGVidWd1aTIucXVldWUiLCIyNCI6InRhZ2Fzc2lzdGFudC5nb29nbGUuY29tIiwiMjciOjAuMDA1LCIzIjoid3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIiwiMzAiOiJOTyIsIjMxIjoiTk8tMDMiLCIzMiI6ZmFsc2UsIjMzIjoicmVnaW9uMSIsIjM0IjoiQVctMTA5NTE4NDM3MjYiLCIzNSI6IkFXIiwiMzYiOiJodHRwczovL2Fkc2VydmljZS5nb29nbGUuY29tL3BhZ2VhZC9yZWdjbGsiLCIzNyI6Il9fVEFHR1lfSU5TVEFMTEVEIiwiMzgiOiJjY3QuZ29vZ2xlIiwiMzkiOiJnb29nVGFnZ3lSZWZlcnJlciIsIjQwIjoiaHR0cHM6Ly9jY3QuZ29vZ2xlL3RhZ2d5L2FnZW50LmpzIiwiNDEiOiJnb29nbGUudGFnbWFuYWdlci50YS5wcm9kcXVldWUiLCI0MiI6MC4wMSwiNDMiOiJ7XCJrZXlzXCI6W3tcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCS2x5VFgyanlvYnBRQ21mVXlCYmhCeVFIazlaMkhkTjVsSHhwQkF0SUtHTWNtencwZ0UrZWJsWUNtbTFHYTdiWWVUZHlkb0ptZTZJcGFTb0NVMElVVW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiZGVlNGIzNTEtYjBmNS00YzI3LWE4YzgtZWQ2NjA0NzdhNDRjXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRHRZQlJuUEJTMWc2bWVYTzFyUTVhNTJCNUZibmg3REM1anF2MDJpeEpzc24wazFKOXJjSENhVmMvenpSc25zSEJ6U29GS3M2SjhwSDdDY25RUDNFanc9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiYWQxOTNiMmEtNGE5MC00YzFhLWI3OWUtZGUzN2FjMzkxYmQyXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCTVowVU11ZEFlNFBvYWZTVHBVeFB0SWtmQmVDTWJGQlh2dHlSWXZITENTUS9FVXZFSnNtc1Y0dDZOQi9CRVZwcUwzSHY4Z05TUWg3SytTVW9vZjI1YW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDhjNGVmZTEtZmRkMC00MzZhLWFjOGYtOTIzZjExOTE4Nzg3XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRmZsdlVsK3hwSGFGVkNJWU8xS1BMeGt2K0FqZGw0ZDhydnJYaEk2emZwbmJCRHFJNTFERGt0SEhiM1pXSVM1N29EaDBLaXI5QXVDT29uMk1PeE5WOVk9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDMyYmMyNzAtOTllYS00MjIwLWI1NjItZTJjNWFlNzdkNGQ5XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCQVE4VGt5NERMV09KYkhPSGJWWURiUVpFZkVlbGI0RlRCOEVZTVFlUlFpTDFtMUx0QWQwcjN6ZXlMamdaMy9XMjRSOFZmYjIyelkyaXg2Vy9UZkNqakE9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiMDUwYTZlMTEtMzhhYi00ZjgwLTg5Y2ItN2IzMTliOTcwNGMwXCJ9XX0iLCI0NCI6IjExODg5NzkyMH4xMTg4OTc5MzAiLCI0NSI6dHJ1ZSwiNDYiOnsiMSI6IjEwMDAiLCIxMCI6IjY2dTAiLCIxMSI6IjY2ZzAiLCIxNCI6IjEwMDAiLCIxNiI6IlVTLUNPflVTLUNUflVTLU1UflVTLU5FflVTLU5IflVTLVRYflVTLU1OflVTLU5KflVTLU1EflVTLU9SflVTLURFIiwiMTciOiJVUy1DT35VUy1DVH5VUy1NVH5VUy1ORX5VUy1OSH5VUy1UWH5VUy1NTn5VUy1OSn5VUy1NRH5VUy1PUn5VUy1ERSIsIjIiOiI5IiwiMjAiOiI1MDAwIiwiMjEiOiI1MDAwIiwiMjIiOiI0LjQuMCIsIjIzIjoiMC4wLjAiLCIyNSI6IjEiLCIyNiI6IjQwMDAiLCIyNyI6IjEwMCIsIjMiOiI1IiwiNCI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhfGFkX3BlcnNvbmFsaXphdGlvbiIsIjQ0IjoiMTUwMDAiLCI0OCI6IjMwMDAwIiwiNSI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhIiwiNiI6IjEiLCI2MSI6IjEwMDAiLCI2MiI6IkE2T05IUlk3L2J2QnJvK0lNWmQvYTZMTmpuN1NTdjk5OVNrTi9oRkFFOUw2dk1yMzRkTmdmZFNWZFltdjRVK05IWmcxc3hkMzhSdGNpUnBSVXRJUlBnUUFBQUNDZXlKdmNtbG5hVzRpT2lKb2RIUndjem92TDNkM2R5NW5iMjluYkdWMFlXZHRZVzVoWjJWeUxtTnZiVG8wTkRNaUxDSm1aV0YwZFhKbElqb2lVMmhoY21Wa1YyOXlhMlZ5UlhoMFpXNWtaV1JNYVdabGRHbHRaU0lzSW1WNGNHbHllU0k2TVRjM05qY3lPVFl3TUN3aWFYTlVhR2x5WkZCaGNuUjVJanAwY25WbGZRPT0iLCI2MyI6IjEwMDAiLCI2NiI6IjEwMCIsIjciOiIxMCJ9LCI0OCI6dHJ1ZSwiNSI6IkFXLTEwOTUxODQzNzI2IiwiNTUiOlsiQVctMTA5NTE4NDM3MjYiXSwiNTYiOlt7IjEiOjQwMywiMyI6MC41LCI0IjoxMTU5Mzg0NjUsIjUiOjExNTkzODQ2NiwiNiI6MCwiNyI6Mn0seyIxIjo0MDQsIjMiOjAuNSwiNCI6MTE1OTM4NDY4LCI1IjoxMTU5Mzg0NjksIjYiOjAsIjciOjF9LHsiMSI6NjAyLCIzIjowLjAxLCI0IjoxMjAxMjQ0NTUsIjUiOjEyMDEyNDQ1MywiNiI6MTIwMTI0NDU0LCI3IjozfSx7IjEiOjU2OSwiMiI6dHJ1ZX0seyIxIjo0NzUsIjIiOnRydWV9LHsiMSI6NTAyLCIyIjp0cnVlfSx7IjEiOjU3NywiMiI6dHJ1ZX0seyIxIjo1NjgsIjMiOjAuMDEsIjQiOjExOTc5MTc0OSwiNSI6MTE5NzkxNzQ4LCI2IjowLCI3IjoxfSx7IjEiOjQ5MCwiMiI6dHJ1ZX0seyIxIjo0OTEsIjMiOjAuMDEsIjQiOjExODAxMjAwNywiNSI6MTE4MDEyMDA4LCI2IjoxMTgwMTIwMDksIjciOjF9LHsiMSI6NDgwLCIyIjp0cnVlfSx7IjEiOjU5NCwiMyI6MC4wMSwiNCI6MTE5NzkzOTc0LCI1IjoxMTk3OTM5NzIsIjYiOjExOTc5Mzk3MywiNyI6MX0seyIxIjo1OTksIjIiOnRydWV9LHsiMSI6NTgwLCIzIjowLjEsIjQiOjExOTUyNzAyMCwiNSI6MTE5NTI3MDE5LCI2IjowLCI3IjoxfSx7IjEiOjUyMywiMiI6dHJ1ZX0seyIxIjo1ODEsIjMiOjAuMDEsIjQiOjExOTk0ODg1NCwiNSI6MTE5OTQ4ODUyLCI2IjoxMTk5NDg4NTMsIjciOjN9LHsiMSI6NTU1LCIzIjowLjAxLCI0IjoxMTkyNTk2MDYsIjUiOjExOTI1OTYwNSwiNiI6MCwiNyI6Mn0seyIxIjo1MDQsIjIiOnRydWV9LHsiMSI6NDYyLCIzIjowLjA1LCI0IjoxMTg4MDY1MjQsIjUiOjExODgwNjUyNSwiNiI6MTE4ODA2NTI2LCI3IjoxfSx7IjEiOjQxMywiMiI6dHJ1ZX0seyIxIjo1OTMsIjIiOnRydWV9LHsiMSI6NTA2LCIyIjp0cnVlfSx7IjEiOjUwMCwiMiI6dHJ1ZX0seyIxIjo1NjEsIjMiOjAuMDAxLCI0IjoxMTk0MDQ3MDMsIjUiOjExOTQwNDcwMiwiNiI6MCwiNyI6MX0seyIxIjo0ODEsIjMiOjAuMDAxLCI0IjoxMTk0MDQ3MDEsIjUiOjExOTQwNDcwMCwiNiI6MCwiNyI6MX0seyIxIjo0NTAsIjMiOjAuMDEsIjQiOjExNzIyNzcxNCwiNSI6MTE3MjI3NzE1LCI2IjoxMTcyMjc3MTYsIjciOjN9LHsiMSI6NTgzLCIzIjowLjUsIjQiOjExOTg5NjgwMywiNSI6MTE5ODk2ODAyLCI2IjowLCI3IjoxfSx7IjEiOjQ1OCwiMiI6dHJ1ZX0seyIxIjo1ODIsIjMiOjAuMDEsIjQiOjExOTM4MTY2NCwiNSI6MTE5MzgxNjYyLCI2IjoxMTkzODE2NjMsIjciOjF9LHsiMSI6NTcwLCIyIjp0cnVlfSx7IjEiOjQ5OCwiMyI6MC4yLCI0IjoxMTU2MTY5ODUsIjUiOjExNTYxNjk4NiwiNiI6MCwiNyI6MX0seyIxIjo1OTUsIjIiOnRydWV9LHsiMSI6NTg5LCIzIjowLjAxLCI0IjoxMjAwODQyMTUsIjUiOjEyMDA4NDIxNCwiNiI6MCwiNyI6MX0seyIxIjo0OTUsIjMiOjAuMDUsIjQiOjExODEzMTgxMCwiNSI6MTE4MTMxODA4LCI2IjoxMTgxMzE4MDksIjciOjN9LHsiMSI6NTg3LCIzIjowLjEsIjQiOjExOTczMjE3MSwiNSI6MTE5NzMyMTcwLCI2IjowLCI3IjozfSx7IjEiOjU4NCwiMiI6dHJ1ZX0seyIxIjo1NjQsIjMiOjAuMDAwMSwiNCI6MTE5MjA1MzE3LCI1IjoxMTkyMDUzMTUsIjYiOjExOTIwNTMxNiwiNyI6MX0seyIxIjo1NTcsIjIiOnRydWV9LHsiMSI6NDI3LCIzIjowLjEsIjQiOjExOTcyNDMyMiwiNSI6MTE5NzI0MzIwLCI2IjoxMTk3MjQzMjEsIjciOjJ9LHsiMSI6NTc2LCIzIjowLjAxLCI0IjoxMTkzMTc4MTAsIjUiOjExOTMxNzgxMSwiNiI6MTE5MzE4MTc3LCI3IjozfSx7IjEiOjU3MywiMiI6dHJ1ZX0seyIxIjo0OTksIjIiOnRydWV9LHsiMSI6NTE2LCIzIjowLjEsIjQiOjExODM5NTMzNSwiNSI6MTE4Mzk1MzMzLCI2IjoxMTgzOTUzMzQsIjciOjF9LHsiMSI6NTI0LCIyIjp0cnVlfV0sIjU5IjpbIkFXLTEwOTUxODQzNzI2Il0sIjYyIjp0cnVlLCI2MyI6MC4wMDV9CiwicGVybWlzc2lvbnMiOnsKIl9fY2NkX2Fkc19jb252X21hcmtpbmciOnt9CiwKIl9fY2NkX2Fkc19maXJzdCI6eyJyZWFkX2RvbV9lbGVtZW50cyI6eyJhbGxvd2VkQ3NzU2VsZWN0b3JzIjoiYW55In0sImdldF91cmwiOnsidXJsUGFydHMiOiJzcGVjaWZpYyIsInByb3RvY29sIjp0cnVlLCJob3N0Ijp0cnVlfX0KLAoiX19jY2RfYWRzX2xhc3QiOnt9CiwKIl9fY2NkX2VtX3BhZ2VfdmlldyI6eyJsaXN0ZW5fZGF0YV9sYXllciI6eyJhY2Nlc3NUeXBlIjoic3BlY2lmaWMiLCJhbGxvd2VkRXZlbnRzIjpbImd0bS5oaXN0b3J5Q2hhbmdlLXYyIl19LCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e30sImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiOnt9fQosCiJfX2UiOnsicmVhZF9ldmVudF9kYXRhIjp7ImV2ZW50RGF0YUFjY2VzcyI6InNwZWNpZmljIiwia2V5UGF0dGVybnMiOlsiZXZlbnQiXX19CiwKIl9fb2d0XzFwX2RhdGFfdjIiOnsiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSI6eyJsaW1pdERhdGFTb3VyY2VzIjp0cnVlLCJhbGxvd0F1dG9EYXRhU291cmNlcyI6dHJ1ZSwiYWxsb3dNYW51YWxEYXRhU291cmNlcyI6ZmFsc2UsImFsbG93Q29kZURhdGFTb3VyY2VzIjpmYWxzZX19CiwKIl9fcmVwIjp7fQoKCn0KCgoKLCJzZWN1cml0eV9ncm91cHMiOnsKImdvb2dsZSI6WwoiX19jY2RfYWRzX2NvbnZfbWFya2luZyIKLAoiX19jY2RfYWRzX2ZpcnN0IgosCiJfX2NjZF9hZHNfbGFzdCIKLAoiX19jY2RfZW1fcGFnZV92aWV3IgosCiJfX2UiCiwKIl9fb2d0XzFwX2RhdGFfdjIiCiwKIl9fcmVwIgoKXQoKCn0KCgoKCgp9OwoKCgoKdmFyIGssYWE9dHlwZW9mIE9iamVjdC5jcmVhdGU9PSJmdW5jdGlvbiI/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbigpe307Yi5wcm90b3R5cGU9YTtyZXR1cm4gbmV3IGJ9LGJhPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PUFycmF5LnByb3RvdHlwZXx8YT09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2JdPWMudmFsdWU7cmV0dXJuIGF9LGNhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bIm9iamVjdCI9PXR5cGVvZiBnbG9iYWxUaGlzJiZnbG9iYWxUaGlzLGEsIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdywib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYsIm9iamVjdCI9PXR5cGVvZiBnbG9iYWwmJmdsb2JhbF0sYz0wO2M8Yi5sZW5ndGg7KytjKXt2YXIgZD1iW2NdO2lmKGQmJmQuTWF0aD09TWF0aClyZXR1cm4gZH10aHJvdyBFcnJvcigiQ2Fubm90IGZpbmQgZ2xvYmFsIG9iamVjdCIpOwp9LGhhPWNhKHRoaXMpLGlhPXR5cGVvZiBTeW1ib2w9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgU3ltYm9sKCJ4Iik9PT0ic3ltYm9sIixrYT17fSxsYT17fSxuYT1mdW5jdGlvbihhLGIsYyl7aWYoIWN8fGEhPW51bGwpe3ZhciBkPWxhW2JdO2lmKGQ9PW51bGwpcmV0dXJuIGFbYl07dmFyIGU9YVtkXTtyZXR1cm4gZSE9PXZvaWQgMD9lOmFbYl19fSxvYT1mdW5jdGlvbihhLGIsYyl7aWYoYilhOnt2YXIgZD1hLnNwbGl0KCIuIiksZT1kLmxlbmd0aD09PTEsZj1kWzBdLGc7IWUmJmYgaW4ga2E/Zz1rYTpnPWhhO2Zvcih2YXIgaD0wO2g8ZC5sZW5ndGgtMTtoKyspe3ZhciBsPWRbaF07aWYoIShsIGluIGcpKWJyZWFrIGE7Zz1nW2xdfXZhciBuPWRbZC5sZW5ndGgtMV0scD1pYSYmYz09PSJlczYiP2dbbl06bnVsbCxxPWIocCk7aWYocSE9bnVsbClpZihlKWJhKGthLG4se2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpxfSk7ZWxzZSBpZihxIT09cCl7aWYobGFbbl09PT12b2lkIDApe3ZhciByPQpNYXRoLnJhbmRvbSgpKjFFOT4+PjA7bGFbbl09aWE/aGEuU3ltYm9sKG4pOiIkanNjcCQiK3IrIiQiK259YmEoZyxsYVtuXSx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnF9KX19fSxwYTtpZihpYSYmdHlwZW9mIE9iamVjdC5zZXRQcm90b3R5cGVPZj09ImZ1bmN0aW9uIilwYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y7ZWxzZXt2YXIgcmE7YTp7dmFyIHRhPXthOiEwfSx1YT17fTt0cnl7dWEuX19wcm90b19fPXRhO3JhPXVhLmE7YnJlYWsgYX1jYXRjaChhKXt9cmE9ITF9cGE9cmE/ZnVuY3Rpb24oYSxiKXthLl9fcHJvdG9fXz1iO2lmKGEuX19wcm90b19fIT09Yil0aHJvdyBuZXcgVHlwZUVycm9yKGErIiBpcyBub3QgZXh0ZW5zaWJsZSIpO3JldHVybiBhfTpudWxsfQp2YXIgdmE9cGEsd2E9ZnVuY3Rpb24oYSxiKXthLnByb3RvdHlwZT1hYShiLnByb3RvdHlwZSk7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTtpZih2YSl2YShhLGIpO2Vsc2UgZm9yKHZhciBjIGluIGIpaWYoYyE9InByb3RvdHlwZSIpaWYoT2JqZWN0LmRlZmluZVByb3BlcnRpZXMpe3ZhciBkPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYixjKTtkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxjLGQpfWVsc2UgYVtjXT1iW2NdO2EuRnQ9Yi5wcm90b3R5cGV9LHhhPWZ1bmN0aW9uKGEpe3ZhciBiPTA7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGI8YS5sZW5ndGg/e2RvbmU6ITEsdmFsdWU6YVtiKytdfTp7ZG9uZTohMH19fSxtPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJmFbU3ltYm9sLml0ZXJhdG9yXTtpZihiKXJldHVybiBiLmNhbGwoYSk7aWYodHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIilyZXR1cm57bmV4dDp4YShhKX07CnRocm93IEVycm9yKFN0cmluZyhhKSsiIGlzIG5vdCBhbiBpdGVyYWJsZSBvciBBcnJheUxpa2UiKTt9LHlhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYixjPVtdOyEoYj1hLm5leHQoKSkuZG9uZTspYy5wdXNoKGIudmFsdWUpO3JldHVybiBjfSx3PWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgQXJyYXk/YTp5YShtKGEpKX0sQWE9ZnVuY3Rpb24oYSl7cmV0dXJuIHphKGEsYSl9LHphPWZ1bmN0aW9uKGEsYil7YS5yYXc9YjtPYmplY3QuZnJlZXplJiYoT2JqZWN0LmZyZWV6ZShhKSxPYmplY3QuZnJlZXplKGIpKTtyZXR1cm4gYX0sQmE9aWEmJnR5cGVvZiBuYShPYmplY3QsImFzc2lnbiIpPT0iZnVuY3Rpb24iP25hKE9iamVjdCwiYXNzaWduIik6ZnVuY3Rpb24oYSxiKXtpZihhPT1udWxsKXRocm93IG5ldyBUeXBlRXJyb3IoIk5vIG51bGxpc2ggYXJnIik7YT1PYmplY3QoYSk7Zm9yKHZhciBjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dmFyIGQ9YXJndW1lbnRzW2NdOwppZihkKWZvcih2YXIgZSBpbiBkKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkLGUpJiYoYVtlXT1kW2VdKX1yZXR1cm4gYX07b2EoIk9iamVjdC5hc3NpZ24iLGZ1bmN0aW9uKGEpe3JldHVybiBhfHxCYX0sImVzNiIpO3ZhciBDYT1mdW5jdGlvbihhKXtpZighKGEgaW5zdGFuY2VvZiBPYmplY3QpKXRocm93IG5ldyBUeXBlRXJyb3IoIkl0ZXJhdG9yIHJlc3VsdCAiK2ErIiBpcyBub3QgYW4gb2JqZWN0Iik7fSxEYT1mdW5jdGlvbigpe3RoaXMuZmE9ITE7dGhpcy5SPW51bGw7dGhpcy5qYT12b2lkIDA7dGhpcy5IPTE7dGhpcy5OPXRoaXMuWj0wO3RoaXMuTGE9dGhpcy5LPW51bGx9LEVhPWZ1bmN0aW9uKGEpe2lmKGEuZmEpdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgcnVubmluZyIpO2EuZmE9ITB9O0RhLnByb3RvdHlwZS55YT1mdW5jdGlvbihhKXt0aGlzLmphPWF9Owp2YXIgR2E9ZnVuY3Rpb24oYSxiKXthLks9e2FvOmIsaXNFeGNlcHRpb246ITB9O2EuSD1hLlp8fGEuTn07RGEucHJvdG90eXBlLmdldE5leHRBZGRyZXNzSnNjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07RGEucHJvdG90eXBlLmdldFlpZWxkUmVzdWx0SnNjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuamF9O0RhLnByb3RvdHlwZS5yZXR1cm49ZnVuY3Rpb24oYSl7dGhpcy5LPXtyZXR1cm46YX07dGhpcy5IPXRoaXMuTn07RGEucHJvdG90eXBlWyJyZXR1cm4iXT1EYS5wcm90b3R5cGUucmV0dXJuO0RhLnByb3RvdHlwZS5Baj1mdW5jdGlvbihhKXt0aGlzLks9e25kOmF9O3RoaXMuSD10aGlzLk59O0RhLnByb3RvdHlwZS5qdW1wVGhyb3VnaEZpbmFsbHlCbG9ja3M9RGEucHJvdG90eXBlLkFqO0RhLnByb3RvdHlwZS5hYz1mdW5jdGlvbihhLGIpe3RoaXMuSD1iO3JldHVybnt2YWx1ZTphfX07RGEucHJvdG90eXBlLnlpZWxkPURhLnByb3RvdHlwZS5hYzsKRGEucHJvdG90eXBlLnhzPWZ1bmN0aW9uKGEsYil7dmFyIGM9bShhKSxkPWMubmV4dCgpO0NhKGQpO2lmKGQuZG9uZSl0aGlzLmphPWQudmFsdWUsdGhpcy5IPWI7ZWxzZSByZXR1cm4gdGhpcy5SPWMsdGhpcy5hYyhkLnZhbHVlLGIpfTtEYS5wcm90b3R5cGUueWllbGRBbGw9RGEucHJvdG90eXBlLnhzO0RhLnByb3RvdHlwZS5uZD1mdW5jdGlvbihhKXt0aGlzLkg9YX07RGEucHJvdG90eXBlLmp1bXBUbz1EYS5wcm90b3R5cGUubmQ7RGEucHJvdG90eXBlLkRqPWZ1bmN0aW9uKCl7dGhpcy5IPTB9O0RhLnByb3RvdHlwZS5qdW1wVG9FbmQ9RGEucHJvdG90eXBlLkRqO0RhLnByb3RvdHlwZS5Oaj1mdW5jdGlvbihhLGIpe3RoaXMuWj1hO2IhPXZvaWQgMCYmKHRoaXMuTj1iKX07RGEucHJvdG90eXBlLnNldENhdGNoRmluYWxseUJsb2Nrcz1EYS5wcm90b3R5cGUuTmo7RGEucHJvdG90eXBlLnZnPWZ1bmN0aW9uKGEpe3RoaXMuWj0wO3RoaXMuTj1hfHwwfTsKRGEucHJvdG90eXBlLnNldEZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUudmc7RGEucHJvdG90eXBlLklqPWZ1bmN0aW9uKGEsYil7dGhpcy5IPWE7dGhpcy5aPWJ8fDB9O0RhLnByb3RvdHlwZS5sZWF2ZVRyeUJsb2NrPURhLnByb3RvdHlwZS5JajtEYS5wcm90b3R5cGUuUGg9ZnVuY3Rpb24oYSl7dGhpcy5aPWF8fDA7dmFyIGI9dGhpcy5LLmFvO3RoaXMuSz1udWxsO3JldHVybiBifTtEYS5wcm90b3R5cGUuZW50ZXJDYXRjaEJsb2NrPURhLnByb3RvdHlwZS5QaDtEYS5wcm90b3R5cGUua2Q9ZnVuY3Rpb24oYSxiLGMpe2M/dGhpcy5MYVtjXT10aGlzLks6dGhpcy5MYT1bdGhpcy5LXTt0aGlzLlo9YXx8MDt0aGlzLk49Ynx8MH07RGEucHJvdG90eXBlLmVudGVyRmluYWxseUJsb2NrPURhLnByb3RvdHlwZS5rZDsKRGEucHJvdG90eXBlLmhlPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5MYS5zcGxpY2UoYnx8MClbMF0sZD10aGlzLks9dGhpcy5LfHxjO2Q/ZC5pc0V4Y2VwdGlvbj90aGlzLkg9dGhpcy5afHx0aGlzLk46ZC5uZCE9dm9pZCAwJiZ0aGlzLk48ZC5uZD8odGhpcy5IPWQubmQsdGhpcy5LPW51bGwpOnRoaXMuSD10aGlzLk46dGhpcy5IPWF9O0RhLnByb3RvdHlwZS5sZWF2ZUZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUuaGU7RGEucHJvdG90eXBlLmZlPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgSGEoYSl9O0RhLnByb3RvdHlwZS5mb3JJbj1EYS5wcm90b3R5cGUuZmU7dmFyIEhhPWZ1bmN0aW9uKGEpe3RoaXMuSz1hO3RoaXMuSD1bXTtmb3IodmFyIGIgaW4gYSl0aGlzLkgucHVzaChiKTt0aGlzLkgucmV2ZXJzZSgpfTtIYS5wcm90b3R5cGUuaG89ZnVuY3Rpb24oKXtmb3IoO3RoaXMuSC5sZW5ndGg+MDspe3ZhciBhPXRoaXMuSC5wb3AoKTtpZihhIGluIHRoaXMuSylyZXR1cm4gYX1yZXR1cm4gbnVsbH07CkhhLnByb3RvdHlwZS5nZXROZXh0PUhhLnByb3RvdHlwZS5obzsKdmFyIElhPWZ1bmN0aW9uKGEpe3RoaXMuSD1uZXcgRGE7dGhpcy5LPWF9LExhPWZ1bmN0aW9uKGEsYil7RWEoYS5IKTt2YXIgYz1hLkguUjtpZihjKXJldHVybiBKYShhLCJyZXR1cm4iaW4gYz9jWyJyZXR1cm4iXTpmdW5jdGlvbihkKXtyZXR1cm57dmFsdWU6ZCxkb25lOiEwfX0sYixhLkgucmV0dXJuKTthLkgucmV0dXJuKGIpO3JldHVybiBLYShhKX0sSmE9ZnVuY3Rpb24oYSxiLGMsZCl7dHJ5e3ZhciBlPWIuY2FsbChhLkguUixjKTtDYShlKTtpZighZS5kb25lKXJldHVybiBhLkguZmE9ITEsZTt2YXIgZj1lLnZhbHVlfWNhdGNoKGcpe3JldHVybiBhLkguUj1udWxsLEdhKGEuSCxnKSxLYShhKX1hLkguUj1udWxsO2QuY2FsbChhLkgsZik7cmV0dXJuIEthKGEpfSxLYT1mdW5jdGlvbihhKXtmb3IoO2EuSC5IOyl0cnl7dmFyIGI9YS5LKGEuSCk7aWYoYilyZXR1cm4gYS5ILmZhPSExLHt2YWx1ZTpiLnZhbHVlLGRvbmU6ITF9fWNhdGNoKGQpe2EuSC5qYT12b2lkIDAsR2EoYS5ILApkKX1hLkguZmE9ITE7aWYoYS5ILkspe3ZhciBjPWEuSC5LO2EuSC5LPW51bGw7aWYoYy5pc0V4Y2VwdGlvbil0aHJvdyBjLmFvO3JldHVybnt2YWx1ZTpjLnJldHVybixkb25lOiEwfX1yZXR1cm57dmFsdWU6dm9pZCAwLGRvbmU6ITB9fSxNYT1mdW5jdGlvbihhKXt0aGlzLm5leHQ9ZnVuY3Rpb24oYil7dmFyIGM7RWEoYS5IKTthLkguUj9jPUphKGEsYS5ILlIubmV4dCxiLGEuSC55YSk6KGEuSC55YShiKSxjPUthKGEpKTtyZXR1cm4gY307dGhpcy50aHJvdz1mdW5jdGlvbihiKXt2YXIgYztFYShhLkgpO2EuSC5SP2M9SmEoYSxhLkguUlsidGhyb3ciXSxiLGEuSC55YSk6KEdhKGEuSCxiKSxjPUthKGEpKTtyZXR1cm4gY307dGhpcy5yZXR1cm49ZnVuY3Rpb24oYil7cmV0dXJuIExhKGEsYil9O3RoaXNbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfX0sTmE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uZXcgTWEobmV3IElhKGIpKTt2YSYmYS5wcm90b3R5cGUmJnZhKGMsCmEucHJvdG90eXBlKTtyZXR1cm4gY30sT2E9ZnVuY3Rpb24oKXtmb3IodmFyIGE9TnVtYmVyKHRoaXMpLGI9W10sYz1hO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspYltjLWFdPWFyZ3VtZW50c1tjXTtyZXR1cm4gYn0sUWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9Oy8qCgogQ29weXJpZ2h0IFRoZSBDbG9zdXJlIExpYnJhcnkgQXV0aG9ycy4KIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCnZhciBSYT10aGlzfHxzZWxmLFNhPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYygpe31jLnByb3RvdHlwZT1iLnByb3RvdHlwZTthLkZ0PWIucHJvdG90eXBlO2EucHJvdG90eXBlPW5ldyBjO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7YS5udj1mdW5jdGlvbihkLGUsZil7Zm9yKHZhciBnPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMiksaD0yO2g8YXJndW1lbnRzLmxlbmd0aDtoKyspZ1toLTJdPWFyZ3VtZW50c1toXTtyZXR1cm4gYi5wcm90b3R5cGVbZV0uYXBwbHkoZCxnKX19O3ZhciBUYT1mdW5jdGlvbihhLGIpe3RoaXMudHlwZT1hO3RoaXMuZGF0YT1ifTt2YXIgVWE9ZnVuY3Rpb24oKXt0aGlzLm1hcD17fTt0aGlzLkg9e319O1VhLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubWFwWyJkdXN0LiIrYV19O1VhLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz0iZHVzdC4iK2E7dGhpcy5ILmhhc093blByb3BlcnR5KGMpfHwodGhpcy5tYXBbY109Yil9O1VhLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubWFwLmhhc093blByb3BlcnR5KCJkdXN0LiIrYSl9O1VhLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSl7dmFyIGI9ImR1c3QuIithO3RoaXMuSC5oYXNPd25Qcm9wZXJ0eShiKXx8ZGVsZXRlIHRoaXMubWFwW2JdfTsKdmFyIFZhPWZ1bmN0aW9uKGEsYil7dmFyIGM9W10sZDtmb3IoZCBpbiBhLm1hcClpZihhLm1hcC5oYXNPd25Qcm9wZXJ0eShkKSl7dmFyIGU9ZC5zdWJzdHJpbmcoNSk7c3dpdGNoKGIpe2Nhc2UgMTpjLnB1c2goZSk7YnJlYWs7Y2FzZSAyOmMucHVzaChhLm1hcFtkXSk7YnJlYWs7Y2FzZSAzOmMucHVzaChbZSxhLm1hcFtkXV0pfX1yZXR1cm4gY307VWEucHJvdG90eXBlLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIFZhKHRoaXMsMSl9O1VhLnByb3RvdHlwZS5oYz1mdW5jdGlvbigpe3JldHVybiBWYSh0aGlzLDIpfTtVYS5wcm90b3R5cGUuZmM9ZnVuY3Rpb24oKXtyZXR1cm4gVmEodGhpcywzKX07dmFyIFdhPWZ1bmN0aW9uKCl7fTtXYS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt9O3ZhciBYYT1mdW5jdGlvbigpe3RoaXMudmFsdWU9e307dGhpcy5wcmVmaXg9Imd0bS4ifTtrPVhhLnByb3RvdHlwZTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMudmFsdWVbdGhpcy5wcmVmaXgrU3RyaW5nKGEpXT1ifTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZVt0aGlzLnByZWZpeCtTdHJpbmcoYSldfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZS5oYXNPd25Qcm9wZXJ0eSh0aGlzLnByZWZpeCtTdHJpbmcoYSkpfTtrLmRlbGV0ZT1mdW5jdGlvbihhKXt2YXIgYj10aGlzLnByZWZpeCtTdHJpbmcoYSk7cmV0dXJuIHRoaXMudmFsdWUuaGFzT3duUHJvcGVydHkoYik/KGRlbGV0ZSB0aGlzLnZhbHVlW2JdLCEwKTohMX07ay5jbGVhcj1mdW5jdGlvbigpe3RoaXMudmFsdWU9e319OwprLnZhbHVlcz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7cmV0dXJuIGZ1bmN0aW9uIGMoKXt2YXIgZCxlLGY7cmV0dXJuIE5hKGMsZnVuY3Rpb24oZyl7c3dpdGNoKGcuSCl7Y2FzZSAxOmcudmcoMiksZT1nLmZlKGEudmFsdWUpO2Nhc2UgNDppZigoZD1lLmhvKCkpPT1udWxsKXtnLm5kKDIpO2JyZWFrfWlmKCFhLnZhbHVlLmhhc093blByb3BlcnR5KGQpKXtnLm5kKDQpO2JyZWFrfWY9UWE7cmV0dXJuIGcuYWMoYS52YWx1ZVtkXSw4KTtjYXNlIDg6ZihnLmphKTtnLm5kKDQpO2JyZWFrO2Nhc2UgMjpnLmtkKCksZy5oZSgwKX19KX0oKX07aGEuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoWGEucHJvdG90eXBlLHtzaXplOntjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmtleXModGhpcy52YWx1ZSkubGVuZ3RofX19KTsKZnVuY3Rpb24gWWEoKXt0cnl7aWYoTWFwKXJldHVybiBuZXcgTWFwfWNhdGNoKGEpe31yZXR1cm4gbmV3IFhhfTt2YXIgWmE9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlcz1bXX07WmEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXt0aGlzLnZhbHVlcy5pbmRleE9mKGEpPT09LTEmJnRoaXMudmFsdWVzLnB1c2goYSl9O1phLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVzLmluZGV4T2YoYSk+LTF9O3ZhciAkYT1mdW5jdGlvbihhLGIpe3RoaXMuZmE9YTt0aGlzLnBhcmVudD1iO3RoaXMuUj10aGlzLks9dm9pZCAwO3RoaXMuSGI9ITE7dGhpcy5OPWZ1bmN0aW9uKGQsZSxmKXtyZXR1cm4gZC5hcHBseShlLGYpfTt0aGlzLkg9WWEoKTt2YXIgYzthOnt0cnl7aWYoU2V0KXtjPW5ldyBTZXQ7YnJlYWsgYX19Y2F0Y2goZCl7fWM9bmV3IFphfXRoaXMuWj1jfTskYS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7YWIodGhpcyxhLGIsITEpfTskYS5wcm90b3R5cGUuUWg9ZnVuY3Rpb24oYSxiKXthYih0aGlzLGEsYiwhMCl9O3ZhciBhYj1mdW5jdGlvbihhLGIsYyxkKXthLkhifHxhLlouaGFzKGIpfHwoZCYmYS5aLmFkZChiKSxhLkguc2V0KGIsYykpfTtrPSRhLnByb3RvdHlwZTsKay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLkhifHwoIXRoaXMuSC5oYXMoYSkmJnRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXMoYSk/dGhpcy5wYXJlbnQuc2V0KGEsYik6dGhpcy5aLmhhcyhhKXx8dGhpcy5ILnNldChhLGIpKX07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuSC5oYXMoYSk/dGhpcy5ILmdldChhKTp0aGlzLnBhcmVudD90aGlzLnBhcmVudC5nZXQoYSk6dm9pZCAwfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4hIXRoaXMuSC5oYXMoYSl8fCEoIXRoaXMucGFyZW50fHwhdGhpcy5wYXJlbnQuaGFzKGEpKX07ay53Yj1mdW5jdGlvbigpe3ZhciBhPW5ldyAkYSh0aGlzLmZhLHRoaXMpO3RoaXMuSyYmYS5RYih0aGlzLkspO2Euc2QodGhpcy5OKTthLnVlKHRoaXMuUik7cmV0dXJuIGF9O2suamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5mYX07ay5RYj1mdW5jdGlvbihhKXt0aGlzLks9YX07ay5mbz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkt9OwprLnNkPWZ1bmN0aW9uKGEpe3RoaXMuTj1hfTtrLlBqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTn07ay5aYT1mdW5jdGlvbigpe3RoaXMuSGI9ITB9O2sudWU9ZnVuY3Rpb24oYSl7dGhpcy5SPWF9O2sueGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5SfTt2YXIgYmI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9RXJyb3IuY2FsbCh0aGlzLGEubWVzc2FnZSk7dGhpcy5tZXNzYWdlPWQubWVzc2FnZTsic3RhY2siaW4gZCYmKHRoaXMuc3RhY2s9ZC5zdGFjayk7dGhpcy52bz1hO3RoaXMuU249Yz09PXZvaWQgMD8hMTpjO3RoaXMuSz1bXTt0aGlzLkg9Yn07d2EoYmIsRXJyb3IpO3ZhciBjYj1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIGJiP2E6bmV3IGJiKGEsdm9pZCAwLCEwKX07dmFyIGRiPVlhKCk7ZnVuY3Rpb24gZWIoYSxiKXtmb3IodmFyIGMsZD1tKGIpLGU9ZC5uZXh0KCk7IWUuZG9uZSYmIShjPWZiKGEsZS52YWx1ZSksYyBpbnN0YW5jZW9mIFRhKTtlPWQubmV4dCgpKTtyZXR1cm4gY31mdW5jdGlvbiBmYihhLGIpe3RyeXt2YXIgYz1iWzBdLGQ9Yi5zbGljZSgxKSxlPVN0cmluZyhjKSxmPWRiLmhhcyhlKT9kYi5nZXQoZSk6YS5nZXQoZSk7aWYoIWZ8fHR5cGVvZiBmLmludm9rZSE9PSJmdW5jdGlvbiIpdGhyb3cgY2IoRXJyb3IoIkF0dGVtcHRpbmcgdG8gZXhlY3V0ZSBub24tZnVuY3Rpb24gIitiWzBdKyIuIikpO3JldHVybiBmLmFwcGx5KGEsZCl9Y2F0Y2goaCl7dmFyIGc9YS5mbygpO2cmJmcoaCxiLmNvbnRleHQ/e2lkOmJbMF0sbGluZTpiLmNvbnRleHQubGluZX06bnVsbCk7dGhyb3cgaDt9fTt2YXIgZ2I9ZnVuY3Rpb24oKXt0aGlzLks9bmV3IFdhO3RoaXMuSD1uZXcgJGEodGhpcy5LKX07az1nYi5wcm90b3R5cGU7ay5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkt9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5ILlFiKGEpfTtrLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSC5zZChhKX07ay5leGVjdXRlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnJrKFthXS5jb25jYXQodyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKSl9O2sucms9ZnVuY3Rpb24oKXtmb3IodmFyIGEsYj1tKE9hLmFwcGx5KDAsYXJndW1lbnRzKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYT1mYih0aGlzLkgsYy52YWx1ZSk7cmV0dXJuIGF9O2suSnE9ZnVuY3Rpb24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpLGM9dGhpcy5ILndiKCk7Yy51ZShhKTtmb3IodmFyIGQsZT1tKGIpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWQ9ZmIoYyxmLnZhbHVlKTtyZXR1cm4gZH07ay5aYT1mdW5jdGlvbigpe3RoaXMuSC5aYSgpfTt2YXIgaGI9ZnVuY3Rpb24oYSxiKXt0aGlzLlI9YTt0aGlzLnBhcmVudD1iO3RoaXMuTj10aGlzLkg9dm9pZCAwO3RoaXMuSGI9ITE7dGhpcy5LPWZ1bmN0aW9uKGMsZCxlKXtyZXR1cm4gYy5hcHBseShkLGUpfTt0aGlzLnZhbHVlcz1uZXcgVWF9O2hiLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSxiKXtqYih0aGlzLGEsYiwhMSl9O2hiLnByb3RvdHlwZS5RaD1mdW5jdGlvbihhLGIpe2piKHRoaXMsYSxiLCEwKX07dmFyIGpiPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCFhLkhiKWlmKGQpe3ZhciBlPWEudmFsdWVzO2Uuc2V0KGIsYyk7ZS5IWyJkdXN0LiIrYl09ITB9ZWxzZSBhLnZhbHVlcy5zZXQoYixjKX07az1oYi5wcm90b3R5cGU7ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLkhifHwoIXRoaXMudmFsdWVzLmhhcyhhKSYmdGhpcy5wYXJlbnQmJnRoaXMucGFyZW50LmhhcyhhKT90aGlzLnBhcmVudC5zZXQoYSxiKTp0aGlzLnZhbHVlcy5zZXQoYSxiKSl9OwprLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXMuaGFzKGEpP3RoaXMudmFsdWVzLmdldChhKTp0aGlzLnBhcmVudD90aGlzLnBhcmVudC5nZXQoYSk6dm9pZCAwfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4hIXRoaXMudmFsdWVzLmhhcyhhKXx8ISghdGhpcy5wYXJlbnR8fCF0aGlzLnBhcmVudC5oYXMoYSkpfTtrLndiPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IGhiKHRoaXMuUix0aGlzKTt0aGlzLkgmJmEuUWIodGhpcy5IKTthLnNkKHRoaXMuSyk7YS51ZSh0aGlzLk4pO3JldHVybiBhfTtrLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUn07ay5RYj1mdW5jdGlvbihhKXt0aGlzLkg9YX07ay5mbz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O2suc2Q9ZnVuY3Rpb24oYSl7dGhpcy5LPWF9O2suUGo9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5IYj0hMH07ay51ZT1mdW5jdGlvbihhKXt0aGlzLk49YX07ay54Yj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk59O3ZhciBrYj1mdW5jdGlvbigpe3RoaXMuTmE9ITE7dGhpcy5sYT1uZXcgVWF9O2s9a2IucHJvdG90eXBlO2suZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmdldChhKX07ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk5hfHx0aGlzLmxhLnNldChhLGIpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5oYXMoYSl9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe3RoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuRmEoKX07ay5oYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmhjKCl9O2suZmM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5mYygpfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07ay5IYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk5hfTtmdW5jdGlvbiBsYigpe2Zvcih2YXIgYT1tYixiPXt9LGM9MDtjPGEubGVuZ3RoOysrYyliW2FbY11dPWM7cmV0dXJuIGJ9ZnVuY3Rpb24gbmIoKXt2YXIgYT0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiO2ErPWEudG9Mb3dlckNhc2UoKSsiMDEyMzQ1Njc4OS1fIjtyZXR1cm4gYSsiLiJ9dmFyIG1iLG9iO2Z1bmN0aW9uIHBiKGEpe21iPW1ifHxuYigpO29iPW9ifHxsYigpO2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKz0zKXt2YXIgZD1jKzE8YS5sZW5ndGgsZT1jKzI8YS5sZW5ndGgsZj1hLmNoYXJDb2RlQXQoYyksZz1kP2EuY2hhckNvZGVBdChjKzEpOjAsaD1lP2EuY2hhckNvZGVBdChjKzIpOjAsbD1mPj4yLG49KGYmMyk8PDR8Zz4+NCxwPShnJjE1KTw8MnxoPj42LHE9aCY2MztlfHwocT02NCxkfHwocD02NCkpO2IucHVzaChtYltsXSxtYltuXSxtYltwXSxtYltxXSl9cmV0dXJuIGIuam9pbigiIil9CmZ1bmN0aW9uIHFiKGEpe2Z1bmN0aW9uIGIobCl7Zm9yKDtkPGEubGVuZ3RoOyl7dmFyIG49YS5jaGFyQXQoZCsrKSxwPW9iW25dO2lmKHAhPW51bGwpcmV0dXJuIHA7aWYoIS9eW1xzXHhhMF0qJC8udGVzdChuKSl0aHJvdyBFcnJvcigiVW5rbm93biBiYXNlNjQgZW5jb2RpbmcgYXQgY2hhcjogIituKTt9cmV0dXJuIGx9bWI9bWJ8fG5iKCk7b2I9b2J8fGxiKCk7Zm9yKHZhciBjPSIiLGQ9MDs7KXt2YXIgZT1iKC0xKSxmPWIoMCksZz1iKDY0KSxoPWIoNjQpO2lmKGg9PT02NCYmZT09PS0xKXJldHVybiBjO2MrPVN0cmluZy5mcm9tQ2hhckNvZGUoZTw8MnxmPj40KTtnIT09NjQmJihjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGY8PDQmMjQwfGc+PjIpLGghPT02NCYmKGMrPVN0cmluZy5mcm9tQ2hhckNvZGUoZzw8NiYxOTJ8aCkpKX19O3ZhciByYj17fTtmdW5jdGlvbiBzYihhLGIpe3ZhciBjPXJiW2FdO2N8fChjPXJiW2FdPVtdKTtjW2JdPSEwfWZ1bmN0aW9uIHRiKCl7ZGVsZXRlIHJiLkdBNF9FVkVOVH1mdW5jdGlvbiB1Yigpe3ZhciBhPXZiLkguc2xpY2UoKTtyYi5HVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTD1hfWZ1bmN0aW9uIHdiKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKWQlOD09PTAmJmQ+MCYmKGIucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGMpKSxjPTApLGFbZF0mJihjfD0xPDxkJTgpO2M+MCYmYi5wdXNoKFN0cmluZy5mcm9tQ2hhckNvZGUoYykpO3JldHVybiBwYihiLmpvaW4oIiIpKS5yZXBsYWNlKC9cLiskLywiIil9O2Z1bmN0aW9uIHhiKCl7fWZ1bmN0aW9uIHliKGEpe3JldHVybiB0eXBlb2YgYT09PSJmdW5jdGlvbiJ9ZnVuY3Rpb24gemIoYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyJ9ZnVuY3Rpb24gQWIoYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciImJiFpc05hTihhKX1mdW5jdGlvbiBCYihhKXtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hOlthXX1mdW5jdGlvbiBDYihhLGIpe2lmKGEmJkFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSYmYihhW2NdKSlyZXR1cm4gYVtjXX1mdW5jdGlvbiBEYihhLGIpe2lmKCFBYihhKXx8IUFiKGIpfHxhPmIpYT0wLGI9MjE0NzQ4MzY0NztyZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKihiLWErMSkrYSl9CmZ1bmN0aW9uIEViKGEsYil7Zm9yKHZhciBjPW5ldyBGYixkPTA7ZDxhLmxlbmd0aDtkKyspYy5zZXQoYVtkXSwhMCk7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDtlKyspaWYoYy5nZXQoYltlXSkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gR2IoYSxiKXtmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihjLGFbY10pfWZ1bmN0aW9uIEhiKGEpe3JldHVybiEhYSYmKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChhKT09PSJbb2JqZWN0IEFyZ3VtZW50c10ifHxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSwiY2FsbGVlIikpfWZ1bmN0aW9uIEliKGEpe3JldHVybiBNYXRoLnJvdW5kKE51bWJlcihhKSl8fDB9ZnVuY3Rpb24gSmIoYSl7cmV0dXJuImZhbHNlIj09PVN0cmluZyhhKS50b0xvd2VyQ2FzZSgpPyExOiEhYX0KZnVuY3Rpb24gS2IoYSl7dmFyIGI9W107aWYoQXJyYXkuaXNBcnJheShhKSlmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKyliLnB1c2goU3RyaW5nKGFbY10pKTtyZXR1cm4gYn1mdW5jdGlvbiBMYihhKXtyZXR1cm4gYT9hLnJlcGxhY2UoL15ccyt8XHMrJC9nLCIiKToiIn1mdW5jdGlvbiBNYigpe3JldHVybiBuZXcgRGF0ZShEYXRlLm5vdygpKX1mdW5jdGlvbiBOYigpe3JldHVybiBNYigpLmdldFRpbWUoKX12YXIgRmI9ZnVuY3Rpb24oKXt0aGlzLnByZWZpeD0iZ3RtLiI7dGhpcy52YWx1ZXM9e319O0ZiLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnZhbHVlc1t0aGlzLnByZWZpeCthXT1ifTtGYi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnZhbHVlc1t0aGlzLnByZWZpeCthXX07RmIucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmdldChhKSE9PXZvaWQgMH07CmZ1bmN0aW9uIE9iKGEsYixjKXtyZXR1cm4gYSYmYS5oYXNPd25Qcm9wZXJ0eShiKT9hW2JdOmN9ZnVuY3Rpb24gUGIoYSl7dmFyIGI9YTtyZXR1cm4gZnVuY3Rpb24oKXtpZihiKXt2YXIgYz1iO2I9dm9pZCAwO3RyeXtjKCl9Y2F0Y2goZCl7fX19fWZ1bmN0aW9uIFFiKGEsYil7Zm9yKHZhciBjIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShjKSYmKGFbY109YltjXSl9ZnVuY3Rpb24gUmIoYSxiKXtmb3IodmFyIGM9W10sZD0wO2Q8YS5sZW5ndGg7ZCsrKWMucHVzaChhW2RdKSxjLnB1c2guYXBwbHkoYyxiW2FbZF1dfHxbXSk7cmV0dXJuIGN9ZnVuY3Rpb24gU2IoYSxiKXtyZXR1cm4gYS5sZW5ndGg+PWIubGVuZ3RoJiZhLnN1YnN0cmluZygwLGIubGVuZ3RoKT09PWJ9ZnVuY3Rpb24gVGIoYSxiKXtyZXR1cm4gYS5sZW5ndGg+PWIubGVuZ3RoJiZhLnN1YnN0cmluZyhhLmxlbmd0aC1iLmxlbmd0aCxhLmxlbmd0aCk9PT1ifQpmdW5jdGlvbiBVYihhLGIsYyl7Yz1jfHxbXTtmb3IodmFyIGQ9YSxlPTA7ZTxiLmxlbmd0aC0xO2UrKyl7aWYoIWQuaGFzT3duUHJvcGVydHkoYltlXSkpcmV0dXJuO2Q9ZFtiW2VdXTtpZihjLmluZGV4T2YoZCk+PTApcmV0dXJufXJldHVybiBkfWZ1bmN0aW9uIFZiKGEsYil7Zm9yKHZhciBjPXt9LGQ9YyxlPWEuc3BsaXQoIi4iKSxmPTA7ZjxlLmxlbmd0aC0xO2YrKylkPWRbZVtmXV09e307ZFtlW2UubGVuZ3RoLTFdXT1iO3JldHVybiBjfXZhciBXYj0vXlx3ezEsOX0kLztmdW5jdGlvbiBZYihhLGIpe2E9YXx8e307Yj1ifHwiLCI7dmFyIGM9W107R2IoYSxmdW5jdGlvbihkLGUpe1diLnRlc3QoZCkmJmUmJmMucHVzaChkKX0pO3JldHVybiBjLmpvaW4oYil9CmZ1bmN0aW9uIFpiKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWEuY2hhckNvZGVBdChjKTtkPDEyOD9iLnB1c2goZCk6ZDwyMDQ4P2IucHVzaCgxOTJ8ZD4+NiwxMjh8ZCY2Myk6ZDw1NTI5Nnx8ZD49NTczNDQ/Yi5wdXNoKDIyNHxkPj4xMiwxMjh8ZD4+NiY2MywxMjh8ZCY2Myk6KGQ9NjU1MzYrKChkJjEwMjMpPDwxMHxhLmNoYXJDb2RlQXQoKytjKSYxMDIzKSxiLnB1c2goMjQwfGQ+PjE4LDEyOHxkPj4xMiY2MywxMjh8ZD4+NiY2MywxMjh8ZCY2MykpfXJldHVybiBuZXcgVWludDhBcnJheShiKX1mdW5jdGlvbiAkYihhKXtpZighYSlyZXR1cm4gYTt2YXIgYj1hO3RyeXtiPWRlY29kZVVSSUNvbXBvbmVudChhKX1jYXRjaChkKXt9dmFyIGM9Yi5zcGxpdCgiLCIpO3JldHVybiBjLmxlbmd0aD09PTImJmNbMF09PT1jWzFdP2NbMF06YX0KZnVuY3Rpb24gYWMoYSxiLGMpe2Z1bmN0aW9uIGQobil7dmFyIHA9bi5zcGxpdCgiPSIpWzBdO2lmKGEuaW5kZXhPZihwKTwwKXJldHVybiBuO2lmKGMhPT12b2lkIDApcmV0dXJuIHArIj0iK2N9ZnVuY3Rpb24gZShuKXtyZXR1cm4gbi5zcGxpdCgiJiIpLm1hcChkKS5maWx0ZXIoZnVuY3Rpb24ocCl7cmV0dXJuIHAhPT12b2lkIDB9KS5qb2luKCImIil9dmFyIGY9Yi5ocmVmLnNwbGl0KC9bPyNdLylbMF0sZz1iLnNlYXJjaCxoPWIuaGFzaDtnWzBdPT09Ij8iJiYoZz1nLnN1YnN0cmluZygxKSk7aFswXT09PSIjIiYmKGg9aC5zdWJzdHJpbmcoMSkpO2c9ZShnKTtoPWUoaCk7ZyE9PSIiJiYoZz0iPyIrZyk7aCE9PSIiJiYoaD0iIyIraCk7dmFyIGw9IiIrZitnK2g7bFtsLmxlbmd0aC0xXT09PSIvIiYmKGw9bC5zdWJzdHJpbmcoMCxsLmxlbmd0aC0xKSk7cmV0dXJuIGx9CmZ1bmN0aW9uIGJjKGEpe2Zvcih2YXIgYj0wO2I8MzsrK2IpdHJ5e3ZhciBjPWRlY29kZVVSSUNvbXBvbmVudChhKS5yZXBsYWNlKC9cKy9nLCIgIik7aWYoYz09PWEpYnJlYWs7YT1jfWNhdGNoKGQpe3JldHVybiIifXJldHVybiBhfWZ1bmN0aW9uIGNjKCl7dmFyIGE9QSxiO2E6e3ZhciBjPWEuY3J5cHRvfHxhLm1zQ3J5cHRvO2lmKGMmJmMuZ2V0UmFuZG9tVmFsdWVzKXRyeXt2YXIgZD1uZXcgVWludDhBcnJheSgyNSk7Yy5nZXRSYW5kb21WYWx1ZXMoZCk7Yj1idG9hKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLHcoZCkpKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpO2JyZWFrIGF9Y2F0Y2goZSl7fWI9dm9pZCAwfXJldHVybiBifTsvKgoKIENvcHlyaWdodCBHb29nbGUgTExDCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgZGM9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsZWM7ZnVuY3Rpb24gZmMoKXt2YXIgYT1udWxsO2lmKCFkYylyZXR1cm4gYTt0cnl7dmFyIGI9ZnVuY3Rpb24oYyl7cmV0dXJuIGN9O2E9ZGMuY3JlYXRlUG9saWN5KCJnb29nI2h0bWwiLHtjcmVhdGVIVE1MOmIsY3JlYXRlU2NyaXB0OmIsY3JlYXRlU2NyaXB0VVJMOmJ9KX1jYXRjaChjKXt9cmV0dXJuIGF9ZnVuY3Rpb24gaGMoKXtlYz09PXZvaWQgMCYmKGVjPWZjKCkpO3JldHVybiBlY307dmFyIGljPWZ1bmN0aW9uKGEpe3RoaXMuSD1hfTtpYy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IKyIifTtmdW5jdGlvbiBqYyhhKXt2YXIgYj1hLGM9aGMoKSxkPWM/Yy5jcmVhdGVTY3JpcHRVUkwoYik6YjtyZXR1cm4gbmV3IGljKGQpfWZ1bmN0aW9uIGtjKGEpe2lmKGEgaW5zdGFuY2VvZiBpYylyZXR1cm4gYS5IO3Rocm93IEVycm9yKCIiKTt9O3ZhciBsYz1BYShbIiJdKSxtYz16YShbIlx4MDAiXSxbIlxcMCJdKSxuYz16YShbIlxuIl0sWyJcXG4iXSksb2M9emEoWyJceDAwIl0sWyJcXHUwMDAwIl0pO2Z1bmN0aW9uIHBjKGEpe3JldHVybiBhLnRvU3RyaW5nKCkuaW5kZXhPZigiYCIpPT09LTF9cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEobGMpfSl8fHBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKG1jKX0pfHxwYyhmdW5jdGlvbihhKXtyZXR1cm4gYShuYyl9KXx8cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEob2MpfSk7dmFyIHFjPWZ1bmN0aW9uKGEpe3RoaXMuSD1hfTtxYy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IfTt2YXIgcmM9ZnVuY3Rpb24oYSl7dGhpcy5Kcz1hfTtmdW5jdGlvbiBzYyhhKXtyZXR1cm4gbmV3IHJjKGZ1bmN0aW9uKGIpe3JldHVybiBiLnN1YnN0cigwLGEubGVuZ3RoKzEpLnRvTG93ZXJDYXNlKCk9PT1hKyI6In0pfXZhciB0Yz1bc2MoImRhdGEiKSxzYygiaHR0cCIpLHNjKCJodHRwcyIpLHNjKCJtYWlsdG8iKSxzYygiZnRwIiksbmV3IHJjKGZ1bmN0aW9uKGEpe3JldHVybi9eW146XSooWy8/I118JCkvLnRlc3QoYSl9KV07ZnVuY3Rpb24gdWMoYSl7dmFyIGI7Yj1iPT09dm9pZCAwP3RjOmI7aWYoYSBpbnN0YW5jZW9mIHFjKXJldHVybiBhO2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKXt2YXIgZD1iW2NdO2lmKGQgaW5zdGFuY2VvZiByYyYmZC5KcyhhKSlyZXR1cm4gbmV3IHFjKGEpfX12YXIgdmM9L15ccyooPyFqYXZhc2NyaXB0OikoPzpbXHcrLi1dKzp8W146Lz8jXSooPzpbLz8jXXwkKSkvaTsKZnVuY3Rpb24gd2MoYSl7dmFyIGI7aWYoYSBpbnN0YW5jZW9mIHFjKWlmKGEgaW5zdGFuY2VvZiBxYyliPWEuSDtlbHNlIHRocm93IEVycm9yKCIiKTtlbHNlIGI9dmMudGVzdChhKT9hOnZvaWQgMDtyZXR1cm4gYn07ZnVuY3Rpb24geGMoYSxiKXt2YXIgYz13YyhiKTtjIT09dm9pZCAwJiYoYS5hY3Rpb249Yyl9O2Z1bmN0aW9uIHljKGEsYil7dGhyb3cgRXJyb3IoYj09PXZvaWQgMD8idW5leHBlY3RlZCB2YWx1ZSAiK2ErIiEiOmIpO307dmFyIHpjPWZ1bmN0aW9uKGEpe3RoaXMuSD1hfTt6Yy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IKyIifTt2YXIgQmM9ZnVuY3Rpb24oKXt0aGlzLkg9QWNbMF0udG9Mb3dlckNhc2UoKX07QmMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07ZnVuY3Rpb24gQ2MoYSxiKXt2YXIgYz1bbmV3IEJjXTtpZihjLmxlbmd0aD09PTApdGhyb3cgRXJyb3IoIiIpO3ZhciBkPWMubWFwKGZ1bmN0aW9uKGYpe3ZhciBnO2lmKGYgaW5zdGFuY2VvZiBCYylnPWYuSDtlbHNlIHRocm93IEVycm9yKCIiKTtyZXR1cm4gZ30pLGU9Yi50b0xvd2VyQ2FzZSgpO2lmKGQuZXZlcnkoZnVuY3Rpb24oZil7cmV0dXJuIGUuaW5kZXhPZihmKSE9PTB9KSl0aHJvdyBFcnJvcignQXR0cmlidXRlICInK2IrJyIgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSBhbGxvd2VkIHByZWZpeGVzLicpO2Euc2V0QXR0cmlidXRlKGIsInRydWUiKX07dmFyIERjPUFycmF5LnByb3RvdHlwZS5pbmRleE9mP2Z1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoYSxiLHZvaWQgMCl9OmZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm4gdHlwZW9mIGIhPT0ic3RyaW5nInx8Yi5sZW5ndGghPTE/LTE6YS5pbmRleE9mKGIsMCk7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYyBpbiBhJiZhW2NdPT09YilyZXR1cm4gYztyZXR1cm4tMX07IkFSVElDTEUgU0VDVElPTiBOQVYgQVNJREUgSDEgSDIgSDMgSDQgSDUgSDYgSEVBREVSIEZPT1RFUiBBRERSRVNTIFAgSFIgUFJFIEJMT0NLUVVPVEUgT0wgVUwgTEggTEkgREwgRFQgREQgRklHVVJFIEZJR0NBUFRJT04gTUFJTiBESVYgRU0gU1RST05HIFNNQUxMIFMgQ0lURSBRIERGTiBBQkJSIFJVQlkgUkIgUlQgUlRDIFJQIERBVEEgVElNRSBDT0RFIFZBUiBTQU1QIEtCRCBTVUIgU1VQIEkgQiBVIE1BUksgQkRJIEJETyBTUEFOIEJSIFdCUiBOT0JSIElOUyBERUwgUElDVFVSRSBQQVJBTSBUUkFDSyBNQVAgVEFCTEUgQ0FQVElPTiBDT0xHUk9VUCBDT0wgVEJPRFkgVEhFQUQgVEZPT1QgVFIgVEQgVEggU0VMRUNUIERBVEFMSVNUIE9QVEdST1VQIE9QVElPTiBPVVRQVVQgUFJPR1JFU1MgTUVURVIgRklFTERTRVQgTEVHRU5EIERFVEFJTFMgU1VNTUFSWSBNRU5VIERJQUxPRyBTTE9UIENBTlZBUyBGT05UIENFTlRFUiBBQ1JPTllNIEJBU0VGT05UIEJJRyBESVIgSEdST1VQIFNUUklLRSBUVCIuc3BsaXQoIiAiKS5jb25jYXQoWyJCVVRUT04iLAoiSU5QVVQiXSk7ZnVuY3Rpb24gRWMoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmF9O3ZhciBBPXdpbmRvdyxGYz1bXSxHYz13aW5kb3cuaGlzdG9yeSxCPWRvY3VtZW50LEhjPW5hdmlnYXRvcjtmdW5jdGlvbiBJYygpe3ZhciBhO3RyeXthPUhjLnNlcnZpY2VXb3JrZXJ9Y2F0Y2goYil7cmV0dXJufXJldHVybiBhfXZhciBKYz1CLmN1cnJlbnRTY3JpcHQsS2M9SmMmJkpjLnNyYztmdW5jdGlvbiBNYyhhLGIpe3ZhciBjPUEsZD1jW2FdO2NbYV09ZD09PXZvaWQgMD9iOmQ7cmV0dXJuIGNbYV19ZnVuY3Rpb24gTmMoYSl7cmV0dXJuKEhjLnVzZXJBZ2VudHx8IiIpLmluZGV4T2YoYSkhPT0tMX1mdW5jdGlvbiBPYygpe3JldHVybiBOYygiRmlyZWZveCIpfHxOYygiRnhpT1MiKX1mdW5jdGlvbiBQYygpe3JldHVybihOYygiR1NBIil8fE5jKCJHb29nbGVBcHAiKSkmJihOYygiaVBob25lIil8fE5jKCJpUGFkIikpfWZ1bmN0aW9uIFFjKCl7cmV0dXJuIE5jKCJFZGcvIil8fE5jKCJFZGdBLyIpfHxOYygiRWRnaU9TLyIpfQp2YXIgUmM9e2FzeW5jOjEsbm9uY2U6MSxvbmVycm9yOjEsb25sb2FkOjEsc3JjOjEsdHlwZToxfSxTYz17aGVpZ2h0OjEsb25sb2FkOjEsc3JjOjEsc3R5bGU6MSx3aWR0aDoxfTtmdW5jdGlvbiBUYyhhLGIsYyl7YiYmR2IoYixmdW5jdGlvbihkLGUpe2Q9ZC50b0xvd2VyQ2FzZSgpO2MuaGFzT3duUHJvcGVydHkoZCl8fGEuc2V0QXR0cmlidXRlKGQsZSl9KX0KZnVuY3Rpb24gVWMoYSxiLGMsZCxlKXt2YXIgZj1CLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO1RjKGYsZCxSYyk7Zi50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiO2YuYXN5bmM9ZCYmZC5hc3luYz09PSExPyExOiEwO3ZhciBnO2c9amMoRWMoYSkpO2Yuc3JjPWtjKGcpO3ZhciBoLGw9Zi5vd25lckRvY3VtZW50O2w9bD09PXZvaWQgMD9kb2N1bWVudDpsO3ZhciBuLHAscT0ocD0obj1sKS5xdWVyeVNlbGVjdG9yKT09bnVsbD92b2lkIDA6cC5jYWxsKG4sInNjcmlwdFtub25jZV0iKTsoaD1xPT1udWxsPyIiOnEubm9uY2V8fHEuZ2V0QXR0cmlidXRlKCJub25jZSIpfHwiIikmJmYuc2V0QXR0cmlidXRlKCJub25jZSIsaCk7YiYmKGYub25sb2FkPWIpO2MmJihmLm9uZXJyb3I9Yyk7ZT9lLmFwcGVuZENoaWxkKGYpOlZjLkJzKGYpO3JldHVybiBmfQpmdW5jdGlvbiBXYygpe2lmKEtjKXt2YXIgYT1LYy50b0xvd2VyQ2FzZSgpO2lmKGEuaW5kZXhPZigiaHR0cHM6Ly8iKT09PTApcmV0dXJuIDI7aWYoYS5pbmRleE9mKCJodHRwOi8vIik9PT0wKXJldHVybiAzfXJldHVybiAxfWZ1bmN0aW9uIFhjKGEsYixjLGQsZSxmKXtmPWY9PT12b2lkIDA/ITA6Zjt2YXIgZz1lLGg9ITE7Z3x8KGc9Qi5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSxoPSEwKTtUYyhnLGMsU2MpO2QmJkdiKGQsZnVuY3Rpb24obixwKXtnLmRhdGFzZXRbbl09cH0pO2YmJihnLmhlaWdodD0iMCIsZy53aWR0aD0iMCIsZy5zdHlsZS5kaXNwbGF5PSJub25lIixnLnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiIpO2EhPT12b2lkIDAmJihnLnNyYz1hKTtpZihoKXt2YXIgbD1CLmJvZHkmJkIuYm9keS5sYXN0Q2hpbGR8fEIuYm9keXx8Qi5oZWFkO2wucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZyxsKX1iJiYoZy5vbmxvYWQ9Yik7cmV0dXJuIGd9CmZ1bmN0aW9uIFpjKCl7cmV0dXJuIFZjLkVyLmFwcGx5KFZjLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9ZnVuY3Rpb24gJGMoYSxiLGMsZCl7YS5hZGRFdmVudExpc3RlbmVyJiZhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCEhZCl9ZnVuY3Rpb24gYWQoYSxiLGMpe2EucmVtb3ZlRXZlbnRMaXN0ZW5lciYmYS5yZW1vdmVFdmVudExpc3RlbmVyKGIsYywhMSl9ZnVuY3Rpb24gYmQoYSl7QS5zZXRUaW1lb3V0KGEsMCl9ZnVuY3Rpb24gY2QoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZCxlPShkPUEpLnNldEludGVydmFsLmFwcGx5KGQsW2EsYl0uY29uY2F0KHcoYykpKTtGYy5wdXNoKGUpO3JldHVybiBlfQpmdW5jdGlvbiBkZChhKXt2YXIgYj1BO3liKGIucXVldWVNaWNyb3Rhc2spP2IucXVldWVNaWNyb3Rhc2soYSk6eWIoYi5Qcm9taXNlKSYmYi5Qcm9taXNlLnJlc29sdmU/Yi5Qcm9taXNlLnJlc29sdmUoKS50aGVuKGZ1bmN0aW9uKCl7YSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt9KTpiZChhKX1mdW5jdGlvbiBlZChhLGIpe3JldHVybiBhJiZiJiZhLmF0dHJpYnV0ZXMmJmEuYXR0cmlidXRlc1tiXT9hLmF0dHJpYnV0ZXNbYl0udmFsdWU6bnVsbH1mdW5jdGlvbiBmZChhKXt2YXIgYj1hLmlubmVyVGV4dHx8YS50ZXh0Q29udGVudHx8IiI7YiYmYiE9PSIgIiYmKGI9Yi5yZXBsYWNlKC9eW1xzXHhhMF0rL2csIiIpLGI9Yi5yZXBsYWNlKC9bXHNceGEwXSskL2csIiIpKTtiJiYoYj1iLnJlcGxhY2UoLyhceGEwK3xcc3syLH18XG58XHJcdCkvZywiICIpKTtyZXR1cm4gYn0KZnVuY3Rpb24gZ2QoYSl7dmFyIGI9Qi5jcmVhdGVFbGVtZW50KCJkaXYiKSxjPWIsZCxlPUVjKCJBPGRpdj4iK2ErIjwvZGl2PiIpLGY9aGMoKSxnPWY/Zi5jcmVhdGVIVE1MKGUpOmU7ZD1uZXcgemMoZyk7aWYoYy5ub2RlVHlwZT09PTEmJi9eKHNjcmlwdHxzdHlsZSkkL2kudGVzdChjLnRhZ05hbWUpKXRocm93IEVycm9yKCIiKTt2YXIgaDtpZihkIGluc3RhbmNlb2YgemMpaD1kLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7Yy5pbm5lckhUTUw9aDtiPWIubGFzdENoaWxkO2Zvcih2YXIgbD1bXTtiJiZiLmZpcnN0Q2hpbGQ7KWwucHVzaChiLnJlbW92ZUNoaWxkKGIuZmlyc3RDaGlsZCkpO3JldHVybiBsfQpmdW5jdGlvbiBoZChhLGIsYyl7Yz1jfHwxMDA7Zm9yKHZhciBkPXt9LGU9MDtlPGIubGVuZ3RoO2UrKylkW2JbZV1dPSEwO2Zvcih2YXIgZj1hLGc9MDtmJiZnPD1jO2crKyl7aWYoZFtTdHJpbmcoZi50YWdOYW1lKS50b0xvd2VyQ2FzZSgpXSlyZXR1cm4gZjtmPWYucGFyZW50RWxlbWVudH1yZXR1cm4gbnVsbH1mdW5jdGlvbiBpZChhLGIsYyl7dmFyIGQ7dHJ5e2Q9SGMuc2VuZEJlYWNvbiYmSGMuc2VuZEJlYWNvbihhKX1jYXRjaChlKXtzYigiVEFHR0lORyIsMTUpfWQ/Yj09bnVsbHx8YigpOlpjKGEsYixjKX1mdW5jdGlvbiBqZChhLGIpe3RyeXtpZihIYy5zZW5kQmVhY29uIT09dm9pZCAwKXJldHVybiBIYy5zZW5kQmVhY29uKGEsYil9Y2F0Y2goYyl7c2IoIlRBR0dJTkciLDE1KX1yZXR1cm4hMX1mdW5jdGlvbiBrZCgpe3JldHVybiBIYy5zZW5kQmVhY29uIT09dm9pZCAwfQp2YXIgbGQ9e2NhY2hlOiJuby1zdG9yZSIsY3JlZGVudGlhbHM6ImluY2x1ZGUiLGtlZXBhbGl2ZTohMCxtZXRob2Q6IlBPU1QiLG1vZGU6Im5vLWNvcnMiLHJlZGlyZWN0OiJmb2xsb3cifTsKZnVuY3Rpb24gbWQoYSxiLGMsZCxlKXtpZihuZCgpKXt2YXIgZj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtiJiYoZi5ib2R5PWIpO2MmJihjLmF0dHJpYnV0aW9uUmVwb3J0aW5nJiYoZi5hdHRyaWJ1dGlvblJlcG9ydGluZz1jLmF0dHJpYnV0aW9uUmVwb3J0aW5nKSxjLmJyb3dzaW5nVG9waWNzIT09dm9pZCAwJiYoZi5icm93c2luZ1RvcGljcz1jLmJyb3dzaW5nVG9waWNzKSxjLmNyZWRlbnRpYWxzJiYoZi5jcmVkZW50aWFscz1jLmNyZWRlbnRpYWxzKSxjLmtlZXBhbGl2ZSE9PXZvaWQgMCYmKGYua2VlcGFsaXZlPWMua2VlcGFsaXZlKSxjLm1ldGhvZCYmKGYubWV0aG9kPWMubWV0aG9kKSxjLm1vZGUmJihmLm1vZGU9Yy5tb2RlKSk7dHJ5e3ZhciBnPUEuZmV0Y2goYSxmKTtpZihnKXJldHVybiBnLnRoZW4oZnVuY3Rpb24obCl7bCYmKGwub2t8fGwuc3RhdHVzPT09MCk/ZD09bnVsbHx8ZCgpOmU9PW51bGx8fGUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZT09Cm51bGx8fGUoKX0pLCEwfWNhdGNoKGwpe319aWYoKGM9PW51bGw/MDpjLlFnKXx8KGM9PW51bGw/MDpjLmNyZWRlbnRpYWxzKSYmYy5jcmVkZW50aWFscyE9PSJpbmNsdWRlIilyZXR1cm4gZT09bnVsbHx8ZSgpLCExO2lmKGIpe3ZhciBoPWpkKGEsYik7aD9kPT1udWxsfHxkKCk6ZT09bnVsbHx8ZSgpO3JldHVybiBofVZjLnd0KGEsZCxlKTtyZXR1cm4hMH1mdW5jdGlvbiBuZCgpe3JldHVybiB5YihBLmZldGNoKX1mdW5jdGlvbiBvZChhLGIpe3ZhciBjPWFbYl07YyYmdHlwZW9mIGMuYW5pbVZhbD09PSJzdHJpbmciJiYoYz1jLmFuaW1WYWwpO3JldHVybiBjfWZ1bmN0aW9uIHBkKCl7dmFyIGE9QS5wZXJmb3JtYW5jZTtpZihhJiZ5YihhLm5vdykpcmV0dXJuIGEubm93KCl9CmZ1bmN0aW9uIHFkKCl7dmFyIGEsYj1BLnBlcmZvcm1hbmNlO2lmKGImJmIuZ2V0RW50cmllc0J5VHlwZSl0cnl7dmFyIGM9Yi5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIik7YyYmYy5sZW5ndGg+MCYmKGE9Y1swXS50eXBlKX1jYXRjaChkKXtyZXR1cm4iZSJ9aWYoIWEpcmV0dXJuInUiO3N3aXRjaChhKXtjYXNlICJuYXZpZ2F0ZSI6cmV0dXJuIm4iO2Nhc2UgImJhY2tfZm9yd2FyZCI6cmV0dXJuImgiO2Nhc2UgInJlbG9hZCI6cmV0dXJuInIiO2Nhc2UgInByZXJlbmRlciI6cmV0dXJuInAiO2RlZmF1bHQ6cmV0dXJuIngifX1mdW5jdGlvbiByZCgpe3JldHVybiBBLnBlcmZvcm1hbmNlfHx2b2lkIDB9ZnVuY3Rpb24gc2QoKXt2YXIgYT1BLndlYlBpeGVsc01hbmFnZXI7cmV0dXJuIGE/YS5jcmVhdGVTaG9waWZ5RXh0ZW5kIT09dm9pZCAwOiExfQp2YXIgVmM9e0VyOmZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPW5ldyBJbWFnZSgxLDEpO1RjKGUsZCx7fSk7ZS5vbmxvYWQ9ZnVuY3Rpb24oKXtlLm9ubG9hZD1udWxsO2ImJmIoKX07ZS5vbmVycm9yPWZ1bmN0aW9uKCl7ZS5vbmVycm9yPW51bGw7YyYmYygpfTtlLnNyYz1hO3JldHVybiBlfSxCczpmdW5jdGlvbihhKXt2YXIgYj1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXXx8Qi5ib2R5fHxCLmhlYWQ7Yi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLGIpfSx3dDppZH07ZnVuY3Rpb24gdGQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSYmdGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB1ZChhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPT09dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB2ZChhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpfHx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIHdkKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7cmV0dXJuIFN0cmluZyhjKS5pbmRleE9mKFN0cmluZyhkKSk+LTF9ZnVuY3Rpb24geGQoYSxiKXt2YXIgYz1TdHJpbmcodGhpcy5ldmFsdWF0ZShhKSksZD1TdHJpbmcodGhpcy5ldmFsdWF0ZShiKSk7cmV0dXJuIGMuc3Vic3RyaW5nKDAsZC5sZW5ndGgpPT09ZH0KZnVuY3Rpb24geWQoYSxiKXt2YXIgYz10aGlzLmV2YWx1YXRlKGEpLGQ9dGhpcy5ldmFsdWF0ZShiKTtzd2l0Y2goYyl7Y2FzZSAicGFnZUxvY2F0aW9uIjp2YXIgZT1BLmxvY2F0aW9uLmhyZWY7ZCBpbnN0YW5jZW9mIGtiJiZkLmdldCgic3RyaXBQcm90b2NvbCIpJiYoZT1lLnJlcGxhY2UoL15odHRwcz86XC9cLy8sIiIpKTtyZXR1cm4gZX19Oy8qCiBqUXVlcnkgKGMpIDIwMDUsIDIwMTIgalF1ZXJ5IEZvdW5kYXRpb24sIEluYy4ganF1ZXJ5Lm9yZy9saWNlbnNlLgoqLwp2YXIgemQ9L1xbb2JqZWN0IChCb29sZWFufE51bWJlcnxTdHJpbmd8RnVuY3Rpb258QXJyYXl8RGF0ZXxSZWdFeHApXF0vLEFkPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIFN0cmluZyhhKTt2YXIgYj16ZC5leGVjKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChPYmplY3QoYSkpKTtyZXR1cm4gYj9iWzFdLnRvTG93ZXJDYXNlKCk6Im9iamVjdCJ9LEJkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChPYmplY3QoYSksYil9LENkPWZ1bmN0aW9uKGEpe2lmKCFhfHxBZChhKSE9Im9iamVjdCJ8fGEubm9kZVR5cGV8fGE9PWEud2luZG93KXJldHVybiExO3RyeXtpZihhLmNvbnN0cnVjdG9yJiYhQmQoYSwiY29uc3RydWN0b3IiKSYmIUJkKGEuY29uc3RydWN0b3IucHJvdG90eXBlLCJpc1Byb3RvdHlwZU9mIikpcmV0dXJuITF9Y2F0Y2goYyl7cmV0dXJuITF9Zm9yKHZhciBiIGluIGEpO3JldHVybiBiPT09dm9pZCAwfHwKQmQoYSxiKX0sRWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1ifHwoQWQoYSk9PSJhcnJheSI/W106e30pLGQ7Zm9yKGQgaW4gYSlpZihCZChhLGQpKXt2YXIgZT1hW2RdO0FkKGUpPT0iYXJyYXkiPyhBZChjW2RdKSE9ImFycmF5IiYmKGNbZF09W10pLGNbZF09RWQoZSxjW2RdKSk6Q2QoZSk/KENkKGNbZF0pfHwoY1tkXT17fSksY1tkXT1FZChlLGNbZF0pKTpjW2RdPWV9cmV0dXJuIGN9O2Z1bmN0aW9uIEZkKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIiJiZhPj0wJiZpc0Zpbml0ZShhKSYmYSUxPT09MHx8dHlwZW9mIGE9PT0ic3RyaW5nIiYmYVswXSE9PSItIiYmYT09PSIiK3BhcnNlSW50KGEpfTt2YXIgR2Q9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP1tdOmE7dGhpcy5sYT1uZXcgVWE7dGhpcy52YWx1ZXM9W107dGhpcy5OYT0hMTtmb3IodmFyIGIgaW4gYSlhLmhhc093blByb3BlcnR5KGIpJiYoRmQoYik/dGhpcy52YWx1ZXNbTnVtYmVyKGIpXT1hW051bWJlcihiKV06dGhpcy5sYS5zZXQoYixhW2JdKSl9O2s9R2QucHJvdG90eXBlO2sudG9TdHJpbmc9ZnVuY3Rpb24oYSl7aWYoYSYmYS5pbmRleE9mKHRoaXMpPj0wKXJldHVybiIiO2Zvcih2YXIgYj1bXSxjPTA7Yzx0aGlzLnZhbHVlcy5sZW5ndGg7YysrKXt2YXIgZD10aGlzLnZhbHVlc1tjXTtkPT09bnVsbHx8ZD09PXZvaWQgMD9iLnB1c2goIiIpOmQgaW5zdGFuY2VvZiBHZD8oYT1hfHxbXSxhLnB1c2godGhpcyksYi5wdXNoKGQudG9TdHJpbmcoYSkpLGEucG9wKCkpOmIucHVzaChTdHJpbmcoZCkpfXJldHVybiBiLmpvaW4oIiwiKX07Cmsuc2V0PWZ1bmN0aW9uKGEsYil7aWYoIXRoaXMuTmEpaWYoYT09PSJsZW5ndGgiKXtpZighRmQoYikpdGhyb3cgY2IoRXJyb3IoIlJhbmdlRXJyb3I6IExlbmd0aCBwcm9wZXJ0eSBtdXN0IGJlIGEgdmFsaWQgaW50ZWdlci4iKSk7dGhpcy52YWx1ZXMubGVuZ3RoPU51bWJlcihiKX1lbHNlIEZkKGEpP3RoaXMudmFsdWVzW051bWJlcihhKV09Yjp0aGlzLmxhLnNldChhLGIpfTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gYT09PSJsZW5ndGgiP3RoaXMubGVuZ3RoKCk6RmQoYSk/dGhpcy52YWx1ZXNbTnVtYmVyKGEpXTp0aGlzLmxhLmdldChhKX07ay5sZW5ndGg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMubGVuZ3RofTtrLkZhPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuRmEoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2goU3RyaW5nKGIpKTtyZXR1cm4gYX07CmsuaGM9ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5sYS5oYygpLGI9MDtiPHRoaXMudmFsdWVzLmxlbmd0aDtiKyspdGhpcy52YWx1ZXMuaGFzT3duUHJvcGVydHkoYikmJmEucHVzaCh0aGlzLnZhbHVlc1tiXSk7cmV0dXJuIGF9O2suZmM9ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5sYS5mYygpLGI9MDtiPHRoaXMudmFsdWVzLmxlbmd0aDtiKyspdGhpcy52YWx1ZXMuaGFzT3duUHJvcGVydHkoYikmJmEucHVzaChbU3RyaW5nKGIpLHRoaXMudmFsdWVzW2JdXSk7cmV0dXJuIGF9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe0ZkKGEpP2RlbGV0ZSB0aGlzLnZhbHVlc1tOdW1iZXIoYSldOnRoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLnBvcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5wb3AoKX07ay5wdXNoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLnB1c2guYXBwbHkodGhpcy52YWx1ZXMsdyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKX07ay5zaGlmdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5zaGlmdCgpfTsKay5zcGxpY2U9ZnVuY3Rpb24oYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyk7cmV0dXJuIGI9PT12b2lkIDAmJmMubGVuZ3RoPT09MD9uZXcgR2QodGhpcy52YWx1ZXMuc3BsaWNlKGEpKTpuZXcgR2QodGhpcy52YWx1ZXMuc3BsaWNlLmFwcGx5KHRoaXMudmFsdWVzLFthLGJ8fDBdLmNvbmNhdCh3KGMpKSkpfTtrLnVuc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMudW5zaGlmdC5hcHBseSh0aGlzLnZhbHVlcyx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gRmQoYSkmJnRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGEpfHx0aGlzLmxhLmhhcyhhKX07ay5aYT1mdW5jdGlvbigpe3RoaXMuTmE9ITA7T2JqZWN0LmZyZWV6ZSh0aGlzLnZhbHVlcyl9O2suSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07CmZ1bmN0aW9uIEhkKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aCgpO2MrKylhLmhhcyhjKSYmKGJbY109YS5nZXQoYykpO3JldHVybiBifTt2YXIgSWQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmZ1bmN0aW9uTmFtZT1hO3RoaXMuaWU9Yjt0aGlzLmxhPW5ldyBVYTt0aGlzLk5hPSExfTtrPUlkLnByb3RvdHlwZTtrLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZnVuY3Rpb25OYW1lfTtrLmdldE5hbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5mdW5jdGlvbk5hbWV9O2suZ2V0S2V5cz1mdW5jdGlvbigpe3JldHVybiBuZXcgR2QodGhpcy5GYSgpKX07ay5pbnZva2U9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuaWUuY2FsbC5hcHBseSh0aGlzLmllLFtuZXcgSmQodGhpcyxhKV0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpfTtrLmFwcGx5PWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaWUuYXBwbHkobmV3IEpkKHRoaXMsYSksYil9O2suTmM9ZnVuY3Rpb24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO3RyeXtyZXR1cm4gdGhpcy5pbnZva2UuYXBwbHkodGhpcyxbYV0uY29uY2F0KHcoYikpKX1jYXRjaChjKXt9fTsKay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuZ2V0KGEpfTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTmF8fHRoaXMubGEuc2V0KGEsYil9O2suaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmhhcyhhKX07ay5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5OYXx8dGhpcy5sYS5yZW1vdmUoYSl9O2suRmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5GYSgpfTtrLmhjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuaGMoKX07ay5mYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmZjKCl9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwfTtrLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9O3ZhciBLZD1mdW5jdGlvbihhLGIpe0lkLmNhbGwodGhpcyxhLGIpfTt3YShLZCxJZCk7dmFyIExkPWZ1bmN0aW9uKGEsYil7SWQuY2FsbCh0aGlzLGEsYil9O3dhKExkLElkKTt2YXIgSmQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmllPWE7dGhpcy5UPWJ9OwpKZC5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5UO3JldHVybiBBcnJheS5pc0FycmF5KGEpP2ZiKGIsYSk6YX07SmQucHJvdG90eXBlLmdldE5hbWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZS5nZXROYW1lKCl9O0pkLnByb3RvdHlwZS5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlQuamUoKX07dmFyIE1kPWZ1bmN0aW9uKCl7dGhpcy5tYXA9bmV3IE1hcH07TWQucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMubWFwLnNldChhLGIpfTtNZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcC5nZXQoYSl9O3ZhciBOZD1mdW5jdGlvbigpe3RoaXMua2V5cz1bXTt0aGlzLnZhbHVlcz1bXX07TmQucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMua2V5cy5wdXNoKGEpO3RoaXMudmFsdWVzLnB1c2goYil9O05kLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5rZXlzLmluZGV4T2YoYSk7aWYoYj4tMSlyZXR1cm4gdGhpcy52YWx1ZXNbYl19O2Z1bmN0aW9uIE9kKCl7dHJ5e3JldHVybiBNYXA/bmV3IE1kOm5ldyBOZH1jYXRjaChhKXtyZXR1cm4gbmV3IE5kfX07dmFyIFBkPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBQZClyZXR1cm4gYTt2YXIgYjthOmlmKGE9PXZvaWQgMHx8QXJyYXkuaXNBcnJheShhKXx8Q2QoYSkpYj0hMDtlbHNle3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmNhc2UgImZ1bmN0aW9uIjpiPSEwO2JyZWFrIGF9Yj0hMX1pZihiKXRocm93IEVycm9yKCJUeXBlIG9mIGdpdmVuIHZhbHVlIGhhcyBhbiBlcXVpdmFsZW50IFBpeGllIHR5cGUuIik7dGhpcy52YWx1ZT1hfTtQZC5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07UGQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLnZhbHVlKX07dmFyIFNkPWZ1bmN0aW9uKGEpe3RoaXMucHJvbWlzZT1hO3RoaXMuTmE9ITE7dGhpcy5sYT1uZXcgVWE7dGhpcy5sYS5zZXQoInRoZW4iLFJkKHRoaXMpKTt0aGlzLmxhLnNldCgiY2F0Y2giLFJkKHRoaXMsITApKTt0aGlzLmxhLnNldCgiZmluYWxseSIsUmQodGhpcywhMSwhMCkpfTtrPVNkLnByb3RvdHlwZTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5nZXQoYSl9O2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OYXx8dGhpcy5sYS5zZXQoYSxiKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuaGFzKGEpfTtrLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5GYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLkZhKCl9O2suaGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5oYygpfTtrLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuZmMoKX07CnZhciBSZD1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPyExOmI7Yz1jPT09dm9pZCAwPyExOmM7cmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbihkLGUpe2ImJihlPWQsZD12b2lkIDApO2MmJihlPWQpO2QgaW5zdGFuY2VvZiBLZHx8KGQ9dm9pZCAwKTtlIGluc3RhbmNlb2YgS2R8fChlPXZvaWQgMCk7dmFyIGY9dGhpcy5ULndiKCksZz1mdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obil7dHJ5e3JldHVybiBjPyhsLmludm9rZShmKSxhLnByb21pc2UpOmwuaW52b2tlKGYsbil9Y2F0Y2gocCl7cmV0dXJuIFByb21pc2UucmVqZWN0KHAgaW5zdGFuY2VvZiBFcnJvcj9uZXcgUGQocCk6U3RyaW5nKHApKX19fSxoPWEucHJvbWlzZS50aGVuKGQmJmcoZCksZSYmZyhlKSk7cmV0dXJuIG5ldyBTZChoKX0pfTtTZC5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwfTtTZC5wcm90b3R5cGUuSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07ZnVuY3Rpb24gVGQoYSxiLGMpe3ZhciBkPU9kKCksZT1mdW5jdGlvbihnLGgpe2Zvcih2YXIgbD1nLkZhKCksbj0wO248bC5sZW5ndGg7bisrKWhbbFtuXV09ZihnLmdldChsW25dKSl9LGY9ZnVuY3Rpb24oZyl7aWYoZz09PW51bGx8fGc9PT12b2lkIDApcmV0dXJuIGc7dmFyIGg9ZC5nZXQoZyk7aWYoaClyZXR1cm4gaDtpZihnIGluc3RhbmNlb2YgR2Qpe3ZhciBsPVtdO2Quc2V0KGcsbCk7Zm9yKHZhciBuPWcuRmEoKSxwPTA7cDxuLmxlbmd0aDtwKyspbFtuW3BdXT1mKGcuZ2V0KG5bcF0pKTtyZXR1cm4gbH1pZihnIGluc3RhbmNlb2YgU2QpcmV0dXJuIGcucHJvbWlzZS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiBUZCh1LGIsMSl9LGZ1bmN0aW9uKHUpe3JldHVybiBQcm9taXNlLnJlamVjdChUZCh1LGIsMSkpfSk7aWYoZyBpbnN0YW5jZW9mIGtiKXt2YXIgcT17fTtkLnNldChnLHEpO2UoZyxxKTtyZXR1cm4gcX1pZihnIGluc3RhbmNlb2YgS2Qpe3ZhciByPWZ1bmN0aW9uKCl7Zm9yKHZhciB1PQpbXSx2PTA7djxhcmd1bWVudHMubGVuZ3RoO3YrKyl1W3ZdPVVkKGFyZ3VtZW50c1t2XSxiLGMpO3ZhciB4PW5ldyBoYihiP2IuamUoKTpuZXcgV2EpO2ImJngudWUoYi54YigpKTtyZXR1cm4gZihnLmFwcGx5KHgsdSkpfTtkLnNldChnLHIpO2UoZyxyKTtyZXR1cm4gcn12YXIgdD0hMTtzd2l0Y2goYyl7Y2FzZSAxOnQ9ITA7YnJlYWs7Y2FzZSAyOnQ9ITE7YnJlYWs7Y2FzZSAzOnQ9ITE7YnJlYWs7ZGVmYXVsdDp9aWYoZyBpbnN0YW5jZW9mIFBkJiZ0KXJldHVybiBnLmdldFZhbHVlKCk7c3dpdGNoKHR5cGVvZiBnKXtjYXNlICJib29sZWFuIjpjYXNlICJudW1iZXIiOmNhc2UgInN0cmluZyI6Y2FzZSAidW5kZWZpbmVkIjpyZXR1cm4gZztjYXNlICJvYmplY3QiOmlmKGc9PT0KbnVsbClyZXR1cm4gbnVsbH19O3JldHVybiBmKGEpfQpmdW5jdGlvbiBVZChhLGIsYyl7dmFyIGQ9T2QoKSxlPWZ1bmN0aW9uKGcsaCl7Zm9yKHZhciBsIGluIGcpZy5oYXNPd25Qcm9wZXJ0eShsKSYmaC5zZXQobCxmKGdbbF0pKX0sZj1mdW5jdGlvbihnKXt2YXIgaD1kLmdldChnKTtpZihoKXJldHVybiBoO2lmKEFycmF5LmlzQXJyYXkoZyl8fEhiKGcpKXt2YXIgbD1uZXcgR2Q7ZC5zZXQoZyxsKTtmb3IodmFyIG4gaW4gZylnLmhhc093blByb3BlcnR5KG4pJiZsLnNldChuLGYoZ1tuXSkpO3JldHVybiBsfWlmKENkKGcpKXt2YXIgcD1uZXcga2I7ZC5zZXQoZyxwKTtlKGcscCk7cmV0dXJuIHB9aWYodHlwZW9mIGc9PT0iZnVuY3Rpb24iKXt2YXIgcT1uZXcgS2QoIiIsZnVuY3Rpb24oKXtmb3IodmFyIHU9T2EuYXBwbHkoMCxhcmd1bWVudHMpLHY9W10seD0wO3g8dS5sZW5ndGg7eCsrKXZbeF09VGQodGhpcy5ldmFsdWF0ZSh1W3hdKSxiLGMpO3JldHVybiBmKHRoaXMuVC5QaigpKGcsZyx2KSl9KTtkLnNldChnLHEpO2UoZyxxKTtyZXR1cm4gcX12YXIgcj10eXBlb2YgZztpZihnPT09bnVsbHx8cj09PSJzdHJpbmcifHxyPT09Im51bWJlciJ8fHI9PT0iYm9vbGVhbiIpcmV0dXJuIGc7dmFyIHQ9ITE7c3dpdGNoKGMpe2Nhc2UgMTp0PSEwO2JyZWFrO2Nhc2UgMjp0PSExO2JyZWFrO2RlZmF1bHQ6fWlmKGchPT12b2lkIDAmJnQpcmV0dXJuIG5ldyBQZChnKX07cmV0dXJuIGYoYSl9O3ZhciBWZD17c3VwcG9ydGVkTWV0aG9kczoiY29uY2F0IGV2ZXJ5IGZpbHRlciBmb3JFYWNoIGhhc093blByb3BlcnR5IGluZGV4T2Ygam9pbiBsYXN0SW5kZXhPZiBtYXAgcG9wIHB1c2ggcmVkdWNlIHJlZHVjZVJpZ2h0IHJldmVyc2Ugc2hpZnQgc2xpY2Ugc29tZSBzb3J0IHNwbGljZSB1bnNoaWZ0IHRvU3RyaW5nIi5zcGxpdCgiICIpLGNvbmNhdDpmdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz0wO2M8dGhpcy5sZW5ndGgoKTtjKyspYi5wdXNoKHRoaXMuZ2V0KGMpKTtmb3IodmFyIGQ9MTtkPGFyZ3VtZW50cy5sZW5ndGg7ZCsrKWlmKGFyZ3VtZW50c1tkXWluc3RhbmNlb2YgR2QpZm9yKHZhciBlPWFyZ3VtZW50c1tkXSxmPTA7ZjxlLmxlbmd0aCgpO2YrKyliLnB1c2goZS5nZXQoZikpO2Vsc2UgYi5wdXNoKGFyZ3VtZW50c1tkXSk7cmV0dXJuIG5ldyBHZChiKX0sZXZlcnk6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPTA7ZDx0aGlzLmxlbmd0aCgpJiYKZDxjO2QrKylpZih0aGlzLmhhcyhkKSYmIWIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKSlyZXR1cm4hMTtyZXR1cm4hMH0sZmlsdGVyOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD1bXSxlPTA7ZTx0aGlzLmxlbmd0aCgpJiZlPGM7ZSsrKXRoaXMuaGFzKGUpJiZiLmludm9rZShhLHRoaXMuZ2V0KGUpLGUsdGhpcykmJmQucHVzaCh0aGlzLmdldChlKSk7cmV0dXJuIG5ldyBHZChkKX0sZm9yRWFjaDpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9MDtkPHRoaXMubGVuZ3RoKCkmJmQ8YztkKyspdGhpcy5oYXMoZCkmJmIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKX0saGFzT3duUHJvcGVydHk6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5oYXMoYil9LGluZGV4T2Y6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCksZT1jPT09dm9pZCAwPzA6TnVtYmVyKGMpO2U8MCYmKGU9TWF0aC5tYXgoZCtlLDApKTtmb3IodmFyIGY9CmU7ZjxkO2YrKylpZih0aGlzLmhhcyhmKSYmdGhpcy5nZXQoZik9PT1iKXJldHVybiBmO3JldHVybi0xfSxqb2luOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPHRoaXMubGVuZ3RoKCk7ZCsrKWMucHVzaCh0aGlzLmdldChkKSk7cmV0dXJuIGMuam9pbihiKX0sbGFzdEluZGV4T2Y6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCksZT1kLTE7YyE9PXZvaWQgMCYmKGU9YzwwP2QrYzpNYXRoLm1pbihjLGUpKTtmb3IodmFyIGY9ZTtmPj0wO2YtLSlpZih0aGlzLmhhcyhmKSYmdGhpcy5nZXQoZik9PT1iKXJldHVybiBmO3JldHVybi0xfSxtYXA6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPVtdLGU9MDtlPHRoaXMubGVuZ3RoKCkmJmU8YztlKyspdGhpcy5oYXMoZSkmJihkW2VdPWIuaW52b2tlKGEsdGhpcy5nZXQoZSksZSx0aGlzKSk7cmV0dXJuIG5ldyBHZChkKX0scG9wOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucG9wKCl9LHB1c2g6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMucHVzaC5hcHBseSh0aGlzLAp3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpfSxyZWR1Y2U6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCksZSxmPTA7aWYoYyE9PXZvaWQgMCllPWM7ZWxzZXtpZihkPT09MCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2Ugb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTtmb3IodmFyIGc9MDtnPGQ7ZysrKWlmKHRoaXMuaGFzKGcpKXtlPXRoaXMuZ2V0KGcpO2Y9ZysxO2JyZWFrfWlmKGc9PT1kKXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IFJlZHVjZSBvbiBMaXN0IHdpdGggbm8gZWxlbWVudHMuIikpO31mb3IodmFyIGg9ZjtoPGQ7aCsrKXRoaXMuaGFzKGgpJiYoZT1iLmludm9rZShhLGUsdGhpcy5nZXQoaCksaCx0aGlzKSk7cmV0dXJuIGV9LHJlZHVjZVJpZ2h0OmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGUsZj1kLTE7aWYoYyE9PXZvaWQgMCllPWM7ZWxzZXtpZihkPT09MCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2VSaWdodCBvbiBMaXN0IHdpdGggbm8gZWxlbWVudHMuIikpOwpmb3IodmFyIGc9MTtnPD1kO2crKylpZih0aGlzLmhhcyhkLWcpKXtlPXRoaXMuZ2V0KGQtZyk7Zj1kLShnKzEpO2JyZWFrfWlmKGc+ZCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2VSaWdodCBvbiBMaXN0IHdpdGggbm8gZWxlbWVudHMuIikpO31mb3IodmFyIGg9ZjtoPj0wO2gtLSl0aGlzLmhhcyhoKSYmKGU9Yi5pbnZva2UoYSxlLHRoaXMuZ2V0KGgpLGgsdGhpcykpO3JldHVybiBlfSxyZXZlcnNlOmZ1bmN0aW9uKCl7Zm9yKHZhciBhPUhkKHRoaXMpLGI9YS5sZW5ndGgtMSxjPTA7Yj49MDtiLS0sYysrKWEuaGFzT3duUHJvcGVydHkoYik/dGhpcy5zZXQoYyxhW2JdKTp0aGlzLnJlbW92ZShjKTtyZXR1cm4gdGhpc30sc2hpZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zaGlmdCgpfSxzbGljZTpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5sZW5ndGgoKTtiPT09dm9pZCAwJiYoYj0wKTtiPWI8MD9NYXRoLm1heChkK2IsMCk6TWF0aC5taW4oYixkKTtjPWM9PT0Kdm9pZCAwP2Q6YzwwP01hdGgubWF4KGQrYywwKTpNYXRoLm1pbihjLGQpO2M9TWF0aC5tYXgoYixjKTtmb3IodmFyIGU9W10sZj1iO2Y8YztmKyspZS5wdXNoKHRoaXMuZ2V0KGYpKTtyZXR1cm4gbmV3IEdkKGUpfSxzb21lOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD0wO2Q8dGhpcy5sZW5ndGgoKSYmZDxjO2QrKylpZih0aGlzLmhhcyhkKSYmYi5pbnZva2UoYSx0aGlzLmdldChkKSxkLHRoaXMpKXJldHVybiEwO3JldHVybiExfSxzb3J0OmZ1bmN0aW9uKGEsYil7dmFyIGM9SGQodGhpcyk7Yj09PXZvaWQgMD9jLnNvcnQoKTpjLnNvcnQoZnVuY3Rpb24oZSxmKXtyZXR1cm4gTnVtYmVyKGIuaW52b2tlKGEsZSxmKSl9KTtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyljLmhhc093blByb3BlcnR5KGQpP3RoaXMuc2V0KGQsY1tkXSk6dGhpcy5yZW1vdmUoZCk7cmV0dXJuIHRoaXN9LHNwbGljZTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIHRoaXMuc3BsaWNlLmFwcGx5KHRoaXMsCltiLGNdLmNvbmNhdCh3KE9hLmFwcGx5KDMsYXJndW1lbnRzKSkpKX0sdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b1N0cmluZygpfSx1bnNoaWZ0OmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnVuc2hpZnQuYXBwbHkodGhpcyx3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpfX07dmFyIFdkPXtjaGFyQXQ6MSxjb25jYXQ6MSxpbmRleE9mOjEsbGFzdEluZGV4T2Y6MSxtYXRjaDoxLHJlcGxhY2U6MSxzZWFyY2g6MSxzbGljZToxLHNwbGl0OjEsc3Vic3RyaW5nOjEsdG9Mb3dlckNhc2U6MSx0b0xvY2FsZUxvd2VyQ2FzZToxLHRvU3RyaW5nOjEsdG9VcHBlckNhc2U6MSx0b0xvY2FsZVVwcGVyQ2FzZToxLHRyaW06MX0sWGQ9bmV3IFRhKCJicmVhayIpLFlkPW5ldyBUYSgiY29udGludWUiKTtmdW5jdGlvbiBaZChhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpK3RoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gJGQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSYmdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gYWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZighKGYgaW5zdGFuY2VvZiBHZCkpdGhyb3cgRXJyb3IoIkVycm9yOiBOb24tTGlzdCBhcmd1bWVudCBnaXZlbiB0byBBcHBseSBpbnN0cnVjdGlvbi4iKTtpZihkPT09bnVsbHx8ZD09PXZvaWQgMCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW4ndCByZWFkIHByb3BlcnR5ICIrZSsiIG9mICIrZCsiLiIpKTt2YXIgZz10eXBlb2YgZD09PSJudW1iZXIiO2lmKHR5cGVvZiBkPT09ImJvb2xlYW4ifHxnKXtpZihlPT09InRvU3RyaW5nIil7aWYoZyYmZi5sZW5ndGgoKSl7dmFyIGg9VGQoZi5nZXQoMCkpO3RyeXtyZXR1cm4gZC50b1N0cmluZyhoKX1jYXRjaCh1KXt9fXJldHVybiBkLnRvU3RyaW5nKCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitkKyIuIitlKyIgaXMgbm90IGEgZnVuY3Rpb24uIikpO31pZih0eXBlb2YgZD09PQoic3RyaW5nIil7aWYoV2QuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBsPVRkKGYsdm9pZCAwLDEpO3JldHVybiBVZChkW2VdLmFwcGx5KGQsbCksdGhpcy5UKX10aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiAiK2UrIiBpcyBub3QgYSBmdW5jdGlvbiIpKTt9aWYoZCBpbnN0YW5jZW9mIEdkKXtpZihkLmhhcyhlKSl7dmFyIG49ZC5nZXQoU3RyaW5nKGUpKTtpZihuIGluc3RhbmNlb2YgS2Qpe3ZhciBwPUhkKGYpO3JldHVybiBuLmFwcGx5KHRoaXMuVCxwKX10aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiAiK2UrIiBpcyBub3QgYSBmdW5jdGlvbiIpKTt9aWYoVmQuc3VwcG9ydGVkTWV0aG9kcy5pbmRleE9mKGUpPj0wKXt2YXIgcT1IZChmKTtyZXR1cm4gVmRbZV0uY2FsbC5hcHBseShWZFtlXSxbZCx0aGlzLlRdLmNvbmNhdCh3KHEpKSl9fWlmKGQgaW5zdGFuY2VvZiBLZHx8ZCBpbnN0YW5jZW9mIGtifHxkIGluc3RhbmNlb2YgU2Qpe2lmKGQuaGFzKGUpKXt2YXIgcj1kLmdldChlKTsKaWYociBpbnN0YW5jZW9mIEtkKXt2YXIgdD1IZChmKTtyZXR1cm4gci5hcHBseSh0aGlzLlQsdCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKGU9PT0idG9TdHJpbmciKXJldHVybiBkIGluc3RhbmNlb2YgS2Q/ZC5nZXROYW1lKCk6ZC50b1N0cmluZygpO2lmKGU9PT0iaGFzT3duUHJvcGVydHkiKXJldHVybiBkLmhhcyhmLmdldCgwKSl9aWYoZCBpbnN0YW5jZW9mIFBkJiZlPT09InRvU3RyaW5nIilyZXR1cm4gZC50b1N0cmluZygpO3Rocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IE9iamVjdCBoYXMgbm8gJyIrZSsiJyBwcm9wZXJ0eS4iKSk7fQpmdW5jdGlvbiBiZShhLGIpe2E9dGhpcy5ldmFsdWF0ZShhKTtpZih0eXBlb2YgYSE9PSJzdHJpbmciKXRocm93IEVycm9yKCJJbnZhbGlkIGtleSBuYW1lIGdpdmVuIGZvciBhc3NpZ25tZW50LiIpO3ZhciBjPXRoaXMuVDtpZighYy5oYXMoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYXNzaWduIHRvIHVuZGVmaW5lZCB2YWx1ZSAiK2IpO3ZhciBkPXRoaXMuZXZhbHVhdGUoYik7Yy5zZXQoYSxkKTtyZXR1cm4gZH1mdW5jdGlvbiBjZSgpe3ZhciBhPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxiPXRoaXMuVC53YigpLGM9ZWIoYixhKTtpZihjIGluc3RhbmNlb2YgVGEpcmV0dXJuIGN9ZnVuY3Rpb24gZGUoKXtyZXR1cm4gWGR9ZnVuY3Rpb24gZWUoYSl7Zm9yKHZhciBiPXRoaXMuZXZhbHVhdGUoYSksYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD10aGlzLmV2YWx1YXRlKGJbY10pO2lmKGQgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZH19CmZ1bmN0aW9uIGZlKCl7Zm9yKHZhciBhPXRoaXMuVCxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoLTE7Yis9Mil7dmFyIGM9YXJndW1lbnRzW2JdO2lmKHR5cGVvZiBjPT09InN0cmluZyIpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2IrMV0pO2EuUWgoYyxkKX19fWZ1bmN0aW9uIGdlKCl7cmV0dXJuIFlkfWZ1bmN0aW9uIGhlKGEsYil7cmV0dXJuIG5ldyBUYShhLHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGllKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQ7ZD1uZXcgR2Q7Zm9yKHZhciBlPXRoaXMuZXZhbHVhdGUoYiksZj0wO2Y8ZS5sZW5ndGg7ZisrKWQucHVzaChlW2ZdKTt2YXIgZz1bNTEsYSxkXS5jb25jYXQodyhjKSk7dGhpcy5ULmFkZChhLHRoaXMuZXZhbHVhdGUoZykpfWZ1bmN0aW9uIGplKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkvdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24ga2UoYSxiKXt2YXIgYz10aGlzLmV2YWx1YXRlKGEpLGQ9dGhpcy5ldmFsdWF0ZShiKSxlPWMgaW5zdGFuY2VvZiBQZCxmPWQgaW5zdGFuY2VvZiBQZDtyZXR1cm4gZXx8Zj9lJiZmP2MuZ2V0VmFsdWUoKT09PWQuZ2V0VmFsdWUoKTohMTpjPT1kfWZ1bmN0aW9uIGxlKCl7Zm9yKHZhciBhLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKWE9dGhpcy5ldmFsdWF0ZShhcmd1bWVudHNbYl0pO3JldHVybiBhfWZ1bmN0aW9uIG1lKGEsYixjLGQpe2Zvcih2YXIgZT0wO2U8YigpO2UrKyl7dmFyIGY9YShjKGUpKSxnPWViKGYsZCk7aWYoZyBpbnN0YW5jZW9mIFRhKXtpZihnLnR5cGU9PT0iYnJlYWsiKWJyZWFrO2lmKGcudHlwZT09PSJyZXR1cm4iKXJldHVybiBnfX19CmZ1bmN0aW9uIG5lKGEsYixjKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RofSxmdW5jdGlvbihmKXtyZXR1cm4gZn0sYyk7aWYoYiBpbnN0YW5jZW9mIGtifHxiIGluc3RhbmNlb2YgU2R8fGIgaW5zdGFuY2VvZiBHZHx8YiBpbnN0YW5jZW9mIEtkKXt2YXIgZD1iLkZhKCksZT1kLmxlbmd0aDtyZXR1cm4gbWUoYSxmdW5jdGlvbigpe3JldHVybiBlfSxmdW5jdGlvbihmKXtyZXR1cm4gZFtmXX0sYyl9fWZ1bmN0aW9uIG9lKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe2cuc2V0KGQsaCk7cmV0dXJuIGd9LGUsZil9CmZ1bmN0aW9uIHBlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLlFoKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gcWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gbmUoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuYWRkKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gcmUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7Zy5zZXQoZCxoKTtyZXR1cm4gZ30sZSxmKX0KZnVuY3Rpb24gdGUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuUWgoZCxoKTtyZXR1cm4gbH0sZSxmKX1mdW5jdGlvbiB1ZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBzZShmdW5jdGlvbihoKXt2YXIgbD1nLndiKCk7bC5hZGQoZCxoKTtyZXR1cm4gbH0sZSxmKX0KZnVuY3Rpb24gc2UoYSxiLGMpe2lmKHR5cGVvZiBiPT09InN0cmluZyIpcmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gYi5sZW5ndGh9LGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdfSxjKTtpZihiIGluc3RhbmNlb2YgR2QpcmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gYi5sZW5ndGgoKX0sZnVuY3Rpb24oZCl7cmV0dXJuIGIuZ2V0KGQpfSxjKTt0aHJvdyBjYihFcnJvcigiVGhlIHZhbHVlIGlzIG5vdCBpdGVyYWJsZS4iKSk7fQpmdW5jdGlvbiB2ZShhLGIsYyxkKXtmdW5jdGlvbiBlKHEscil7Zm9yKHZhciB0PTA7dDxmLmxlbmd0aCgpO3QrKyl7dmFyIHU9Zi5nZXQodCk7ci5hZGQodSxxLmdldCh1KSl9fXZhciBmPXRoaXMuZXZhbHVhdGUoYSk7aWYoIShmIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJUeXBlRXJyb3I6IE5vbi1MaXN0IGFyZ3VtZW50IGdpdmVuIHRvIEZvckxldCBpbnN0cnVjdGlvbi4iKTt2YXIgZz10aGlzLlQsaD10aGlzLmV2YWx1YXRlKGQpLGw9Zy53YigpO2ZvcihlKGcsbCk7ZmIobCxiKTspe3ZhciBuPWViKGwsaCk7aWYobiBpbnN0YW5jZW9mIFRhKXtpZihuLnR5cGU9PT0iYnJlYWsiKWJyZWFrO2lmKG4udHlwZT09PSJyZXR1cm4iKXJldHVybiBufXZhciBwPWcud2IoKTtlKGwscCk7ZmIocCxjKTtsPXB9fQpmdW5jdGlvbiB3ZShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkPXRoaXMuVCxlPXRoaXMuZXZhbHVhdGUoYik7aWYoIShlIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJFcnJvcjogbm9uLUxpc3QgdmFsdWUgZ2l2ZW4gZm9yIEZuIGFyZ3VtZW50IG5hbWVzLiIpO3JldHVybiBuZXcgS2QoYSxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe3ZhciBmPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxnPWQud2IoKTtnLnhiKCk9PT12b2lkIDAmJmcudWUodGhpcy5ULnhiKCkpO2Zvcih2YXIgaD1bXSxsPTA7bDxmLmxlbmd0aDtsKyspe3ZhciBuPXRoaXMuZXZhbHVhdGUoZltsXSk7aFtsXT1ufWZvcih2YXIgcD1lLmdldCgibGVuZ3RoIikscT0wO3E8cDtxKyspcTxoLmxlbmd0aD9nLmFkZChlLmdldChxKSxoW3FdKTpnLmFkZChlLmdldChxKSx2b2lkIDApO2cuYWRkKCJhcmd1bWVudHMiLG5ldyBHZChoKSk7dmFyIHI9ZWIoZyxjKTtpZihyIGluc3RhbmNlb2YgVGEpcmV0dXJuIHIudHlwZT09PQoicmV0dXJuIj9yLmRhdGE6cn19KCkpfWZ1bmN0aW9uIHhlKGEpe3ZhciBiPXRoaXMuZXZhbHVhdGUoYSksYz10aGlzLlQ7aWYoeWUmJiFjLmhhcyhiKSl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoYisiIGlzIG5vdCBkZWZpbmVkLiIpO3JldHVybiBjLmdldChiKX0KZnVuY3Rpb24gemUoYSxiKXt2YXIgYyxkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpO2lmKGQ9PT12b2lkIDB8fGQ9PT1udWxsKXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IENhbm5vdCByZWFkIHByb3BlcnRpZXMgb2YgIitkKyIgKHJlYWRpbmcgJyIrZSsiJykiKSk7aWYoZCBpbnN0YW5jZW9mIGtifHxkIGluc3RhbmNlb2YgU2R8fGQgaW5zdGFuY2VvZiBHZHx8ZCBpbnN0YW5jZW9mIEtkKWM9ZC5nZXQoZSk7ZWxzZSBpZih0eXBlb2YgZD09PSJzdHJpbmciKWU9PT0ibGVuZ3RoIj9jPWQubGVuZ3RoOkZkKGUpJiYoYz1kW2VdKTtlbHNlIGlmKGQgaW5zdGFuY2VvZiBQZClyZXR1cm47cmV0dXJuIGN9ZnVuY3Rpb24gQWUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT50aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIEJlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk+PXRoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIENlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7YyBpbnN0YW5jZW9mIFBkJiYoYz1jLmdldFZhbHVlKCkpO2QgaW5zdGFuY2VvZiBQZCYmKGQ9ZC5nZXRWYWx1ZSgpKTtyZXR1cm4gYz09PWR9ZnVuY3Rpb24gRGUoYSxiKXtyZXR1cm4hQ2UuY2FsbCh0aGlzLGEsYil9ZnVuY3Rpb24gRWUoYSxiLGMpe3ZhciBkPVtdO3RoaXMuZXZhbHVhdGUoYSk/ZD10aGlzLmV2YWx1YXRlKGIpOmMmJihkPXRoaXMuZXZhbHVhdGUoYykpO3ZhciBlPWViKHRoaXMuVCxkKTtpZihlIGluc3RhbmNlb2YgVGEpcmV0dXJuIGV9dmFyIHllPSExOwpmdW5jdGlvbiBGZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPHRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gR2UoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKTw9dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBIZSgpe2Zvcih2YXIgYT1uZXcgR2QsYj0wO2I8YXJndW1lbnRzLmxlbmd0aDtiKyspe3ZhciBjPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKTthLnB1c2goYyl9cmV0dXJuIGF9ZnVuY3Rpb24gSWUoKXtmb3IodmFyIGE9bmV3IGtiLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGgtMTtiKz0yKXt2YXIgYz1TdHJpbmcodGhpcy5ldmFsdWF0ZShhcmd1bWVudHNbYl0pKSxkPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2IrMV0pO2Euc2V0KGMsZCl9cmV0dXJuIGF9ZnVuY3Rpb24gSmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSV0aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBLZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpKnRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gTGUoYSl7cmV0dXJuLXRoaXMuZXZhbHVhdGUoYSl9ZnVuY3Rpb24gTWUoYSl7cmV0dXJuIXRoaXMuZXZhbHVhdGUoYSl9ZnVuY3Rpb24gTmUoYSxiKXtyZXR1cm4ha2UuY2FsbCh0aGlzLGEsYil9ZnVuY3Rpb24gT2UoKXtyZXR1cm4gbnVsbH1mdW5jdGlvbiBQZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpfHx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIFFlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKTt0aGlzLmV2YWx1YXRlKGIpO3JldHVybiBjfWZ1bmN0aW9uIFJlKGEpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIFNlKCl7cmV0dXJuIE9hLmFwcGx5KDAsYXJndW1lbnRzKX1mdW5jdGlvbiBUZShhKXtyZXR1cm4gbmV3IFRhKCJyZXR1cm4iLHRoaXMuZXZhbHVhdGUoYSkpfQpmdW5jdGlvbiBVZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpO2lmKGQ9PT1udWxsfHxkPT09dm9pZCAwKXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6IENhbid0IHNldCBwcm9wZXJ0eSAiK2UrIiBvZiAiK2QrIi4iKSk7KGQgaW5zdGFuY2VvZiBLZHx8ZCBpbnN0YW5jZW9mIEdkfHxkIGluc3RhbmNlb2Yga2IpJiZkLnNldChTdHJpbmcoZSksZik7cmV0dXJuIGZ9ZnVuY3Rpb24gVmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKS10aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBXZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpO2lmKCFBcnJheS5pc0FycmF5KGUpfHwhQXJyYXkuaXNBcnJheShmKSl0aHJvdyBFcnJvcigiRXJyb3I6IE1hbGZvcm1lZCBzd2l0Y2ggaW5zdHJ1Y3Rpb24uIik7Zm9yKHZhciBnLGg9ITEsbD0wO2w8ZS5sZW5ndGg7bCsrKWlmKGh8fGQ9PT10aGlzLmV2YWx1YXRlKGVbbF0pKWlmKGc9dGhpcy5ldmFsdWF0ZShmW2xdKSxnIGluc3RhbmNlb2YgVGEpe3ZhciBuPWcudHlwZTtpZihuPT09ImJyZWFrIilyZXR1cm47aWYobj09PSJyZXR1cm4ifHxuPT09ImNvbnRpbnVlIilyZXR1cm4gZ31lbHNlIGg9ITA7aWYoZi5sZW5ndGg9PT1lLmxlbmd0aCsxJiYoZz10aGlzLmV2YWx1YXRlKGZbZi5sZW5ndGgtMV0pLGcgaW5zdGFuY2VvZiBUYSYmKGcudHlwZT09PSJyZXR1cm4ifHxnLnR5cGU9PT0iY29udGludWUiKSkpcmV0dXJuIGd9CmZ1bmN0aW9uIFhlKGEsYixjKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT90aGlzLmV2YWx1YXRlKGIpOnRoaXMuZXZhbHVhdGUoYyl9ZnVuY3Rpb24gWWUoYSl7dmFyIGI9dGhpcy5ldmFsdWF0ZShhKTtyZXR1cm4gYiBpbnN0YW5jZW9mIEtkPyJmdW5jdGlvbiI6dHlwZW9mIGJ9ZnVuY3Rpb24gWmUoKXtmb3IodmFyIGE9dGhpcy5ULGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKXt2YXIgYz1hcmd1bWVudHNbYl07dHlwZW9mIGMhPT0ic3RyaW5nInx8YS5hZGQoYyx2b2lkIDApfX0KZnVuY3Rpb24gJGUoYSxiLGMsZCl7dmFyIGU9dGhpcy5ldmFsdWF0ZShkKTtpZih0aGlzLmV2YWx1YXRlKGMpKXt2YXIgZj1lYih0aGlzLlQsZSk7aWYoZiBpbnN0YW5jZW9mIFRhKXtpZihmLnR5cGU9PT0iYnJlYWsiKXJldHVybjtpZihmLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZn19Zm9yKDt0aGlzLmV2YWx1YXRlKGEpOyl7dmFyIGc9ZWIodGhpcy5ULGUpO2lmKGcgaW5zdGFuY2VvZiBUYSl7aWYoZy50eXBlPT09ImJyZWFrIilicmVhaztpZihnLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZ310aGlzLmV2YWx1YXRlKGIpfX1mdW5jdGlvbiBhZihhKXtyZXR1cm5+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpfWZ1bmN0aW9uIGJmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKTw8TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGNmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKT4+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfQpmdW5jdGlvbiBkZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk+Pj5OdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gZWYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpJk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBmZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSleTnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGdmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKXxOdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gaGYoKXt9CmZ1bmN0aW9uIGtmKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShiKTtpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9Y2F0Y2goaCl7aWYoIShoIGluc3RhbmNlb2YgYmImJmguU24pKXRocm93IGg7dmFyIGU9dGhpcy5ULndiKCk7YSE9PSIiJiYoaCBpbnN0YW5jZW9mIGJiJiYoaD1oLnZvKSxlLmFkZChhLG5ldyBQZChoKSkpO3ZhciBmPXRoaXMuZXZhbHVhdGUoYyksZz1lYihlLGYpO2lmKGcgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZ319ZnVuY3Rpb24gbGYoYSxiKXt2YXIgYyxkO3RyeXtkPXRoaXMuZXZhbHVhdGUoYSl9Y2F0Y2goZil7aWYoIShmIGluc3RhbmNlb2YgYmImJmYuU24pKXRocm93IGY7Yz1mfXZhciBlPXRoaXMuZXZhbHVhdGUoYik7aWYoZSBpbnN0YW5jZW9mIFRhKXJldHVybiBlO2lmKGMpdGhyb3cgYztpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9O3ZhciBuZj1mdW5jdGlvbigpe3RoaXMuSD1uZXcgZ2I7bWYodGhpcyl9O25mLnByb3RvdHlwZS5leGVjdXRlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkgucmsoYSl9O3ZhciBtZj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihjLGQpe3ZhciBlPW5ldyBMZChTdHJpbmcoYyksZCk7ZS5aYSgpO3ZhciBmPVN0cmluZyhjKTthLkguSC5zZXQoZixlKTtkYi5zZXQoZixlKX07YigibWFwIixJZSk7YigiYW5kIix0ZCk7YigiY29udGFpbnMiLHdkKTtiKCJlcXVhbHMiLHVkKTtiKCJvciIsdmQpO2IoInN0YXJ0c1dpdGgiLHhkKTtiKCJ2YXJpYWJsZSIseWQpfTtuZi5wcm90b3R5cGUuUWI9ZnVuY3Rpb24oYSl7dGhpcy5ILlFiKGEpfTt2YXIgcGY9ZnVuY3Rpb24oKXt0aGlzLks9ITE7dGhpcy5IPW5ldyBnYjtvZih0aGlzKTt0aGlzLks9ITB9O3BmLnByb3RvdHlwZS5leGVjdXRlPWZ1bmN0aW9uKGEpe3JldHVybiBxZih0aGlzLkgucmsoYSkpfTt2YXIgcmY9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBxZihhLkguSnEoYixjKSl9O3BmLnByb3RvdHlwZS5aYT1mdW5jdGlvbigpe3RoaXMuSC5aYSgpfTsKdmFyIG9mPWZ1bmN0aW9uKGEpe3ZhciBiPWZ1bmN0aW9uKGMsZCl7dmFyIGU9U3RyaW5nKGMpLGY9bmV3IExkKGUsZCk7Zi5aYSgpO2EuSC5ILnNldChlLGYpO2RiLnNldChlLGYpfTtiKDAsWmQpO2IoMSwkZCk7YigyLGFlKTtiKDMsYmUpO2IoNTYsZWYpO2IoNTcsYmYpO2IoNTgsYWYpO2IoNTksZ2YpO2IoNjAsY2YpO2IoNjEsZGYpO2IoNjIsZmYpO2IoNTMsY2UpO2IoNCxkZSk7Yig1LGVlKTtiKDY4LGtmKTtiKDUyLGZlKTtiKDYsZ2UpO2IoNDksaGUpO2IoNyxIZSk7Yig4LEllKTtiKDksZWUpO2IoNTAsaWUpO2IoMTAsamUpO2IoMTIsa2UpO2IoMTMsbGUpO2IoNjcsbGYpO2IoNTEsd2UpO2IoNDcsb2UpO2IoNTQscGUpO2IoNTUscWUpO2IoNjMsdmUpO2IoNjQscmUpO2IoNjUsdGUpO2IoNjYsdWUpO2IoMTUseGUpO2IoMTYsemUpO2IoMTcsemUpO2IoMTgsQWUpO2IoMTksQmUpO2IoMjAsQ2UpO2IoMjEsRGUpO2IoMjIsRWUpO2IoMjMsRmUpO2IoMjQsR2UpO2IoMjUsSmUpO2IoMjYsCktlKTtiKDI3LExlKTtiKDI4LE1lKTtiKDI5LE5lKTtiKDQ1LE9lKTtiKDMwLFBlKTtiKDMyLFFlKTtiKDMzLFFlKTtiKDM0LFJlKTtiKDM1LFJlKTtiKDQ2LFNlKTtiKDM2LFRlKTtiKDQzLFVlKTtiKDM3LFZlKTtiKDM4LFdlKTtiKDM5LFhlKTtiKDQwLFllKTtiKDQ0LGhmKTtiKDQxLFplKTtiKDQyLCRlKX07cGYucHJvdG90eXBlLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSC5qZSgpfTtwZi5wcm90b3R5cGUuUWI9ZnVuY3Rpb24oYSl7dGhpcy5ILlFiKGEpfTtwZi5wcm90b3R5cGUuc2Q9ZnVuY3Rpb24oYSl7dGhpcy5ILnNkKGEpfTsKZnVuY3Rpb24gcWYoYSl7aWYoYSBpbnN0YW5jZW9mIFRhfHxhIGluc3RhbmNlb2YgS2R8fGEgaW5zdGFuY2VvZiBHZHx8YSBpbnN0YW5jZW9mIGtifHxhIGluc3RhbmNlb2YgU2R8fGEgaW5zdGFuY2VvZiBQZHx8YT09PW51bGx8fGE9PT12b2lkIDB8fHR5cGVvZiBhPT09InN0cmluZyJ8fHR5cGVvZiBhPT09Im51bWJlciJ8fHR5cGVvZiBhPT09ImJvb2xlYW4iKXJldHVybiBhfTt2YXIgc2Y9ZnVuY3Rpb24oYSl7dGhpcy5tZXNzYWdlPWF9O2Z1bmN0aW9uIHRmKGEpe2EucXY9ITA7cmV0dXJuIGF9O3ZhciB1Zj10ZihmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIn0pLHZmPXRmKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifSksd2Y9dGYoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09ImJvb2xlYW4ifSk7ZnVuY3Rpb24geGYoYSl7dmFyIGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2FdO3JldHVybiBiPT09dm9pZCAwP25ldyBzZigiVmFsdWUgIithKyIgY2FuIG5vdCBiZSBlbmNvZGVkIGluIHdlYi1zYWZlIGJhc2U2NCBkaWN0aW9uYXJ5LiIpOmJ9O2Z1bmN0aW9uIHlmKGEpe3N3aXRjaChhKXtjYXNlIDE6cmV0dXJuIjEiO2Nhc2UgMjpjYXNlIDQ6cmV0dXJuIjAiO2RlZmF1bHQ6cmV0dXJuIi0ifX07dmFyIHpmPS9eWzEtOWEtekEtWl8tXVsxLTlhLWNdWzEtOWEtdl1cZCQvO2Z1bmN0aW9uIEFmKGEsYil7Zm9yKHZhciBjPSIiLGQ9ITA7YT43Oyl7dmFyIGU9YSYzMTthPj49NTtkP2Q9ITE6ZXw9MzI7Yz0iIit4ZihlKStjfWE8PD0yO2R8fChhfD0zMik7cmV0dXJuIGM9IiIreGYoYXxiKStjfWZ1bmN0aW9uIEJmKGEsYil7cmV0dXJuIGI9PT12b2lkIDB8fGI9PT0wPyIiOiIiK0FmKGEsMSkreGYoYil9CmZ1bmN0aW9uIENmKGEsYil7dmFyIGM7dmFyIGQ9YS5oaSxlPWEuYms7ZD09PXZvaWQgMD9jPSIiOihlfHwoZT0wKSxjPSIiK0FmKDEsMSkreGYoZDw8MnxlKSk7dmFyIGY9IjQiK2MrQmYoMixhLnFyKSxnLGg9YS5JbztnPWgmJnpmLnRlc3QoaCk/IiIrQWYoMywyKStoOiIiO3ZhciBsO3ZhciBuPWEuY3RpZDtpZihuJiZiKXt2YXIgcD1BZig1LDMpLHE9bi5zcGxpdCgiLSIpLHI9cVswXS50b1VwcGVyQ2FzZSgpO2lmKHIhPT0iR1RNIiYmciE9PSJPUFQiKWw9IiI7ZWxzZXt2YXIgdD1xWzFdO2w9IiIrcCt4ZigxK3QubGVuZ3RoKSsoYS5Mc3x8MCkrdH19ZWxzZSBsPSIiO3ZhciB1PWEuY2Fub25pY2FsSWQsdj1hLm1jLHg9YS56dix5PWYrZytCZig0LGEuRG8pK2wrQmYoNixhLkR0KSsodT8iIitBZig3LDMpK3hmKHUubGVuZ3RoKSt1OiIiKSsodj8iIitBZig4LDMpK3hmKHYubGVuZ3RoKSt2OiIiKSsoeD8iIitBZig5LDMpK3hmKHgubGVuZ3RoKSt4OiIiKSx6O3ZhciBDPWEuenI7Qz0KQz09PXZvaWQgMD97fTpDO2Zvcih2YXIgRD1bXSxJPW0oT2JqZWN0LmtleXMoQykpLEc9SS5uZXh0KCk7IUcuZG9uZTtHPUkubmV4dCgpKXt2YXIgTj1HLnZhbHVlO0RbTnVtYmVyKE4pXT1DW05dfWlmKEQubGVuZ3RoKXt2YXIgUz1BZigxMCwzKSxXO2lmKEQubGVuZ3RoPT09MClXPXhmKDApO2Vsc2V7Zm9yKHZhciBlYT1bXSxqYT0wLGZhPSExLHNhPTA7c2E8RC5sZW5ndGg7c2ErKyl7ZmE9ITA7dmFyIGRhPXNhJTY7RFtzYV0mJihqYXw9MTw8ZGEpO2RhPT09NSYmKGVhLnB1c2goeGYoamEpKSxqYT0wLGZhPSExKX1mYSYmZWEucHVzaCh4ZihqYSkpO1c9ZWEuam9pbigiIil9dmFyIG1hPVc7ej0iIitTK3hmKG1hLmxlbmd0aCkrbWF9ZWxzZSB6PSIiO3ZhciBQYT1hLlVzLEZhPWEubnQ7cmV0dXJuIHkreisoUGE/IiIrQWYoMTEsMykreGYoUGEubGVuZ3RoKStQYToiIikrKEZhPyIiK0FmKDEzLDMpK3hmKEZhLmxlbmd0aCkrRmE6IiIpK0JmKDE0LGEuRXQpK0JmKDE1LGEucnYpK0JmKDE2LAphLkF2KX07ZnVuY3Rpb24gRGYoYSl7Zm9yKHZhciBiPVtdLGM9MCxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWEuY2hhckNvZGVBdChkKTtlPDEyOD9iW2MrK109ZTooZTwyMDQ4P2JbYysrXT1lPj42fDE5MjooKGUmNjQ1MTIpPT01NTI5NiYmZCsxPGEubGVuZ3RoJiYoYS5jaGFyQ29kZUF0KGQrMSkmNjQ1MTIpPT01NjMyMD8oZT02NTUzNisoKGUmMTAyMyk8PDEwKSsoYS5jaGFyQ29kZUF0KCsrZCkmMTAyMyksYltjKytdPWU+PjE4fDI0MCxiW2MrK109ZT4+MTImNjN8MTI4KTpiW2MrK109ZT4+MTJ8MjI0LGJbYysrXT1lPj42JjYzfDEyOCksYltjKytdPWUmNjN8MTI4KX1yZXR1cm4gYn07ZnVuY3Rpb24gRWYoYSxiKXtmb3IodmFyIGM9cWIoYiksZD1uZXcgVWludDhBcnJheShjLmxlbmd0aCksZT0wO2U8Yy5sZW5ndGg7ZSsrKWRbZV09Yy5jaGFyQ29kZUF0KGUpO2lmKGQubGVuZ3RoIT09MzIpdGhyb3cgRXJyb3IoIktleSBpcyBub3QgMzIgYnl0ZXMuIik7cmV0dXJuIEZmKGEsZCl9ZnVuY3Rpb24gRmYoYSxiKXtpZihhPT09IiIpcmV0dXJuIiI7dmFyIGM9WmIoYSksZD1iLnNsaWNlKC0yKSxlPVtdLmNvbmNhdCh3KGQpLHcoYykpLm1hcChmdW5jdGlvbihnLGgpe3JldHVybiBnXmJbaCViLmxlbmd0aF19KSxmPW5ldyBVaW50OEFycmF5KFtdLmNvbmNhdCh3KGUpLHcoZCkpKTtyZXR1cm4gcGIoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsdyhmKSkpLnJlcGxhY2UoL1wuKyQvLCIiKX07dmFyIEdmPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiKXtyZXR1cm57dG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gYn19fXJldHVybntjcDphKCJjb25zZW50IiksWms6YSgiY29udmVydF9jYXNlX3RvIiksYWw6YSgiY29udmVydF9mYWxzZV90byIpLGJsOmEoImNvbnZlcnRfbnVsbF90byIpLGVwOmEoImNvbnZlcnRfdG9fYm9vbGVhbiIpLGFoOmEoImNvbnZlcnRfdG9fbnVtYmVyIiksZmw6YSgiY29udmVydF90cnVlX3RvIiksaWw6YSgiY29udmVydF91bmRlZmluZWRfdG8iKSxZdDphKCJkZWJ1Z19tb2RlX21ldGFkYXRhIiksWWI6YSgiZnVuY3Rpb24iKSxSbTphKCJpbnN0YW5jZV9uYW1lIiksTnE6YSgibGl2ZV9vbmx5IiksT3E6YSgibWFsd2FyZV9kaXNhYmxlZCIpLE1FVEFEQVRBOmEoIm1ldGFkYXRhIiksUnE6YSgib3JpZ2luYWxfYWN0aXZpdHlfaWQiKSxUdTphKCJvcmlnaW5hbF92ZW5kb3JfdGVtcGxhdGVfaWQiKSxTdTphKCJvbmNlX29uX2xvYWQiKSxRcTphKCJvbmNlX3Blcl9ldmVudCIpLAprbjphKCJvbmNlX3Blcl9sb2FkIiksVnU6YSgicHJpb3JpdHlfb3ZlcnJpZGUiKSxZdTphKCJyZXNwZWN0ZWRfY29uc2VudF90eXBlcyIpLHRuOmEoInNldHVwX3RhZ3MiKSx5ajphKCJ0YWdfaWQiKSxEbjphKCJ0ZWFyZG93bl90YWdzIikscGw6YSgiZGlzYWJsZWRfaW5fZ29vZ2xlX21vZGUiKSxGcTphKCJnZW5lcmF0ZWRfdGFnZ2luZ19tZXRhZGF0YSIpfX0oKTtmdW5jdGlvbiBIZihhLGIpe3ZhciBjPXt9O2NbR2YuWWJdPSJfXyIrYTtmb3IodmFyIGQgaW4gYiliLmhhc093blByb3BlcnR5KGQpJiYoY1sidnRwXyIrZF09YltkXSk7cmV0dXJuIGN9O2Z1bmN0aW9uIElmKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGMsZDtyZXR1cm4oKGM9ZGF0YSk9PW51bGw/MDooZD1jLmJsb2IpPT1udWxsPzA6ZC5oYXNPd25Qcm9wZXJ0eShhKSk/ISFkYXRhLmJsb2JbYV06Yn1mdW5jdGlvbiBFKGEpe3ZhciBiO2I9Yj09PXZvaWQgMD8iIjpiO3ZhciBjLGQ7cmV0dXJuKChjPWRhdGEpPT1udWxsPzA6KGQ9Yy5ibG9iKT09bnVsbD8wOmQuaGFzT3duUHJvcGVydHkoYSkpP1N0cmluZyhkYXRhLmJsb2JbYV0pOmJ9ZnVuY3Rpb24gSmYoYSl7dmFyIGIsYztyZXR1cm4oKGI9ZGF0YSk9PW51bGw/MDooYz1iLmJsb2IpPT1udWxsPzA6Yy5oYXNPd25Qcm9wZXJ0eShhKSk/TnVtYmVyKGRhdGEuYmxvYlthXSk6MH1mdW5jdGlvbiBLZihhKXt2YXIgYjtiPWI9PT12b2lkIDA/W106Yjt2YXIgYyxkLGU9KGM9ZGF0YSk9PW51bGw/dm9pZCAwOihkPWMuYmxvYik9PW51bGw/dm9pZCAwOmRbYV07cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZTpifQpmdW5jdGlvbiBMZihhKXt2YXIgYjtiPWI9PT12b2lkIDA/IiI6Yjt2YXIgYz1NZig0Nik7cmV0dXJuIGMmJihjPT1udWxsPzA6Yy5oYXNPd25Qcm9wZXJ0eShhKSk/U3RyaW5nKGNbYV0pOmJ9ZnVuY3Rpb24gTmYoYSxiKXt2YXIgYz1NZig0Nik7cmV0dXJuIGMmJihjPT1udWxsPzA6Yy5oYXNPd25Qcm9wZXJ0eShhKSk/TnVtYmVyKGNbYV0pOmJ9ZnVuY3Rpb24gTWYoYSl7dmFyIGIsYztyZXR1cm4oYj1kYXRhKT09bnVsbD92b2lkIDA6KGM9Yi5ibG9iKT09bnVsbD92b2lkIDA6Y1thXX07dmFyIE9mPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPUVycm9yLmNhbGwodGhpcyxjKTt0aGlzLm1lc3NhZ2U9ZC5tZXNzYWdlOyJzdGFjayJpbiBkJiYodGhpcy5zdGFjaz1kLnN0YWNrKTt0aGlzLnBlcm1pc3Npb25JZD1hO3RoaXMucGFyYW1ldGVycz1iO3RoaXMubmFtZT0iUGVybWlzc2lvbkVycm9yIn07d2EoT2YsRXJyb3IpO09mLnByb3RvdHlwZS5nZXRNZXNzYWdlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWVzc2FnZX07ZnVuY3Rpb24gUGYoYSxiKXtpZihBcnJheS5pc0FycmF5KGEpKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoYSwiY29udGV4dCIse3ZhbHVlOntsaW5lOmJbMF19fSk7Zm9yKHZhciBjPTE7YzxhLmxlbmd0aDtjKyspUGYoYVtjXSxiW2NdKX19O2Z1bmN0aW9uIFFmKCl7cmV0dXJuIGZ1bmN0aW9uKGEsYil7dmFyIGM7dmFyIGQ9UmY7YSBpbnN0YW5jZW9mIGJiPyhhLkg9ZCxjPWEpOmM9bmV3IGJiKGEsZCk7dmFyIGU9YztiJiZlLksucHVzaChiKTt0aHJvdyBlO319ZnVuY3Rpb24gUmYoYSl7aWYoIWEubGVuZ3RoKXJldHVybiBhO2EucHVzaCh7aWQ6Im1haW4iLGxpbmU6MH0pO2Zvcih2YXIgYj1hLmxlbmd0aC0xO2I+MDtiLS0pQWIoYVtiXS5pZCkmJmEuc3BsaWNlKGIrKywxKTtmb3IodmFyIGM9YS5sZW5ndGgtMTtjPjA7Yy0tKWFbY10ubGluZT1hW2MtMV0ubGluZTthLnNwbGljZSgwLDEpO3JldHVybiBhfTt2YXIgU2Y9UmVnRXhwKCJbXjAtOVxcListXSIsImciKSxUZj1SZWdFeHAoIlteMC05XFwsKy1dIiwiZyIpLFVmPVJlZ0V4cCgiW14wLTkrLV0iLCJnIik7CmZ1bmN0aW9uIFZmKGEsYil7aWYodHlwZW9mIGE9PT0ibnVtYmVyIilyZXR1cm4gYTt2YXIgYz1TdHJpbmcoYSksZDtpZihiPT09IkFVVE9NQVRJQyIpe3ZhciBlPShjLm1hdGNoKC9cLi9nKXx8W10pLmxlbmd0aCxmPShjLm1hdGNoKC8sL2cpfHxbXSkubGVuZ3RoLGc9Ik5PTkUiO2lmKGU+MCYmZj4wKXt2YXIgaD1jLmxhc3RJbmRleE9mKCIuIik+Yy5sYXN0SW5kZXhPZigiLCIpO2gmJmU9PT0xP2c9IlBFUklPRCI6aHx8ZiE9PTF8fChnPSJDT01NQSIpfWVsc2UgZT09PTE/Zz0oYy5zcGxpdCgiLiIpWzFdLm1hdGNoKC9bMC05XS9nKXx8W10pLmxlbmd0aCE9PTM/IlBFUklPRCI6Ik5PTkUiOmY9PT0xJiYoZz0oYy5zcGxpdCgiLCIpWzFdLm1hdGNoKC9bMC05XS9nKXx8W10pLmxlbmd0aCE9PTM/IkNPTU1BIjoiTk9ORSIpO2Q9Z31lbHNlIGQ9Yj09PSJDT01NQSI/IkNPTU1BIjoiUEVSSU9EIjt2YXIgbCxuO2Q9PT0iUEVSSU9EIj8obD0iLiIsbj1TZik6ZD09PSJDT01NQSI/KGw9IiwiLApuPVRmKToobD0iIixuPVVmKTt2YXIgcD1jLnJlcGxhY2UobiwiIik7aWYobCE9PSIiJiZwLnNwbGl0KGwpLmxlbmd0aD4yKXJldHVybiBhO3ZhciBxPXAucmVwbGFjZSgvLC9nLCIuIik7aWYocT09PSIiKXJldHVybiBhO3ZhciByPU51bWJlcihxKTtyZXR1cm4gaXNOYU4ocik/YTpyfTt2YXIgV2Y9W10sWGY9e307ZnVuY3Rpb24gWWYoYSl7cmV0dXJuIFdmW2FdPT09dm9pZCAwPyExOldmW2FdfTt2YXIgWmY9ZnVuY3Rpb24oKXt0aGlzLkg9e319LCRmPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDsoZD1hLkgpW2JdIT1udWxsfHwoZFtiXT1bXSk7YS5IW2JdLnB1c2goZnVuY3Rpb24oKXtyZXR1cm4gYy5hcHBseShudWxsLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9KX07ZnVuY3Rpb24gYWcoYSxiLGMsZCl7aWYoYSlmb3IodmFyIGU9MDtlPGEubGVuZ3RoO2UrKyl7dmFyIGY9dm9pZCAwLGc9IkEgcG9saWN5IGZ1bmN0aW9uIGRlbmllZCB0aGUgcGVybWlzc2lvbiByZXF1ZXN0Ijt0cnl7Zj1hW2VdKGIsYyxkKSxnKz0iLiJ9Y2F0Y2goaCl7Zz10eXBlb2YgaD09PSJzdHJpbmciP2crKCI6ICIraCk6aCBpbnN0YW5jZW9mIEVycm9yP2crKCI6ICIraC5tZXNzYWdlKTpnKyIuIn1pZighZil0aHJvdyBuZXcgT2YoYyxkLGcpO319CmZ1bmN0aW9uIGJnKGEsYil7dmFyIGM9Y2coZGcuSCxiLGZ1bmN0aW9uKCl7cmV0dXJue319KTt0cnl7cmV0dXJuIGMoYSksITB9Y2F0Y2goZCl7cmV0dXJuITF9fWZ1bmN0aW9uIGNnKGEsYixjKXtyZXR1cm4gZnVuY3Rpb24oZCl7aWYoZCl7dmFyIGU9YS5IW2RdLGY9YS5ILmFsbDtpZihlfHxmKXt2YXIgZz1jLmFwcGx5KHZvaWQgMCxbZF0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpO2FnKGUsYixkLGcpO2FnKGYsYixkLGcpfX19fTt2YXIgZ2c9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7dGhpcy5LPXt9O3RoaXMuSD1uZXcgWmY7dmFyIGU9e30sZj17fSxnPWNnKHRoaXMuSCxhLGZ1bmN0aW9uKGgpe3JldHVybiBoJiZlW2hdP2VbaF0uYXBwbHkodm9pZCAwLFtoXS5jb25jYXQodyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKSk6e319KTtHYihiLGZ1bmN0aW9uKGgsbCl7ZnVuY3Rpb24gbihxKXt2YXIgcj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7aWYoIXBbcV0pdGhyb3cgZWcocSx7fSwiVGhlIHJlcXVlc3RlZCBhZGRpdGlvbmFsIHBlcm1pc3Npb24gIitxKyIgaXMgbm90IGNvbmZpZ3VyZWQuIik7Zy5hcHBseShudWxsLFtxXS5jb25jYXQodyhyKSkpfXZhciBwPXt9O0diKGwsZnVuY3Rpb24ocSxyKXt2YXIgdD1mZyhxLHIsYyk7cFtxXT10LmFzc2VydDtlW3FdfHwoZVtxXT10LmFhKTt0Lk9uJiYhZltxXSYmKGZbcV09dC5Pbil9KTtkLktbaF09ZnVuY3Rpb24ocSxyKXt2YXIgdD1wW3FdO2lmKCF0KXRocm93IGVnKHEsCnt9LCJUaGUgcmVxdWVzdGVkIHBlcm1pc3Npb24gIitxKyIgaXMgbm90IGNvbmZpZ3VyZWQuIik7dmFyIHU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApO3QuYXBwbHkodm9pZCAwLHUpO2cuYXBwbHkodm9pZCAwLHUpO3ZhciB2PWZbcV07diYmdi5hcHBseShudWxsLFtuXS5jb25jYXQodyh1LnNsaWNlKDEpKSkpfX0pfSxoZz1mdW5jdGlvbihhKXtyZXR1cm4gZGcuS1thXXx8ZnVuY3Rpb24oKXt9fTsKZnVuY3Rpb24gZmcoYSxiLGMpe3RyeXt2YXIgZD1jWyJfXyIrYV07aWYoIWQpdGhyb3cgRXJyb3IoIk5vIGZ1bmN0aW9uIGZvdW5kIGZvciBwZXJtaXNzaW9uOiAiK2ErIi4iKTt2YXIgZT1IZihhLGIpO2UudnRwX3Blcm1pc3Npb25OYW1lPWE7ZS52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yPWVnO2RlbGV0ZSBlW0dmLlliXTtyZXR1cm4gZChlKX1jYXRjaChmKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGcpe3Rocm93IG5ldyBPZihnLHt9LCJQZXJtaXNzaW9uICIrZysiIGlzIHVua25vd24uIik7fSxhYTpmdW5jdGlvbigpe3Rocm93IG5ldyBPZihhLHt9LCJQZXJtaXNzaW9uICIrYSsiIGlzIHVua25vd24uIik7fX19fWZ1bmN0aW9uIGVnKGEsYixjKXtyZXR1cm4gbmV3IE9mKGEsYixjKX07dmFyIGlnPUUoNSksamc9RSgyMCksa2c9RSgxKSxsZz0hMTt2YXIgbWc9e307bWcuUG89SWYoMjkpO21nLktyPUlmKDI4KTtmdW5jdGlvbiBuZyhhKXt2YXIgYj0xLGMsZCxlO2lmKGEpZm9yKGI9MCxkPWEubGVuZ3RoLTE7ZD49MDtkLS0pZT1hLmNoYXJDb2RlQXQoZCksYj0oYjw8NiYyNjg0MzU0NTUpK2UrKGU8PDE0KSxjPWImMjY2MzM4MzA0LGI9YyE9PTA/Yl5jPj4yMTpiO3JldHVybiBifTt2YXIgb2c9ZnVuY3Rpb24oYSl7dGhpcy5jYWNoZT1hfTtvZy5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPW5nKGEpLGM9dGhpcy5jYWNoZS5nZXQoYik7aWYoIWMpcmV0dXJue3Byb21pc2U6dm9pZCAwLEtqOjB9O2lmKERhdGUubm93KCk+PWMudGltZXN0YW1wKzlFNSlyZXR1cm4gdGhpcy5jYWNoZS5kZWxldGUoYikse3Byb21pc2U6dm9pZCAwLEtqOjN9O3ZhciBkPWMucmVzb2x2ZWRWYWx1ZT8yOjE7cmV0dXJue3Byb21pc2U6Yy5yZXNvbHZlZFZhbHVlP1Byb21pc2UucmVzb2x2ZShjLnJlc29sdmVkVmFsdWUpOmMucHJvbWlzZSxLajpkfX07b2cucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3ZhciBjPXtwcm9taXNlOmIscmVzb2x2ZWRWYWx1ZTp2b2lkIDAsdGltZXN0YW1wOkRhdGUubm93KCl9O3RoaXMuY2FjaGUuc2V0KG5nKGEpLGMpO2IudGhlbihmdW5jdGlvbihkKXtjLnJlc29sdmVkVmFsdWU9ZH0pfTtmdW5jdGlvbiBwZyhhKXtzd2l0Y2goYSl7Y2FzZSAwOmJyZWFrO2Nhc2UgOTpyZXR1cm4iZTQiO2Nhc2UgNjpyZXR1cm4iZTUiO2Nhc2UgMTQ6cmV0dXJuImU2IjtkZWZhdWx0OnJldHVybiJlNyJ9fTt2YXIgRj17RDp7WGE6ImFkX3BlcnNvbmFsaXphdGlvbiIsa2E6ImFkX3N0b3JhZ2UiLG1hOiJhZF91c2VyX2RhdGEiLHJhOiJhbmFseXRpY3Nfc3RvcmFnZSIsbmM6InJlZ2lvbiIsc2E6ImNvbnNlbnRfdXBkYXRlZCIsWWc6IndhaXRfZm9yX3VwZGF0ZSIsZWg6ImVuZHBvaW50X3R5cGUiLHFwOiJhcHBfcmVtb3ZlIixycDoiYXBwX3N0b3JlX3JlZnVuZCIsdHA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY2FuY2VsIix1cDoiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9jb252ZXJ0Iix2cDoiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9yZW5ldyIsd3A6ImNvbnNlbnRfdXBkYXRlIix4cDoiY29udmVyc2lvbiIsdmw6ImFkZF9wYXltZW50X2luZm8iLHdsOiJhZGRfc2hpcHBpbmdfaW5mbyIseGU6ImFkZF90b19jYXJ0Iix5ZToicmVtb3ZlX2Zyb21fY2FydCIseGw6InZpZXdfY2FydCIsQWQ6ImJlZ2luX2NoZWNrb3V0IixldToiZ2VuZXJhdGVfbGVhZCIsemU6InNlbGVjdF9pdGVtIixvYzoidmlld19pdGVtX2xpc3QiLApRYzoic2VsZWN0X3Byb21vdGlvbiIscWM6InZpZXdfcHJvbW90aW9uIixJYjoicHVyY2hhc2UiLEFlOiJyZWZ1bmQiLHJjOiJ2aWV3X2l0ZW0iLHlsOiJhZGRfdG9fd2lzaGxpc3QiLHlwOiJleGNlcHRpb24iLHpwOiJmaXJzdF9vcGVuIixBcDoiZmlyc3RfdmlzaXQiLHdhOiJndGFnLmNvbmZpZyIsSmI6Imd0YWcuZ2V0IixCcDoiaW5fYXBwX3B1cmNoYXNlIixzYzoicGFnZV92aWV3IixDcDoic2NyZWVuX3ZpZXciLERwOiJzZXNzaW9uX3N0YXJ0IixFcDoic291cmNlX3VwZGF0ZSIsRnA6InRpbWluZ19jb21wbGV0ZSIsR3A6InRyYWNrX3NvY2lhbCIseWY6InVzZXJfZW5nYWdlbWVudCIsSHA6InVzZXJfaWRfdXBkYXRlIixmaDoiYnJhaWRfbGlua19kZWNvcmF0aW9uX3NvdXJjZSIsZ2g6ImJyYWlkX3N0b3JhZ2Vfc291cmNlIixCZDoiZ2NsaWRfbGlua19kZWNvcmF0aW9uX3NvdXJjZSIsQ2Q6ImdjbGlkX3N0b3JhZ2Vfc291cmNlIixTYjoiZ2NsZ2IiLGxiOiJnY2xpZCIsemw6ImdjbGlkX2xlbiIsCkJlOiJnY2xncyIsQ2U6ImdjbGxwIixEZToiZ2Nsc3QiLG1iOiJhZHNfZGF0YV9yZWRhY3Rpb24iLHpmOiJnYWRfc291cmNlIixBZjoiZ2FkX3NvdXJjZV9zcmMiLERkOiJnY2xpZF91cmwiLEFsOiJnY2xzcmMiLEJmOiJnYnJhaWQiLEVlOiJ3YnJhaWQiLFJjOiJhbGxvd19hZF9wZXJzb25hbGl6YXRpb25fc2lnbmFscyIscmk6ImFsbG93X2N1c3RvbV9zY3JpcHRzIixoaDoiYWxsb3dfZGlzcGxheV9mZWF0dXJlcyIsc2k6ImFsbG93X2VuaGFuY2VkX2NvbnZlcnNpb25zIixTYzoiYWxsb3dfZ29vZ2xlX3NpZ25hbHMiLHVpOiJhbGxvd19pbnRlcmVzdF9ncm91cHMiLElwOiJhcHBfaWQiLEpwOiJhcHBfaW5zdGFsbGVyX2lkIixLcDoiYXBwX25hbWUiLExwOiJhcHBfdmVyc2lvbiIsRWQ6ImF1aWQiLGZ1OiJhdXRvX2RldGVjdGlvbl9lbmFibGVkIixCbDoiYXV0b19ldmVudCIsQ2w6ImF3X3JlbWFya2V0aW5nIixpaDoiYXdfcmVtYXJrZXRpbmdfb25seSIsQ2Y6ImRpc2NvdW50IixEZjoiYXdfZmVlZF9jb3VudHJ5IiwKRWY6ImF3X2ZlZWRfbGFuZ3VhZ2UiLEhhOiJpdGVtcyIsRmY6ImF3X21lcmNoYW50X2lkIix3aToiYXdfYmFza2V0X3R5cGUiLEdmOiJjYW1wYWlnbl9jb250ZW50IixIZjoiY2FtcGFpZ25faWQiLElmOiJjYW1wYWlnbl9tZWRpdW0iLEpmOiJjYW1wYWlnbl9uYW1lIixLZjoiY2FtcGFpZ24iLExmOiJjYW1wYWlnbl9zb3VyY2UiLE1mOiJjYW1wYWlnbl90ZXJtIixLYjoiY2xpZW50X2lkIixEbDoicm5kIix4aToiY29uc2VudF91cGRhdGVfdHlwZSIsTXA6ImNvbnRlbnRfZ3JvdXAiLE5wOiJjb250ZW50X3R5cGUiLEZkOiJjb252ZXJzaW9uX2Nvb2tpZV9wcmVmaXgiLHlpOiJjb252ZXJzaW9uX2lkIix1YzoiY29udmVyc2lvbl9saW5rZXIiLEhkOiJjb252ZXJzaW9uX2xpbmtlcl9kaXNhYmxlZCIsRmU6ImNvbnZlcnNpb25fYXBpIix6aToiXyZyY2IiLGpoOiJjb29raWVfZGVwcmVjYXRpb24iLExiOiJjb29raWVfZG9tYWluIixDYjoiY29va2llX2V4cGlyZXMiLFRiOiJjb29raWVfZmxhZ3MiLApJZDoiY29va2llX25hbWUiLHZjOiJjb29raWVfcGF0aCIsbmI6ImNvb2tpZV9wcmVmaXgiLEpkOiJjb29raWVfdXBkYXRlIixUYzoiY291bnRyeSIsZWI6ImN1cnJlbmN5IixHZToiY3VzdG9tZXJfbGlmZXRpbWVfdmFsdWUiLGtoOiJjdXN0b21lcl90eXBlIixIZToiY3VzdG9tX21hcCIsQWk6ImdjbGRjX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLEJpOiJnY2xkY19zdG9yYWdlX3NvdXJjZSIsTmY6ImdjbGRjIixLZDoiZGNsaWQiLEVsOiJkZWJ1Z19tb2RlIixPYToiZGV2ZWxvcGVyX2lkIixPcDoiZGlzYWJsZV9tZXJjaGFudF9yZXBvcnRlZF9wdXJjaGFzZXMiLFVjOiJkY19jdXN0b21fcGFyYW1zIixQcDoiZGNfbmF0dXJhbF9zZWFyY2giLFFwOiJkeW5hbWljX2V2ZW50X3NldHRpbmdzIixGbDoiYWZmaWxpYXRpb24iLG1oOiJjaGVja291dF9vcHRpb24iLENpOiJjaGVja291dF9zdGVwIixHbDoiY291cG9uIixPZjoiaXRlbV9saXN0X25hbWUiLERpOiJsaXN0X25hbWUiLFJwOiJwcm9tb3Rpb25zIiwKTGQ6InNoaXBwaW5nIixIbDoidGF4IixuaDoiZW5nYWdlbWVudF90aW1lX21zZWMiLG9oOiJlbmhhbmNlZF9jbGllbnRfaWQiLFNwOiJlbmhhbmNlZF9jb252ZXJzaW9ucyIsZ3U6ImVuaGFuY2VkX2NvbnZlcnNpb25zX2F1dG9tYXRpY19zZXR0aW5ncyIsSWU6ImVzdGltYXRlZF9kZWxpdmVyeV9kYXRlIixQZjoiZXZlbnRfY2FsbGJhY2siLFRwOiJldmVudF9jYXRlZ29yeSIsVmM6ImV2ZW50X2RldmVsb3Blcl9pZF9zdHJpbmciLE1kOiJldmVudF9pZCIsRWk6Il9ldmVudF9qb2luX2lkIixVcDoiZXZlbnRfbGFiZWwiLFViOiJldmVudCIsSWw6Il8mYWUiLEZpOiJldmVudF9zZXR0aW5ncyIscGg6ImV2ZW50X3RpbWVvdXQiLFZwOiJkZXNjcmlwdGlvbiIsV3A6ImZhdGFsIixYcDoiZXhwZXJpbWVudHMiLE5kOiJleHRfY2xpZW50X2lkIixHaToiZmlyZWJhc2VfaWQiLFFmOiJmaXJzdF9wYXJ0eV9jb2xsZWN0aW9uIixSZjoiX3hfMjAiLFZiOiJfeF8xOSIsWXA6ImZsaWdodF9lcnJvcl9jb2RlIiwKWnA6ImZsaWdodF9lcnJvcl9tZXNzYWdlIixIaToiZmxfYWN0aXZpdHlfY2F0ZWdvcnkiLElpOiJmbF9hY3Rpdml0eV9ncm91cCIscWg6ImZsX2FkdmVydGlzZXJfaWQiLEppOiJtYXRjaF9pZCIsSmw6ImZsX3JhbmRvbV9udW1iZXIiLEtsOiJ0cmFuIixMbDoidSIscmg6ImdhY19nY2xpZCIsSmU6ImdhY193YnJhaWQiLE1sOiJnYWNfd2JyYWlkX211bHRpcGxlX2NvbnZlcnNpb25zIixhcToiZ2FfcmVzdHJpY3RfZG9tYWluIixObDoiZ2FfdGVtcF9jbGllbnRfaWQiLGJxOiJnYV90ZW1wX2VjaWQiLEtlOiJnZHByX2FwcGxpZXMiLHNoOiJfZ3RfbWV0YWRhdGEiLE9sOiJnZW9fZ3JhbnVsYXJpdHkiLFNmOiJ2YWx1ZV9jYWxsYmFjayIsVGY6InZhbHVlX2tleSIsVGE6Imdvb2dsZV9hbmFseXNpc19wYXJhbXMiLExlOiJfZ29vZ2xlX25nIixjcToiX29ubyIsVWY6Imdvb2dsZV9zaWduYWxzIixmcToiZ29vZ2xlX3RsZCIsdGg6ImdwcF9zaWQiLHVoOiJncHBfc3RyaW5nIixPZDoiZ3JvdXBzIiwKUGw6ImdzYV9leHBlcmltZW50X2lkIixWZjoiZ3RhZ19ldmVudF9mZWF0dXJlX3VzYWdlIixRbDoiZ3RtX3VwIixNZToiaWZyYW1lX3N0YXRlIixXZjoiaWdub3JlX3JlZmVycmVyIixSbDoiaW50ZXJuYWxfdHJhZmZpY19yZXN1bHRzIixTbDoiX2lzX2ZwbSIsWWM6ImlzX2xlZ2FjeV9jb252ZXJ0ZWQiLFpjOiJpc19sZWdhY3lfbG9hZGVkIixLaToiaXNfcGFzc3Rocm91Z2giLFBkOiJfbHBzIix0YjoibGFuZ3VhZ2UiLExpOiJsZWdhY3lfZGV2ZWxvcGVyX2lkX3N0cmluZyIsRGI6ImxpbmtlciIsWGY6ImFjY2VwdF9pbmNvbWluZyIsd2M6ImRlY29yYXRlX2Zvcm1zIixBYToiZG9tYWlucyIsYWQ6InVybF9wb3NpdGlvbiIsUWQ6Im1lcmNoYW50X2ZlZWRfbGFiZWwiLFJkOiJtZXJjaGFudF9mZWVkX2xhbmd1YWdlIixTZDoibWVyY2hhbnRfaWQiLFRsOiJtZXRob2QiLGdxOiJuYW1lIixVbDoibmF2aWdhdGlvbl90eXBlIixOZToibmV3X2N1c3RvbWVyIixNaToibm9uX2ludGVyYWN0aW9uIiwKaHE6Im9wdGltaXplX2lkIixWbDoicGFnZV9ob3N0bmFtZSIsWWY6InBhZ2VfcGF0aCIsVWE6InBhZ2VfcmVmZXJyZXIiLE1iOiJwYWdlX3RpdGxlIixpcToicGFzc2VuZ2VycyIsV2w6InBob25lX2NvbnZlcnNpb25fY2FsbGJhY2siLGpxOiJwaG9uZV9jb252ZXJzaW9uX2NvdW50cnlfY29kZSIsWGw6InBob25lX2NvbnZlcnNpb25fY3NzX2NsYXNzIixrcToicGhvbmVfY29udmVyc2lvbl9pZHMiLFlsOiJwaG9uZV9jb252ZXJzaW9uX251bWJlciIsWmw6InBob25lX2NvbnZlcnNpb25fb3B0aW9ucyIsbHE6Il9wbGF0aW51bV9yZXF1ZXN0X3N0YXR1cyIsbXE6Il9wcm90ZWN0ZWRfYXVkaWVuY2VfZW5hYmxlZCIsd2g6InF1YW50aXR5Iix4aDoicmVkYWN0X2RldmljZV9pbmZvIixhbToicmVmZXJyYWxfZXhjbHVzaW9uX2RlZmluaXRpb24iLGh1OiJfcmVxdWVzdF9zdGFydF90aW1lIixXYjoicmVzdHJpY3RlZF9kYXRhX3Byb2Nlc3NpbmciLG5xOiJyZXRva2VuIixvcToic2FtcGxlX3JhdGUiLApOaToic2NyZWVuX25hbWUiLGJkOiJzY3JlZW5fcmVzb2x1dGlvbiIsYm06Il9zY3JpcHRfc291cmNlIixwcToic2VhcmNoX3Rlcm0iLFRkOiJzZW5kX3BhZ2VfdmlldyIsWGI6InNlbmRfdG8iLE9pOiJzZXJ2ZXJfY29udGFpbmVyXzNwX2VucmljaG1lbnQiLGRkOiJzZXJ2ZXJfY29udGFpbmVyX3VybCIscXE6InNlc3Npb25fYXR0cmlidXRlc19lbmNvZGVkIix5aDoic2Vzc2lvbl9kdXJhdGlvbiIsemg6InNlc3Npb25fZW5nYWdlZCIsUGk6InNlc3Npb25fZW5nYWdlZF90aW1lIix4Yzoic2Vzc2lvbl9pZCIsQWg6InNlc3Npb25fbnVtYmVyIixaZjoiX3NoYXJlZF91c2VyX2lkIixVZDoiZGVsaXZlcnlfcG9zdGFsX2NvZGUiLGl1OiJfdGFnX2ZpcmluZ19kZWxheSIsanU6Il90YWdfZmlyaW5nX3RpbWUiLGt1OiJ0ZW1wb3JhcnlfY2xpZW50X2lkIixRaToidGVzdG9ubHkiLHJxOiJfdGltZXpvbmUiLFBlOiJ0b3Btb3N0X3VybCIsUWU6InRyYWNraW5nX2lkIixSaToidHJhZmZpY190eXBlIiwKUGE6InRyYW5zYWN0aW9uX2lkIixkbToidHJhbnNhY3Rpb25faWRfc291cmNlIix5YzoidHJhbnNwb3J0X3VybCIsc3E6InRyaXBfdHlwZSIsVmQ6InVwZGF0ZSIsemM6InVybF9wYXNzdGhyb3VnaCIsZm06InVwdGdzIixjZzoiX3VzZXJfYWdlbnRfYXJjaGl0ZWN0dXJlIixkZzoiX3VzZXJfYWdlbnRfYml0bmVzcyIsZWc6Il91c2VyX2FnZW50X2Z1bGxfdmVyc2lvbl9saXN0IixmZzoiX3VzZXJfYWdlbnRfbW9iaWxlIixnZzoiX3VzZXJfYWdlbnRfbW9kZWwiLGhnOiJfdXNlcl9hZ2VudF9wbGF0Zm9ybSIsaWc6Il91c2VyX2FnZW50X3BsYXRmb3JtX3ZlcnNpb24iLGpnOiJfdXNlcl9hZ2VudF93b3c2NCIsQWM6InVzZXJfZGF0YSIsZ206InVzZXJfZGF0YV9hdXRvX2xhdGVuY3kiLGhtOiJ1c2VyX2RhdGFfYXV0b19tZXRhIixpbToidXNlcl9kYXRhX2F1dG9fbXVsdGkiLGptOiJ1c2VyX2RhdGFfYXV0b19zZWxlY3RvcnMiLGttOiJ1c2VyX2RhdGFfYXV0b19zdGF0dXMiLEJjOiJ1c2VyX2RhdGFfbW9kZSIsCmxtOiJ1c2VyX2RhdGFfc2V0dGluZ3MiLGZiOiJ1c2VyX2lkIixXZDoidXNlcl9wcm9wZXJ0aWVzIixvbToiX3VzZXJfcmVnaW9uIixrZzoidXNfcHJpdmFjeV9zdHJpbmciLFFhOiJ2YWx1ZSIscW06IndicmFpZF9tdWx0aXBsZV9jb252ZXJzaW9ucyIsZWQ6Il9mcG1fcGFyYW1ldGVycyIsV2k6Il9ob3N0X25hbWUiLFZtOiJfaW5fcGFnZV9jb21tYW5kIixZaToiX2lwX292ZXJyaWRlIixabToiX2lzX3Bhc3N0aHJvdWdoX2NpZCIsSmg6Il9tZWFzdXJlbWVudF90eXBlIixkZToibm9uX3BlcnNvbmFsaXplZF9hZHMiLG9qOiJfc3N0X3BhcmFtZXRlcnMiLFlxOiJzZ3RtX2dlb191c2VyX2NvdW50cnkiLEdkOiJjb252ZXJzaW9uX2xhYmVsIix6YToicGFnZV9sb2NhdGlvbiIsV2M6Il9leHRyYWN0ZWRfZGF0YSIsWGM6Imdsb2JhbF9kZXZlbG9wZXJfaWRfc3RyaW5nIixPZToidGNfcHJpdmFjeV9zdHJpbmcifX07dmFyIEg9e0o6e1NvOiJhYm9ydF93aXRob3V0X2ZhaWwiLGtpOiJhY2NlcHRfYnlfZGVmYXVsdCIsQms6ImFkZF90YWdfdGltaW5nIixEazoiYWRzX2NvbnNlbnRfZ3JhbnRlZCIsdmQ6ImFkc19ldmVudF9wYWdlX3ZpZXciLHdkOiJhbGxvd19hZF9wZXJzb25hbGl6YXRpb24iLFF0OiJhdXRvX2V2ZW50IixLazoiYmF0Y2hfb25fbmF2aWdhdGlvbiIsWGc6ImJpc2NvdHRpX2pvaW5faWQiLFBrOiJjbGllbnRfaWRfc291cmNlIix1ZjoiY29uc2VudF9ldmVudF9pZCIsdmY6ImNvbnNlbnRfcHJpb3JpdHlfaWQiLFN0OiJjb25zZW50X3N0YXRlIixzYToiY29uc2VudF91cGRhdGVkIix3ZjoiY29udmVyc2lvbl9saW5rZXJfZW5hYmxlZCIsVHQ6ImNvbnZlcnNpb25fbWFya2luZ19jYWxsZWQiLEdhOiJjb29raWVfb3B0aW9ucyIsb2w6ImRjX3JhbmRvbSIsWnQ6ImRlZHVwZV9pZCIsUGM6ImVtX2V2ZW50IixidToiZW5kcG9pbnRfZm9yX2RlYnVnIix0bDoiZW5oYW5jZWRfY2xpZW50X2lkX3NvdXJjZSIsCnBwOiJlbmhhbmNlZF9tYXRjaF9yZXN1bHQiLHJtOiJldWlkX2xvZ2dlZF9pbl9zdGF0ZSIsbGc6ImV1aWRfbW9kZV9lbmFibGVkIix0cToiZXZlbnRfcHJvdmVuYW5jZSIsbXU6ImV2ZW50X3NvdXJjZSIsRWI6ImV2ZW50X3N0YXJ0X3RpbWVzdGFtcF9tcyIsd206ImV2ZW50X3VzYWdlIixDaDoiZXh0cmFfdGFnX2V4cGVyaW1lbnRfaWRzIixwdToiYWRkX3BhcmFtZXRlciIsVWk6ImNvdW50aW5nX21ldGhvZCIsRGg6InNlbmRfYXNfaWZyYW1lIixxdToicGFyYW1ldGVyX29yZGVyIixFaDoicGFyc2VkX3RhcmdldCIsc3U6ImZvcm1fZXZlbnRfY2FuY2VsZWQiLEFxOiJnYTRfY29sbGVjdGlvbl9zdWJkb21haW4iLFZpOiJnYTRfcmVxdWVzdF9mbGFncyIsTm06ImdicmFpZF9jb29raWVfbWFya2VkIixRbToiZ3RtX2V4dHJhY3RlZF9kYXRhIixDYzoiaGFuZGxlX2ludGVybmFsbHkiLHV1OiJoYXNfZ2FfY29udmVyc2lvbl9jb25zZW50cyIsZGE6ImhpdF90eXBlIixEYzoiaGl0X3R5cGVfb3ZlcnJpZGUiLApIcToiaWdub3JlX2R1cGVfY29uZmlnIixPdToiaXNfY29uZmlnX2NvbW1hbmQiLEdoOiJpc19jb25zZW50X3VwZGF0ZSIsbWc6ImlzX2NvbnZlcnNpb24iLFdtOiJpc19lY29tbWVyY2UiLFhtOiJpc19lY19jbV9zcGxpdCIsYWU6ImlzX2V4dGVybmFsX2V2ZW50IixuZzoiaXNfZmlyc3RfdmlzaXQiLFltOiJpc19maXJzdF92aXNpdF9jb252ZXJzaW9uIixaaToiaXNfZmxfZmFsbGJhY2tfY29udmVyc2lvbl9mbG93X2FsbG93ZWQiLGZkOiJpc19mcG1fZW5jcnlwdGlvbiIsYWo6ImlzX2ZwbV9zcGxpdCIsb2I6ImlzX2djcF9icm93c2VyIixiajoiaXNfZ29vZ2xlX21lYXN1cmVtZW50X2FsbG93ZWQiLGNqOiJpc19nb29nbGVfc2lnbmFsc19lbmFibGVkIixiZToiaXNfbWVyY2hhbnRfY2VudGVyIixIaDoiaXNfbmV3X3RvX3NpdGUiLEVjOiJpc19wZXJzb25hbGl6YXRpb24iLGRqOiJpc19zZXJ2ZXJfc2lkZV9kZXN0aW5hdGlvbiIsVGU6ImlzX3Nlc3Npb25fc3RhcnQiLGJuOiJpc19zZXNzaW9uX3N0YXJ0X2NvbnZlcnNpb24iLApQdToiaXNfc2d0bV9nYV9hZHNfY29udmVyc2lvbl9zdHVkeV9jb250cm9sX2dyb3VwIixRdToiaXNfc2d0bV9wcmVoaXQiLGRuOiJpc19zZ3RtX3NlcnZpY2Vfd29ya2VyIixJaDoiaXNfc3BsaXRfY29udmVyc2lvbiIsSXE6ImlzX3N5biIsRmM6ImlzX3Rlc3RfZXZlbnQiLG9nOiJqb2luX2lkIixlajoiam9pbl9lbGFwc2VkIixwZzoiam9pbl90aW1lcl9zZWMiLGduOiJsb2NhbF9zdG9yYWdlX2F3X2NvbnZlcnNpb25fY291bnRlcnMiLFdlOiJ0dW5uZWxfdXBkYXRlZCIsVXU6InByZWhpdF9mb3JfcmV0cnkiLFd1OiJwcm9taXNlcyIsWHU6InJlY29yZF9hd19sYXRlbmN5IixYZToicmVkYWN0X2Fkc19kYXRhIixZZToicmVkYWN0X2NsaWNrX2lkcyIscG46InJlbWFya2V0aW5nX29ubHkiLGxqOiJzZW5kX2NjbV9wYXJhbGxlbF9waW5nIixoZDoic2VuZF9kb3VibGVjbGlja19qb2luIixNaDoic2VuZF9mcG1fZ2VvX2pvaW4iLE5oOiJzZW5kX2ZwbV9nb29nbGVfam9pbiIsWnU6InNlbmRfY2NtX3BhcmFsbGVsX3Rlc3RfcGluZyIsCnJuOiJzZW5kX2dvb2dsZV9tZWFzdXJlbWVudCIscmc6InNlbmRfdGxkX2pvaW4iLHNnOiJzZW5kX3RvX2Rlc3RpbmF0aW9ucyIsbWo6InNlbmRfdG9fdGFyZ2V0cyIsc246InNlbmRfdXNlcl9kYXRhX2hpdCIscGo6InNlcnZpY2Vfd29ya2VyX2NvbnRleHQiLE5iOiJzb3VyY2VfY2Fub25pY2FsX2lkIixKYToic3BlY3VsYXRpdmUiLHluOiJzcGVjdWxhdGl2ZV9pbl9tZXNzYWdlIixBbjoic3VwcHJlc3Nfc2NyaXB0X2xvYWQiLEJuOiJzeW5fb3JfbW9kIix6ajoidHJhbnNpZW50X2Vjc2lkIix0ZzoidHJhbnNtaXNzaW9uX3R5cGUiLFlhOiJ1c2VyX2RhdGEiLGd2OiJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWMiLGh2OiJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWNfZ2V0dGVyIixHbjoidXNlcl9kYXRhX2Zyb21fY29kZSIsaXI6InVzZXJfZGF0YV9mcm9tX21hbnVhbCIsanY6InVzZXJfZGF0YV9tb2RlIix1ZzoidXNlcl9pZF91cGRhdGVkIn19O3ZhciBKPXtVOntrcDoxLG1wOjIsRW46Myxubjo0LHFsOjUscmw6NixFcTo3LG5wOjgsRHE6OSxqcDoxMCxocDoxMSx4bjoxMix2bjoxMyxOazoxNCxVbzoxNSxXbzoxNixobjoxNyxzbDoxOCxmbjoxOSxscDoyMCxQcToyMSxhcDoyMixWbzoyMyxYbzoyNCxubDoyNSxMazoyNixlcjoyNyxKbToyOCxVbToyOSxUbTozMCxTbTozMSxNbTozMixLbTozMyxMbTozNCxHbTozNSxGbTozNixIbTozNyxJbTozOCxCcTozOSxDcTo0MCxVcTo0MX19O0ouVVtKLlUua3BdPSJDUkVBVEVfRVZFTlRfU09VUkNFIjtKLlVbSi5VLm1wXT0iRURJVF9FVkVOVCI7Si5VW0ouVS5Fbl09IlRSQUZGSUNfVFlQRSI7Si5VW0ouVS5ubl09IlJFRkVSUkFMX0VYQ0xVU0lPTiI7Si5VW0ouVS5xbF09IkVDT01NRVJDRV9GUk9NX0dUTV9UQUciO0ouVVtKLlUucmxdPSJFQ09NTUVSQ0VfRlJPTV9HVE1fVUFfU0NIRU1BIjtKLlVbSi5VLkVxXT0iR0FfU0VORCI7Si5VW0ouVS5ucF09IkVNX0ZPUk0iOwpKLlVbSi5VLkRxXT0iR0FfR0FNX0xJTksiO0ouVVtKLlUuanBdPSJDUkVBVEVfRVZFTlRfQVVUT19QQUdFX1BBVEgiO0ouVVtKLlUuaHBdPSJDUkVBVEVEX0VWRU5UIjtKLlVbSi5VLnhuXT0iU0lERUxPQURFRCI7Si5VW0ouVS52bl09IlNHVE1fTEVHQUNZX0NPTkZJR1VSQVRJT04iO0ouVVtKLlUuTmtdPSJDQ0RfRU1fRVZFTlQiO0ouVVtKLlUuVW9dPSJBVVRPX1JFREFDVF9FTUFJTCI7Si5VW0ouVS5Xb109IkFVVE9fUkVEQUNUX1FVRVJZX1BBUkFNIjtKLlVbSi5VLmhuXT0iTVVMVElQTEVfUEFHRVZJRVdfRlJPTV9DT05GSUciO0ouVVtKLlUuc2xdPSJFTV9FVkVOVF9TRU5UX0JFRk9SRV9DT05GSUciO0ouVVtKLlUuZm5dPSJMT0FERURfVklBX0NTVF9PUl9TSURFTE9BRElORyI7Si5VW0ouVS5scF09IkRFQ09ERURfUEFSQU1fTUFUQ0giO0ouVVtKLlUuUHFdPSJOT05fREVDT0RFRF9QQVJBTV9NQVRDSCI7Si5VW0ouVS5hcF09IkNDRF9FVkVOVF9TR1RNIjsKSi5VW0ouVS5Wb109IkFVVE9fUkVEQUNUX0VNQUlMX1NHVE0iO0ouVVtKLlUuWG9dPSJBVVRPX1JFREFDVF9RVUVSWV9QQVJBTV9TR1RNIjtKLlVbSi5VLm5sXT0iREFJTFlfTElNSVRfUkVBQ0hFRCI7Si5VW0ouVS5Ma109IkJVUlNUX0xJTUlUX1JFQUNIRUQiO0ouVVtKLlUuZXJdPSJTSEFSRURfVVNFUl9JRF9TRVRfQUZURVJfUkVRVUVTVCI7Si5VW0ouVS5KbV09IkdBNF9NVUxUSVBMRV9TRVNTSU9OX0NPT0tJRVMiO0ouVVtKLlUuVW1dPSJJTlZBTElEX0dBNF9TRVNTSU9OX0NPVU5UIjtKLlVbSi5VLlRtXT0iSU5WQUxJRF9HQTRfTEFTVF9FVkVOVF9USU1FU1RBTVAiO0ouVVtKLlUuU21dPSJJTlZBTElEX0dBNF9KT0lOX1RJTUVSIjtKLlVbSi5VLk1tXT0iR0E0X1NUQUxFX1NFU1NJT05fQ09PS0lFX1NFTEVDVEVEIjtKLlVbSi5VLkttXT0iR0E0X1NFU1NJT05fQ09PS0lFX0dTMV9SRUFEIjtKLlVbSi5VLkxtXT0iR0E0X1NFU1NJT05fQ09PS0lFX0dTMl9SRUFEIjsKSi5VW0ouVS5HbV09IkdBNF9ETF9QQVJBTV9SRUNPVkVSWV9BVkFJTEFCTEUiO0ouVVtKLlUuRm1dPSJHQTRfRExfUEFSQU1fUkVDT1ZFUllfQVBQTElFRCI7Si5VW0ouVS5IbV09IkdBNF9HT09HTEVfTUVBU1VSRU1FTlRfQUxMT1dFRCI7Si5VW0ouVS5JbV09IkdBNF9HT09HTEVfU0lHTkFMU19FTkFCTEVEIjtKLlVbSi5VLkJxXT0iR0E0X0ZBTExCQUNLX1JFUVVFU1QiO0ouVVtKLlUuQ3FdPSJHQV9BRFNfTElOS19CRUZPUkVfQ09OVkVSU0lPTl9NQVJLSU5HIjtKLlVbSi5VLlVxXT0iUExBVElOVU1fRUxJR0lCTEUiO3ZhciB4Zz17fSx5Zz0oeGcudWFhPSEwLHhnLnVhYj0hMCx4Zy51YWZ2bD0hMCx4Zy51YW1iPSEwLHhnLnVhbT0hMCx4Zy51YXA9ITAseGcudWFwdj0hMCx4Zy51YXc9ITAseGcpOwp2YXIgRWc9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YSxlPWJbY107aWYoIUNnLmV4ZWMoZSkpdGhyb3cgRXJyb3IoIkludmFsaWQga2V5IHdpbGRjYXJkIik7dmFyIGY9ZS5pbmRleE9mKCIuKiIpLGc9ZiE9PS0xJiZmPT09ZS5sZW5ndGgtMixoPWc/ZS5zbGljZSgwLGUubGVuZ3RoLTIpOmUsbDthOmlmKGQubGVuZ3RoPT09MClsPSExO2Vsc2V7Zm9yKHZhciBuPWQuc3BsaXQoIi4iKSxwPTA7cDxuLmxlbmd0aDtwKyspaWYoIURnLmV4ZWMobltwXSkpe2w9ITE7YnJlYWsgYX1sPSEwfWlmKCFsfHxoLmxlbmd0aD5kLmxlbmd0aHx8IWcmJmQubGVuZ3RoIT09ZS5sZW5ndGg/MDpnP1NiKGQsaCkmJihkPT09aHx8ZC5jaGFyQXQoaC5sZW5ndGgpPT09Ii4iKTpkPT09aClyZXR1cm4hMH1yZXR1cm4hMX0sRGc9L15bYS16JF9dW1x3LSRdKiQvaSxDZz0vXig/OlthLXpfJF1bYS16LV8kMC05XSpcLikqW2Etel8kXVthLXotXyQwLTldKig/OlwuXCopPyQvaTsKdmFyIEZnPVsibWF0Y2hlcyIsIndlYmtpdE1hdGNoZXNTZWxlY3RvciIsIm1vek1hdGNoZXNTZWxlY3RvciIsIm1zTWF0Y2hlc1NlbGVjdG9yIiwib01hdGNoZXNTZWxlY3RvciJdO2Z1bmN0aW9uIEdnKGEsYil7aWYoIWEpcmV0dXJuITE7dHJ5e2Zvcih2YXIgYz0wO2M8RmcubGVuZ3RoO2MrKyl7dmFyIGQ9RmdbY107aWYoYVtkXSE9bnVsbClyZXR1cm4gYVtkXShiKX19Y2F0Y2goZSl7fXJldHVybiExfWZ1bmN0aW9uIEhnKGEsYil7dmFyIGM9U3RyaW5nKGEpLGQ9U3RyaW5nKGIpLGU9Yy5sZW5ndGgtZC5sZW5ndGg7cmV0dXJuIGU+PTAmJmMuaW5kZXhPZihkLGUpPT09ZX1mdW5jdGlvbiBJZyhhLGIpe3JldHVybiBTdHJpbmcoYSkuc3BsaXQoIiwiKS5pbmRleE9mKFN0cmluZyhiKSk+PTB9CmZ1bmN0aW9uIEpnKGEsYixjLGQpe3ZhciBlPWM/ImkiOnZvaWQgMDt0cnl7dmFyIGY9U3RyaW5nKGIpK1N0cmluZyhlKSxnPWQ9PW51bGw/dm9pZCAwOmQuZ2V0KGYpO2d8fChnPW5ldyBSZWdFeHAoYixlKSxkPT1udWxsfHxkLnNldChmLGcpKTtyZXR1cm4gZy50ZXN0KGEpfWNhdGNoKGgpe3JldHVybiExfX1mdW5jdGlvbiBLZyhhLGIpe3JldHVybiBTdHJpbmcoYSkuaW5kZXhPZihTdHJpbmcoYikpPj0wfWZ1bmN0aW9uIExnKGEsYil7cmV0dXJuIFN0cmluZyhhKT09PVN0cmluZyhiKX1mdW5jdGlvbiBNZyhhLGIpe3JldHVybiBOdW1iZXIoYSk+PU51bWJlcihiKX1mdW5jdGlvbiBOZyhhLGIpe3JldHVybiBOdW1iZXIoYSk8PU51bWJlcihiKX1mdW5jdGlvbiBPZyhhLGIpe3JldHVybiBOdW1iZXIoYSk+TnVtYmVyKGIpfWZ1bmN0aW9uIFBnKGEsYil7cmV0dXJuIE51bWJlcihhKTxOdW1iZXIoYil9CmZ1bmN0aW9uIFFnKGEsYil7cmV0dXJuIFNiKFN0cmluZyhhKSxTdHJpbmcoYikpfTtmdW5jdGlvbiBYZyhhKXt2YXIgYj1hLnNlYXJjaDtyZXR1cm4gYS5wcm90b2NvbCsiLy8iK2EuaG9zdG5hbWUrYS5wYXRobmFtZSsoYj9iKyImcmljaHNzdHNzZSI6Ij9yaWNoc3N0c3NlIil9O3ZhciBZZz1mdW5jdGlvbigpe3RoaXMuUj0iIn0sJGc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgYz1iLmZhbGxiYWNrX3VybCxkPWIuZmFsbGJhY2tfdXJsX21ldGhvZDtpZihjJiZkKXt2YXIgZT17fTtaZyhhLChlW2RdPVtjXSxlLm9wdGlvbnM9e30sZSkpfX19LGFoPWZ1bmN0aW9uKGEsYixjKXtpZihBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgZD1tKGEpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO3R5cGVvZiBmPT09InN0cmluZyImJmMoZixiKX19LFpnPWZ1bmN0aW9uKGEsYil7aWYoYilmb3IodmFyIGM9Q2QoYi5vcHRpb25zKT9iLm9wdGlvbnM6e30sZD1tKE9iamVjdC5rZXlzKGIpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZSxnPWJbZl07c3dpdGNoKGYpe2Nhc2UgInNlbmRfcGl4ZWwiOmFoKGcsYyxmdW5jdGlvbihoLGwpe3JldHVybiB2b2lkIGEuSyhoLGwpfSk7YnJlYWs7Y2FzZSAiZmV0Y2giOmFoKGcsCmMsZnVuY3Rpb24oaCxsKXtyZXR1cm4gdm9pZCBhLkgoaCxsKX0pfX19O3ZhciBiaD0vXihbYS16XVthLXowLTldKik6KCF8XD8pKFwqfHN0cmluZ3xib29sZWFufG51bWJlcnxGbnxQaXhpZU1hcHxMaXN0fE9wYXF1ZVZhbHVlKSQvaSxjaD17Rm46ImZ1bmN0aW9uIixQaXhpZU1hcDoiT2JqZWN0IixMaXN0OiJBcnJheSJ9OwpmdW5jdGlvbiBkaChhLGIpe2Zvcih2YXIgYz1bImlucHV0OiEqIl0sZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZT1iaC5leGVjKGNbZF0pO2lmKCFlKXRocm93IEVycm9yKCJJbnRlcm5hbCBFcnJvciBpbiAiK2EpO3ZhciBmPWVbMV0sZz1lWzJdPT09IiEiLGg9ZVszXSxsPWJbZF07aWYobD09bnVsbCl7aWYoZyl0aHJvdyBFcnJvcigiRXJyb3IgaW4gIithKyIuIFJlcXVpcmVkIGFyZ3VtZW50ICIrZisiIG5vdCBzdXBwbGllZC4iKTt9ZWxzZSBpZihoIT09IioiKXt2YXIgbj10eXBlb2YgbDtsIGluc3RhbmNlb2YgS2Q/bj0iRm4iOmwgaW5zdGFuY2VvZiBHZD9uPSJMaXN0IjpsIGluc3RhbmNlb2Yga2I/bj0iUGl4aWVNYXAiOmwgaW5zdGFuY2VvZiBTZD9uPSJQaXhpZVByb21pc2UiOmwgaW5zdGFuY2VvZiBQZCYmKG49Ik9wYXF1ZVZhbHVlIik7aWYobiE9PWgpdGhyb3cgRXJyb3IoIkVycm9yIGluICIrYSsiLiBBcmd1bWVudCAiK2YrIiBoYXMgdHlwZSAiKygoY2hbbl18fG4pKyIsIHdoaWNoIGRvZXMgbm90IG1hdGNoIHJlcXVpcmVkIHR5cGUgIikrCigoY2hbaF18fGgpKyIuIikpO319fWZ1bmN0aW9uIEsoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPW0oYyksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyBpbnN0YW5jZW9mIEtkP2QucHVzaCgiZnVuY3Rpb24iKTpnIGluc3RhbmNlb2YgR2Q/ZC5wdXNoKCJBcnJheSIpOmcgaW5zdGFuY2VvZiBrYj9kLnB1c2goIk9iamVjdCIpOmcgaW5zdGFuY2VvZiBTZD9kLnB1c2goIlByb21pc2UiKTpnIGluc3RhbmNlb2YgUGQ/ZC5wdXNoKCJPcGFxdWVWYWx1ZSIpOmQucHVzaCh0eXBlb2YgZyl9cmV0dXJuIEVycm9yKCJBcmd1bWVudCBlcnJvciBpbiAiK2ErIi4gRXhwZWN0ZWQgYXJndW1lbnQgdHlwZXMgWyIrKGIuam9pbigiLCIpKyJdLCBidXQgcmVjZWl2ZWQgWyIpKyhkLmpvaW4oIiwiKSsiXS4iKSl9ZnVuY3Rpb24gZWgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBrYn1mdW5jdGlvbiBmaChhKXtyZXR1cm4gZWgoYSl8fGE9PT1udWxsfHxnaChhKX0KZnVuY3Rpb24gaGgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBLZH1mdW5jdGlvbiBpaChhKXtyZXR1cm4gaGgoYSl8fGE9PT1udWxsfHxnaChhKX1mdW5jdGlvbiBqaChhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEdkfWZ1bmN0aW9uIGtoKGEpe3JldHVybiBhIGluc3RhbmNlb2YgUGR9ZnVuY3Rpb24gbGgoYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyJ9ZnVuY3Rpb24gbWgoYSl7cmV0dXJuIGxoKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gbmgoYSl7cmV0dXJuIHR5cGVvZiBhPT09ImJvb2xlYW4ifWZ1bmN0aW9uIG9oKGEpe3JldHVybiBuaChhKXx8Z2goYSl9ZnVuY3Rpb24gcGgoYSl7cmV0dXJuIG5oKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gcWgoYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9ZnVuY3Rpb24gZ2goYSl7cmV0dXJuIGE9PT12b2lkIDB9O2Z1bmN0aW9uIHJoKGEpe3JldHVybiIiK2F9CmZ1bmN0aW9uIHNoKGEsYil7dmFyIGM9W107cmV0dXJuIGN9O2Z1bmN0aW9uIHRoKGEsYil7dmFyIGM9bmV3IEtkKGEsZnVuY3Rpb24oKXtmb3IodmFyIGQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApLGU9MDtlPGQubGVuZ3RoO2UrKylkW2VdPXRoaXMuZXZhbHVhdGUoZFtlXSk7dHJ5e3JldHVybiBiLmFwcGx5KHRoaXMsZCl9Y2F0Y2goZyl7dGhyb3cgY2IoZyk7fX0pO2MuWmEoKTtyZXR1cm4gY30KZnVuY3Rpb24gdWgoYSxiKXt2YXIgYz1uZXcga2IsZDtmb3IoZCBpbiBiKWlmKGIuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWJbZF07eWIoZSk/Yy5zZXQoZCx0aChhKyJfIitkLGUpKTpDZChlKT9jLnNldChkLHVoKGErIl8iK2QsZSkpOihBYihlKXx8emIoZSl8fHR5cGVvZiBlPT09ImJvb2xlYW4iKSYmYy5zZXQoZCxlKX1jLlphKCk7cmV0dXJuIGN9O2Z1bmN0aW9uIHdoKGEsYil7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO2lmKCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwidW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgYz17fSxkPW5ldyBrYjtyZXR1cm4gZD11aCgiQXNzZXJ0QXBpU3ViamVjdCIsCmMpfTtmdW5jdGlvbiB4aChhLGIpe2lmKCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwidW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgU2QpdGhyb3cgRXJyb3IoIkFyZ3VtZW50IGFjdHVhbCBjYW5ub3QgaGF2ZSB0eXBlIFByb21pc2UuIEFzc2VydGlvbnMgb24gYXN5bmNocm9ub3VzIGNvZGUgYXJlbid0IHN1cHBvcnRlZC4iKTt2YXIgYz17fSxkPW5ldyBrYjtyZXR1cm4gZD11aCgiQXNzZXJ0VGhhdFN1YmplY3QiLGMpfTtmdW5jdGlvbiB5aChhKXtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIGI9T2EuYXBwbHkoMCxhcmd1bWVudHMpLGM9W10sZD10aGlzLlQsZT0wO2U8Yi5sZW5ndGg7KytlKWMucHVzaChUZChiW2VdLGQpKTtyZXR1cm4gVWQoYS5hcHBseShudWxsLGMpKX19ZnVuY3Rpb24gemgoKXtmb3IodmFyIGE9TWF0aCxiPUFoLGM9e30sZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdO2EuaGFzT3duUHJvcGVydHkoZSkmJihjW2VdPXloKGFbZV0uYmluZChhKSkpfXJldHVybiBjfTtmdW5jdGlvbiBCaChhKXtyZXR1cm4gYSE9bnVsbCYmU2IoYSwiX19jdnRfIil9O2Z1bmN0aW9uIENoKGEpe3ZhciBiO3JldHVybiBifTtmdW5jdGlvbiBEaChhKXt2YXIgYjtyZXR1cm4gYn07ZnVuY3Rpb24gRWgoYSl7dHJ5e3JldHVybiBlbmNvZGVVUkkoYSl9Y2F0Y2goYil7fX07ZnVuY3Rpb24gRmgoYSl7dHJ5e3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGEpKX1jYXRjaChiKXt9fTtmdW5jdGlvbiBHaChhLGIpe3ZhciBjPSExO3ZhciBkPUpTT04ucGFyc2UoYSk7aWYoIWQpdGhyb3cgRXJyb3IoIkludmFsaWQgYm9vbGVhbiBleHByZXNzaW9uIHN0cmluZyB3YXMgZ2l2ZW4uIik7Yz1IaChkLGIpO3JldHVybiBjfQp2YXIgSWg9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKyl7aWYoYT09PXZvaWQgMClyZXR1cm47YT1hW2JbY11dfXJldHVybiBhfSxKaD1mdW5jdGlvbihhLGIpe3ZhciBjPWIucHJlSGl0O2lmKGMpe3ZhciBkPWFbMF07c3dpdGNoKGQpe2Nhc2UgImhpdERhdGEiOnJldHVybiBhLmxlbmd0aDwyP3ZvaWQgMDpJaChjLmdldEhpdERhdGEoYVsxXSksYS5zbGljZSgyKSk7Y2FzZSAibWV0YWRhdGEiOnJldHVybiBhLmxlbmd0aDwyP3ZvaWQgMDpJaChjLmdldE1ldGFkYXRhKGFbMV0pLGEuc2xpY2UoMikpO2Nhc2UgImV2ZW50TmFtZSI6cmV0dXJuIGMuZ2V0RXZlbnROYW1lKCk7Y2FzZSAiZGVzdGluYXRpb25JZCI6cmV0dXJuIGMuZ2V0RGVzdGluYXRpb25JZCgpO2RlZmF1bHQ6dGhyb3cgRXJyb3IoZCsiIGlzIG5vdCBhIHZhbGlkIGZpZWxkIHRoYXQgY2FuIGJlIGFjY2Vzc2VkXG4gICAgICAgICAgICAgICAgICAgICAgZnJvbSBQcmVIaXQgZGF0YS4iKTt9fX0sCktoPWZ1bmN0aW9uKGEsYil7aWYoYSl7aWYoYS5jb250ZXh0VmFsdWUhPT12b2lkIDApe3ZhciBjO2E6e3ZhciBkPWEuY29udGV4dFZhbHVlLGU9ZC5rZXlQYXJ0cztpZihlJiZlLmxlbmd0aCE9PTApe3ZhciBmPWQubmFtZXNwYWNlVHlwZTtzd2l0Y2goZil7Y2FzZSAxOmM9SmgoZSxiKTticmVhayBhO2Nhc2UgMjp2YXIgZz1iLm1hY3JvO2M9Zz9nW2VbMF1dOnZvaWQgMDticmVhayBhO2RlZmF1bHQ6dGhyb3cgRXJyb3IoIlVua25vd24gTmFtZXNwYWNlIFR5cGUgdXNlZDogIitmKTt9fWM9dm9pZCAwfXJldHVybiBjfWlmKGEuYm9vbGVhbkV4cHJlc3Npb25WYWx1ZSE9PXZvaWQgMClyZXR1cm4gSGgoYS5ib29sZWFuRXhwcmVzc2lvblZhbHVlLGIpO2lmKGEuYm9vbGVhblZhbHVlIT09dm9pZCAwKXJldHVybiEhYS5ib29sZWFuVmFsdWU7aWYoYS5zdHJpbmdWYWx1ZSE9PXZvaWQgMClyZXR1cm4gU3RyaW5nKGEuc3RyaW5nVmFsdWUpO2lmKGEuaW50ZWdlclZhbHVlIT09dm9pZCAwKXJldHVybiBOdW1iZXIoYS5pbnRlZ2VyVmFsdWUpOwppZihhLmRvdWJsZVZhbHVlIT09dm9pZCAwKXJldHVybiBOdW1iZXIoYS5kb3VibGVWYWx1ZSk7dGhyb3cgRXJyb3IoIlVua25vd24gZmllbGQgdXNlZCBmb3IgdmFyaWFibGUgb2YgdHlwZSBFeHByZXNzaW9uVmFsdWU6IithKTt9fSxIaD1mdW5jdGlvbihhLGIpe3ZhciBjPWEuYXJncztpZighQXJyYXkuaXNBcnJheShjKXx8Yy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCdJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBmb3JtYXQuIEV4cGVjdGVkICJhcmdzIjonK2MrIiBwcm9wZXJ0eSB0b1xuICAgICAgICAgYmUgbm9uLWVtcHR5IGFycmF5LiIpO3ZhciBkPWZ1bmN0aW9uKGcpe3JldHVybiBLaChnLGIpfTtzd2l0Y2goYS50eXBlKXtjYXNlIDE6Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDtlKyspaWYoZChjW2VdKSlyZXR1cm4hMDtyZXR1cm4hMTtjYXNlIDI6Zm9yKHZhciBmPTA7ZjxjLmxlbmd0aDtmKyspaWYoIWQoY1tmXSkpcmV0dXJuITE7cmV0dXJuIGMubGVuZ3RoPjA7Y2FzZSAzOnJldHVybiFkKGNbMF0pOwpjYXNlIDQ6cmV0dXJuIEpnKGQoY1swXSksZChjWzFdKSwhMSxiLnJlZ2V4Q2FjaGUpO2Nhc2UgNTpyZXR1cm4gTGcoZChjWzBdKSxkKGNbMV0pKTtjYXNlIDY6cmV0dXJuIFFnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA3OnJldHVybiBIZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgODpyZXR1cm4gS2coZChjWzBdKSxkKGNbMV0pKTtjYXNlIDk6cmV0dXJuIFBnKGQoY1swXSksZChjWzFdKSk7Y2FzZSAxMDpyZXR1cm4gTmcoZChjWzBdKSxkKGNbMV0pKTtjYXNlIDExOnJldHVybiBPZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTI6cmV0dXJuIE1nKGQoY1swXSksZChjWzFdKSk7Y2FzZSAxMzpyZXR1cm4gSWcoZChjWzBdKSxTdHJpbmcoZChjWzFdKSkpO2RlZmF1bHQ6dGhyb3cgRXJyb3IoJ0ludmFsaWQgYm9vbGVhbiBleHByZXNzaW9uIGZvcm1hdC4gRXhwZWN0ZWQgInR5cGUiIHByb3BlcnR5IHRvYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyIHdoaWNoIGlzIGxlc3MgdGhhbiAxNC4nKTt9fTsKZnVuY3Rpb24gTGgoYSl7aWYoIW1oKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmd8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt9O2Z1bmN0aW9uIE1oKGEpe3ZhciBiPVRkKGEpO3JldHVybiBuZyhiPyIiK2I6IiIpfTtmdW5jdGlvbiBOaChhLGIpe2lmKCFxaChhKXx8IXFoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJudW1iZXIiLCJudW1iZXIiXSxhcmd1bWVudHMpO3JldHVybiBEYihhLGIpfTtmdW5jdGlvbiBPaCgpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpfTtmdW5jdGlvbiBQaChhKXtpZihhPT09bnVsbClyZXR1cm4ibnVsbCI7aWYoYSBpbnN0YW5jZW9mIEdkKXJldHVybiJhcnJheSI7aWYoYSBpbnN0YW5jZW9mIEtkKXJldHVybiJmdW5jdGlvbiI7aWYoYSBpbnN0YW5jZW9mIFBkKXt2YXIgYj1hLmdldFZhbHVlKCk7aWYoKGI9PW51bGw/dm9pZCAwOmIuY29uc3RydWN0b3IpPT09dm9pZCAwfHxiLmNvbnN0cnVjdG9yLm5hbWU9PT12b2lkIDApe3ZhciBjPVN0cmluZyhiKTtyZXR1cm4gYy5zdWJzdHJpbmcoOCxjLmxlbmd0aC0xKX1yZXR1cm4gU3RyaW5nKGIuY29uc3RydWN0b3IubmFtZSl9cmV0dXJuIHR5cGVvZiBhfTtmdW5jdGlvbiBRaChhKXtmdW5jdGlvbiBiKGMpe3JldHVybiBmdW5jdGlvbihkKXt0cnl7cmV0dXJuIGMoZCl9Y2F0Y2goZSl7KGxnfHxtZy5QbykmJmEuY2FsbCh0aGlzLGUubWVzc2FnZSl9fX1yZXR1cm57cGFyc2U6YihmdW5jdGlvbihjKXtyZXR1cm4gVWQoSlNPTi5wYXJzZShjKSl9KSxzdHJpbmdpZnk6YihmdW5jdGlvbihjKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoVGQoYykpfSkscHVibGljTmFtZToiSlNPTiJ9fTtmdW5jdGlvbiBSaChhKXtyZXR1cm4gSWIoVGQoYSx0aGlzLlQpKX07ZnVuY3Rpb24gU2goYSl7cmV0dXJuIE51bWJlcihUZChhLHRoaXMuVCkpfTtmdW5jdGlvbiBUaChhKXtyZXR1cm4gYT09PW51bGw/Im51bGwiOmE9PT12b2lkIDA/InVuZGVmaW5lZCI6YS50b1N0cmluZygpfTtmdW5jdGlvbiBVaChhLGIsYyl7dmFyIGQ9bnVsbCxlPSExO3JldHVybiBlP2Q6bnVsbH07dmFyIEFoPSJmbG9vciBjZWlsIHJvdW5kIG1heCBtaW4gYWJzIHBvdyBzcXJ0Ii5zcGxpdCgiICIpO2Z1bmN0aW9uIFZoKCl7dmFyIGE9e307cmV0dXJue1dyOmZ1bmN0aW9uKGIpe3JldHVybiBhLmhhc093blByb3BlcnR5KGIpP2FbYl06dm9pZCAwfSxLbzpmdW5jdGlvbihiLGMpe2FbYl09Y30scmVzZXQ6ZnVuY3Rpb24oKXthPXt9fX19ZnVuY3Rpb24gV2goYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gS2QucHJvdG90eXBlLmludm9rZS5hcHBseShhLFtiXS5jb25jYXQodyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKSl9fQpmdW5jdGlvbiBYaChhLGIpe2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiYW55Il0sYXJndW1lbnRzKTt9CmZ1bmN0aW9uIFloKGEsYil7aWYoIWxoKGEpfHwhZWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsIlBpeGllTWFwIl0sYXJndW1lbnRzKTt9O3ZhciBaaD17fTt2YXIgJGg9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IGtiO2lmKGEgaW5zdGFuY2VvZiBHZClmb3IodmFyIGM9YS5GYSgpLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9Y1tkXTthLmhhcyhlKSYmYi5zZXQoZSxhLmdldChlKSl9ZWxzZSBpZihhIGluc3RhbmNlb2YgS2QpZm9yKHZhciBmPWEuRmEoKSxnPTA7ZzxmLmxlbmd0aDtnKyspe3ZhciBoPWZbZ107Yi5zZXQoaCxhLmdldChoKSl9ZWxzZSBmb3IodmFyIGw9MDtsPGEubGVuZ3RoO2wrKyliLnNldChsLGFbbF0pO3JldHVybiBifTsKWmgua2V5cz1mdW5jdGlvbihhKXtkaCh0aGlzLmdldE5hbWUoKSxhcmd1bWVudHMpO2lmKGEgaW5zdGFuY2VvZiBHZHx8YSBpbnN0YW5jZW9mIEtkfHx0eXBlb2YgYT09PSJzdHJpbmciKWE9JGgoYSk7aWYoYSBpbnN0YW5jZW9mIGtifHxhIGluc3RhbmNlb2YgU2QpcmV0dXJuIG5ldyBHZChhLkZhKCkpO3JldHVybiBuZXcgR2R9OwpaaC52YWx1ZXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5oYygpKTtyZXR1cm4gbmV3IEdkfTsKWmguZW50cmllcz1mdW5jdGlvbihhKXtkaCh0aGlzLmdldE5hbWUoKSxhcmd1bWVudHMpO2lmKGEgaW5zdGFuY2VvZiBHZHx8YSBpbnN0YW5jZW9mIEtkfHx0eXBlb2YgYT09PSJzdHJpbmciKWE9JGgoYSk7aWYoYSBpbnN0YW5jZW9mIGtifHxhIGluc3RhbmNlb2YgU2QpcmV0dXJuIG5ldyBHZChhLmZjKCkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBuZXcgR2QoYil9KSk7cmV0dXJuIG5ldyBHZH07ClpoLmZyZWV6ZT1mdW5jdGlvbihhKXsoYSBpbnN0YW5jZW9mIGtifHxhIGluc3RhbmNlb2YgU2R8fGEgaW5zdGFuY2VvZiBHZHx8YSBpbnN0YW5jZW9mIEtkKSYmYS5aYSgpO3JldHVybiBhfTtaaC5kZWxldGU9ZnVuY3Rpb24oYSxiKXtpZihhIGluc3RhbmNlb2Yga2ImJiFhLkhiKCkpcmV0dXJuIGEucmVtb3ZlKGIpLCEwO3JldHVybiExfTtmdW5jdGlvbiBMKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQ9YS5ULnhiKCk7aWYoIWQpdGhyb3cgRXJyb3IoIk1pc3NpbmcgcHJvZ3JhbSBzdGF0ZS4iKTtpZihkLml0KXt0cnl7ZC5Sbi5hcHBseShudWxsLFtiXS5jb25jYXQodyhjKSkpfWNhdGNoKGUpe3Rocm93IHNiKCJUQUdHSU5HIiwyMSksZTt9cmV0dXJufWQuUm4uYXBwbHkobnVsbCxbYl0uY29uY2F0KHcoYykpKX07dmFyIGFpPWZ1bmN0aW9uKCl7dGhpcy5LPXt9O3RoaXMuSD17fTt0aGlzLk49ITA7fTthaS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5jb250YWlucyhhKT90aGlzLktbYV06dm9pZCAwO3JldHVybiBjfTthaS5wcm90b3R5cGUuY29udGFpbnM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuSy5oYXNPd25Qcm9wZXJ0eShhKX07CmFpLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuY29udGFpbnMoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYWRkIGEgZnVuY3Rpb24gd2hpY2ggYWxyZWFkeSBleGlzdHM6ICIrYSsiLiIpO2lmKHRoaXMuSC5oYXNPd25Qcm9wZXJ0eShhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYW4gQVBJIHdpdGggYW4gZXhpc3RpbmcgcHJpdmF0ZSBBUEkgbmFtZTogIithKyIuIik7dGhpcy5LW2FdPWM/dm9pZCAwOnliKGIpP3RoKGEsYik6dWgoYSxiKX07ZnVuY3Rpb24gYmkoYSxiKXt2YXIgYz12b2lkIDA7cmV0dXJuIGN9O2Z1bmN0aW9uIGNpKCl7dmFyIGE9e307CnJldHVybiBhfTt2YXIgZGk9e30sZWk9KGRpW0YuRC5zYV09ImdjdSIsZGlbRi5ELmVoXT0iZXB0IixkaVtGLkQuU2JdPSJnY2xnYiIsZGlbRi5ELmxiXT0iZ2NsYXciLGRpW0YuRC56bF09ImdjbGlkX2xlbiIsZGlbRi5ELkJlXT0iZ2NsZ3MiLGRpW0YuRC5DZV09ImdjbGxwIixkaVtGLkQuRGVdPSJnY2xzdCIsZGlbRi5ELkVkXT0iYXVpZCIsZGlbRi5ELkJsXT0iYWUiLGRpW0YuRC5DZl09ImRzY250IixkaVtGLkQuRGZdPSJmY250ciIsZGlbRi5ELkVmXT0iZmxuZyIsZGlbRi5ELkZmXT0ibWlkIixkaVtGLkQud2ldPSJidHR5cGUiLGRpW0YuRC5LYl09ImdhY2lkIixkaVtGLkQuR2RdPSJsYWJlbCIsZGlbRi5ELkZlXT0iY2FwaSIsZGlbRi5ELmpoXT0icHNjZGwiLGRpW0YuRC5lYl09ImN1cnJlbmN5X2NvZGUiLGRpW0YuRC5HZV09InZkbHR2IixkaVtGLkQua2hdPSJjbG9jdCIsZGlbRi5ELkVsXT0iX2RiZyIsZGlbRi5ELkllXT0ib2VkZWxkIixkaVtGLkQuVmNdPSJlZGlkIixkaVtGLkQuTWRdPSJldm5pZCIsCmRpW0YuRC5FaV09ImV2amlkIixkaVtGLkQuTmRdPSJleGNpZCIsZGlbRi5ELnJoXT0iZ2FjIixkaVtGLkQuSmVdPSJnYWNnYiIsZGlbRi5ELk1sXT0iZ2FjbWNvdiIsZGlbRi5ELktlXT0iZ2RwciIsZGlbRi5ELlhjXT0iZ2RpZCIsZGlbRi5ELkxlXT0iX25nIixkaVtGLkQuY3FdPSJfb25vIixkaVtGLkQudGhdPSJncHBfc2lkIixkaVtGLkQudWhdPSJncHAiLGRpW0YuRC5QbF09ImdzYWV4cCIsZGlbRi5ELlZmXT0iX3R1IixkaVtGLkQuTWVdPSJmcm0iLGRpW0YuRC5LaV09Imd0bV91cCIsZGlbRi5ELlBkXT0ibHBzIixkaVtGLkQuTGldPSJkaWQiLGRpW0YuRC5RZF09ImZjbnRyIixkaVtGLkQuUmRdPSJmbG5nIixkaVtGLkQuU2RdPSJtaWQiLGRpW0YuRC5OZV09dm9pZCAwLGRpW0YuRC5NYl09InRpYmEiLGRpW0YuRC5XYl09InJkcCIsZGlbRi5ELnhjXT0iZWNzaWQiLGRpW0YuRC5aZl09ImdhX3VpZCIsZGlbRi5ELlVkXT0iZGVsb3BjIixkaVtGLkQuT2VdPSJnZHByX2NvbnNlbnQiLApkaVtGLkQuUGFdPSJvaWQiLGRpW0YuRC5kbV09Im9pZHNyYyIsZGlbRi5ELmZtXT0idXB0Z3MiLGRpW0YuRC5jZ109InVhYSIsZGlbRi5ELmRnXT0idWFiIixkaVtGLkQuZWddPSJ1YWZ2bCIsZGlbRi5ELmZnXT0idWFtYiIsZGlbRi5ELmdnXT0idWFtIixkaVtGLkQuaGddPSJ1YXAiLGRpW0YuRC5pZ109InVhcHYiLGRpW0YuRC5qZ109InVhdyIsZGlbRi5ELmdtXT0iZWNfbGF0IixkaVtGLkQuaG1dPSJlY19tZXRhIixkaVtGLkQuaW1dPSJlY19tIixkaVtGLkQuam1dPSJlY19zZWwiLGRpW0YuRC5rbV09ImVjX3MiLGRpW0YuRC5CY109ImVjX21vZGUiLGRpW0YuRC5mYl09InVzZXJJZCIsZGlbRi5ELmtnXT0idXNfcHJpdmFjeSIsZGlbRi5ELlFhXT0idmFsdWUiLGRpW0YuRC5xbV09Im1jb3YiLGRpW0YuRC5XaV09ImhuIixkaVtGLkQuVm1dPSJndG1fZWUiLGRpW0YuRC5ZaV09InVpcCIsZGlbRi5ELkpoXT0ibXQiLGRpW0YuRC5kZV09Im5wYSIsZGlbRi5ELllxXT0ic2dfdWMiLGRpW0YuRC55aV09Cm51bGwsZGlbRi5ELmJkXT1udWxsLGRpW0YuRC50Yl09bnVsbCxkaVtGLkQuSGFdPW51bGwsZGlbRi5ELnphXT1udWxsLGRpW0YuRC5VYV09bnVsbCxkaVtGLkQuUGVdPW51bGwsZGlbRi5ELmVkXT1udWxsLGRpW0YuRC5zaF09bnVsbCxkaVtGLkQuQmRdPW51bGwsZGlbRi5ELkNkXT1udWxsLGRpW0YuRC5maF09bnVsbCxkaVtGLkQuZ2hdPW51bGwsZGlbRi5ELlRhXT1udWxsLGRpW0YuRC5XY109bnVsbCxkaSk7ZnVuY3Rpb24gZmkoYSxiKXtpZihhKXt2YXIgYz1hLnNwbGl0KCJ4Iik7Yy5sZW5ndGg9PT0yJiYoZ2koYiwidV93IixjWzBdKSxnaShiLCJ1X2giLGNbMV0pKX19ZnVuY3Rpb24gaGkoYSl7dmFyIGI9aWk7Yj1iPT09dm9pZCAwP2ppOmI7cmV0dXJuIGtpKGxpKGEsYikpfWZ1bmN0aW9uIGtpKGEpe3JldHVybihhfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiEhYn0pLm1hcChmdW5jdGlvbihiKXtyZXR1cm4iKCIrW21pKGIudmFsdWUpLG1pKGIucXVhbnRpdHkpLG1pKGIuaXRlbV9pZCksbWkoYi5zdGFydF9kYXRlKSxtaShiLmVuZF9kYXRlKV0uam9pbigiKiIpKyIpIn0pLmpvaW4oIiIpfQpmdW5jdGlvbiBsaShhLGIpe3JldHVybihhfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiEhY30pLm1hcChmdW5jdGlvbihjKXtyZXR1cm57aXRlbV9pZDpiKGMpLHF1YW50aXR5OmMucXVhbnRpdHksdmFsdWU6Yy5wcmljZSxzdGFydF9kYXRlOmMuc3RhcnRfZGF0ZSxlbmRfZGF0ZTpjLmVuZF9kYXRlfX0pfWZ1bmN0aW9uIGppKGEpe3JldHVyblthLml0ZW1faWQsYS5pZCxhLml0ZW1fbmFtZV0uZmluZChmdW5jdGlvbihiKXtyZXR1cm4gYiE9bnVsbH0pfWZ1bmN0aW9uIG5pKGEpe2lmKGEmJmEubGVuZ3RoKXJldHVybiBhLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gYiYmYi5lc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZT9iLmVzdGltYXRlZF9kZWxpdmVyeV9kYXRlOiIifSkuam9pbigiLCIpfWZ1bmN0aW9uIGdpKGEsYixjKXtjPT09dm9pZCAwfHxjPT09bnVsbHx8Yz09PSIiJiYheWdbYl18fChhW2JdPWMpfQpmdW5jdGlvbiBtaShhKXtyZXR1cm4gdHlwZW9mIGEhPT0ibnVtYmVyIiYmdHlwZW9mIGEhPT0ic3RyaW5nIj8iIjphLnRvU3RyaW5nKCl9O2Z1bmN0aW9uIG9pKCl7dGhpcy5ibG9ja1NpemU9LTF9O2Z1bmN0aW9uIHBpKGEsYil7dGhpcy5ibG9ja1NpemU9LTE7dGhpcy5ibG9ja1NpemU9NjQ7dGhpcy5OPVJhLlVpbnQ4QXJyYXk/bmV3IFVpbnQ4QXJyYXkodGhpcy5ibG9ja1NpemUpOkFycmF5KHRoaXMuYmxvY2tTaXplKTt0aGlzLlI9dGhpcy5LPTA7dGhpcy5IPVtdO3RoaXMuZmE9YTt0aGlzLlo9Yjt0aGlzLmphPVJhLkludDMyQXJyYXk/bmV3IEludDMyQXJyYXkoNjQpOkFycmF5KDY0KTtxaT09PXZvaWQgMCYmKFJhLkludDMyQXJyYXk/cWk9bmV3IEludDMyQXJyYXkocmkpOnFpPXJpKTt0aGlzLnJlc2V0KCl9U2EocGksb2kpO2Zvcih2YXIgc2k9W10sdGk9MDt0aTw2Mzt0aSsrKXNpW3RpXT0wO3ZhciB1aT1bXS5jb25jYXQoMTI4LHNpKTsKcGkucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5SPXRoaXMuSz0wO3ZhciBhO2lmKFJhLkludDMyQXJyYXkpYT1uZXcgSW50MzJBcnJheSh0aGlzLlopO2Vsc2V7dmFyIGI9dGhpcy5aLGM9Yi5sZW5ndGg7aWYoYz4wKXtmb3IodmFyIGQ9QXJyYXkoYyksZT0wO2U8YztlKyspZFtlXT1iW2VdO2E9ZH1lbHNlIGE9W119dGhpcy5IPWF9Owp2YXIgdmk9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWEuTixjPWEuamEsZD0wLGU9MDtlPGIubGVuZ3RoOyljW2QrK109YltlXTw8MjR8YltlKzFdPDwxNnxiW2UrMl08PDh8YltlKzNdLGU9ZCo0O2Zvcih2YXIgZj0xNjtmPDY0O2YrKyl7dmFyIGc9Y1tmLTE1XXwwLGg9Y1tmLTJdfDA7Y1tmXT0oKGNbZi0xNl18MCkrKChnPj4+N3xnPDwyNSleKGc+Pj4xOHxnPDwxNCleZz4+PjMpfDApKygoY1tmLTddfDApKygoaD4+PjE3fGg8PDE1KV4oaD4+PjE5fGg8PDEzKV5oPj4+MTApfDApfDB9Zm9yKHZhciBsPWEuSFswXXwwLG49YS5IWzFdfDAscD1hLkhbMl18MCxxPWEuSFszXXwwLHI9YS5IWzRdfDAsdD1hLkhbNV18MCx1PWEuSFs2XXwwLHY9YS5IWzddfDAseD0wO3g8NjQ7eCsrKXt2YXIgeT0oKGw+Pj4yfGw8PDMwKV4obD4+PjEzfGw8PDE5KV4obD4+PjIyfGw8PDEwKSkrKGwmbl5sJnBebiZwKXwwLHo9KHYrKChyPj4+NnxyPDwyNileKHI+Pj4xMXxyPDwyMSleKHI+Pj4yNXxyPDw3KSl8CjApKygoKHImdF5+ciZ1KSsocWlbeF18MCl8MCkrKGNbeF18MCl8MCl8MDt2PXU7dT10O3Q9cjtyPXErenwwO3E9cDtwPW47bj1sO2w9eit5fDB9YS5IWzBdPWEuSFswXStsfDA7YS5IWzFdPWEuSFsxXStufDA7YS5IWzJdPWEuSFsyXStwfDA7YS5IWzNdPWEuSFszXStxfDA7YS5IWzRdPWEuSFs0XStyfDA7YS5IWzVdPWEuSFs1XSt0fDA7YS5IWzZdPWEuSFs2XSt1fDA7YS5IWzddPWEuSFs3XSt2fDB9OwpwaS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKGEsYil7Yj09PXZvaWQgMCYmKGI9YS5sZW5ndGgpO3ZhciBjPTAsZD10aGlzLks7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilmb3IoO2M8YjspdGhpcy5OW2QrK109YS5jaGFyQ29kZUF0KGMrKyksZD09dGhpcy5ibG9ja1NpemUmJih2aSh0aGlzKSxkPTApO2Vsc2V7dmFyIGUsZj10eXBlb2YgYTtlPWYhPSJvYmplY3QiP2Y6YT9BcnJheS5pc0FycmF5KGEpPyJhcnJheSI6ZjoibnVsbCI7aWYoZT09ImFycmF5Inx8ZT09Im9iamVjdCImJnR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpZm9yKDtjPGI7KXt2YXIgZz1hW2MrK107aWYoISgibnVtYmVyIj09dHlwZW9mIGcmJjA8PWcmJjI1NT49ZyYmZz09KGd8MCkpKXRocm93IEVycm9yKCJtZXNzYWdlIG11c3QgYmUgYSBieXRlIGFycmF5Iik7dGhpcy5OW2QrK109ZztkPT10aGlzLmJsb2NrU2l6ZSYmKHZpKHRoaXMpLGQ9MCl9ZWxzZSB0aHJvdyBFcnJvcigibWVzc2FnZSBtdXN0IGJlIHN0cmluZyBvciBhcnJheSIpOwp9dGhpcy5LPWQ7dGhpcy5SKz1ifTtwaS5wcm90b3R5cGUuZGlnZXN0PWZ1bmN0aW9uKCl7dmFyIGE9W10sYj10aGlzLlIqODt0aGlzLks8NTY/dGhpcy51cGRhdGUodWksNTYtdGhpcy5LKTp0aGlzLnVwZGF0ZSh1aSx0aGlzLmJsb2NrU2l6ZS0odGhpcy5LLTU2KSk7Zm9yKHZhciBjPTYzO2M+PTU2O2MtLSl0aGlzLk5bY109YiYyNTUsYi89MjU2O3ZpKHRoaXMpO2Zvcih2YXIgZD0wLGU9MDtlPHRoaXMuZmE7ZSsrKWZvcih2YXIgZj0yNDtmPj0wO2YtPTgpYVtkKytdPXRoaXMuSFtlXT4+ZiYyNTU7cmV0dXJuIGF9Owp2YXIgcmk9WzExMTYzNTI0MDgsMTg5OTQ0NzQ0MSwzMDQ5MzIzNDcxLDM5MjEwMDk1NzMsOTYxOTg3MTYzLDE1MDg5NzA5OTMsMjQ1MzYzNTc0OCwyODcwNzYzMjIxLDM2MjQzODEwODAsMzEwNTk4NDAxLDYwNzIyNTI3OCwxNDI2ODgxOTg3LDE5MjUwNzgzODgsMjE2MjA3ODIwNiwyNjE0ODg4MTAzLDMyNDgyMjI1ODAsMzgzNTM5MDQwMSw0MDIyMjI0Nzc0LDI2NDM0NzA3OCw2MDQ4MDc2MjgsNzcwMjU1OTgzLDEyNDkxNTAxMjIsMTU1NTA4MTY5MiwxOTk2MDY0OTg2LDI1NTQyMjA4ODIsMjgyMTgzNDM0OSwyOTUyOTk2ODA4LDMyMTAzMTM2NzEsMzMzNjU3MTg5MSwzNTg0NTI4NzExLDExMzkyNjk5MywzMzgyNDE4OTUsNjY2MzA3MjA1LDc3MzUyOTkxMiwxMjk0NzU3MzcyLDEzOTYxODIyOTEsMTY5NTE4MzcwMCwxOTg2NjYxMDUxLDIxNzcwMjYzNTAsMjQ1Njk1NjAzNywyNzMwNDg1OTIxLDI4MjAzMDI0MTEsMzI1OTczMDgwMCwzMzQ1NzY0NzcxLDM1MTYwNjU4MTcsMzYwMDM1MjgwNCwKNDA5NDU3MTkwOSwyNzU0MjMzNDQsNDMwMjI3NzM0LDUwNjk0ODYxNiw2NTkwNjA1NTYsODgzOTk3ODc3LDk1ODEzOTU3MSwxMzIyODIyMjE4LDE1MzcwMDIwNjMsMTc0Nzg3Mzc3OSwxOTU1NTYyMjIyLDIwMjQxMDQ4MTUsMjIyNzczMDQ1MiwyMzYxODUyNDI0LDI0Mjg0MzY0NzQsMjc1NjczNDE4NywzMjA0MDMxNDc5LDMzMjkzMjUyOThdLHFpO2Z1bmN0aW9uIHdpKCl7cGkuY2FsbCh0aGlzLDgseGkpfVNhKHdpLHBpKTt2YXIgeGk9WzE3NzkwMzM3MDMsMzE0NDEzNDI3NywxMDEzOTA0MjQyLDI3NzM0ODA3NjIsMTM1OTg5MzExOSwyNjAwODIyOTI0LDUyODczNDYzNSwxNTQxNDU5MjI1XTt2YXIgeWk9L15bMC05QS1GYS1mXXs2NH0kLztmdW5jdGlvbiB6aShhKXt0cnl7cmV0dXJuKG5ldyBUZXh0RW5jb2RlcikuZW5jb2RlKGEpfWNhdGNoKGIpe3JldHVybiBaYihhKX19ZnVuY3Rpb24gQWkoYSl7dmFyIGI9QTtpZihhPT09IiJ8fGE9PT0iZTAiKXJldHVybiBQcm9taXNlLnJlc29sdmUoYSk7dmFyIGM7aWYoKGM9Yi5jcnlwdG8pPT1udWxsPzA6Yy5zdWJ0bGUpe2lmKHlpLnRlc3QoYSkpcmV0dXJuIFByb21pc2UucmVzb2x2ZShhKTt0cnl7dmFyIGQ9emkoYSk7cmV0dXJuIGIuY3J5cHRvLnN1YnRsZS5kaWdlc3QoIlNIQS0yNTYiLGQpLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIEJpKGUsYil9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiJlMiJ9KX1jYXRjaChlKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJlMiIpfX1lbHNlIHJldHVybiBQcm9taXNlLnJlc29sdmUoImUxIil9CmZ1bmN0aW9uIENpKGEpe3RyeXt2YXIgYj1uZXcgd2k7Yi51cGRhdGUoemkoYSkpO3JldHVybiBiLmRpZ2VzdCgpfWNhdGNoKGMpe3JldHVybiJlMiJ9fWZ1bmN0aW9uIERpKGEpe3ZhciBiPUE7aWYoYT09PSIifHxhPT09ImUwInx8eWkudGVzdChhKSlyZXR1cm4gYTt2YXIgYz1DaShhKTtpZihjPT09ImUyIilyZXR1cm4iZTIiO3RyeXtyZXR1cm4gQmkoYyxiKX1jYXRjaChkKXtyZXR1cm4iZTIifX1mdW5jdGlvbiBCaShhLGIpe3ZhciBjPUFycmF5LmZyb20obmV3IFVpbnQ4QXJyYXkoYSkpLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShkKX0pLmpvaW4oIiIpO3JldHVybiBiLmJ0b2EoYykucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89KyQvLCIiKX07ZnVuY3Rpb24gRWkoKXtmb3IodmFyIGE9ITEsYj0hMSxjPTA7YT09PWI7KWlmKGE9RGIoMCwxKT09PTAsYj1EYigwLDEpPT09MCxjKyssYz4zMClyZXR1cm47cmV0dXJuIGF9dmFyIEdpPXtzazpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIEZpLnNrKGEsYixjKX19LEhpPWZ1bmN0aW9uKCl7dGhpcy5zdHVkaWVzPXt9O3RoaXMuSD1FaX07CkhpLnByb3RvdHlwZS5zaz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5zdHVkaWVzW2JdO2lmKCEoKGM9PT12b2lkIDA/RGIoMCw5OTk5KTpjJTFFNCk8ZC5wcm9iYWJpbGl0eSooZC5jb250cm9sSWQyPzQ6MikqMUU0KSlyZXR1cm4gYTthOnt2YXIgZT1kLnN0dWR5SWQsZj1kLmV4cGVyaW1lbnRJZCxnPWQuY29udHJvbElkLGg9ZC5jb250cm9sSWQyO2lmKCEoKGEuZXhwfHx7fSlbZl18fChhLmV4cHx8e30pW2ddfHxoJiYoYS5leHB8fHt9KVtoXSkpe3ZhciBsPWMhPT12b2lkIDA/YyUyPT09MDp0aGlzLkgoKTtpZihsIT09dm9pZCAwKXt2YXIgbj1sPzA6MTtpZihoKXt2YXIgcD1jIT09dm9pZCAwPyhjPj4xKSUyPT09MDp0aGlzLkgoKTtpZihwPT09dm9pZCAwKWJyZWFrIGE7bnw9KHA/MDoxKTw8MX1uPT09MD9JaShhLGYsZSk6bj09PTE/SWkoYSxnLGUpOm49PT0yJiZJaShhLGgsZSl9fX1yZXR1cm4gYX07CnZhciBLaT1mdW5jdGlvbihhLGIpe3ZhciBjPUZpO3JldHVybiBjLnN0dWRpZXNbYl0/SmkoYyxiKXx8ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uZXhwZXJpbWVudElkXTohMX0sTGk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdJiZjLnN0dWRpZXNbYl0uY29udHJvbElkJiYhSmkoYyxiKT8hIShhLmV4cHx8e30pW2Muc3R1ZGllc1tiXS5jb250cm9sSWRdOiExfSxNaT1mdW5jdGlvbihhLGIpe3ZhciBjPUZpO3JldHVybiBjLnN0dWRpZXNbYl0mJmMuc3R1ZGllc1tiXS5jb250cm9sSWQyJiYhSmkoYyxiKT8hIShhLmV4cHx8e30pW2Muc3R1ZGllc1tiXS5jb250cm9sSWQyXTohMX0sTmk9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5leHB8fHt9LGQ9bShPYmplY3Qua2V5cyhjKS5tYXAoTnVtYmVyKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7aWYoY1tmXT09PWIpcmV0dXJuIGZ9fSxKaT1mdW5jdGlvbihhLApiKXtyZXR1cm4hIWEuc3R1ZGllc1tiXS5hY3RpdmV8fGEuc3R1ZGllc1tiXS5wcm9iYWJpbGl0eT4uNX0sSWk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuZXhwfHx7fTtkW2JdPWM7YS5leHA9ZH0sRmk9bmV3IEhpO3ZhciBpaj1mdW5jdGlvbigpe3RoaXMuSD1BLmdvb2dsZV90YWdfbWFuYWdlcj1BLmdvb2dsZV90YWdfbWFuYWdlcnx8e319LGpqO2Z1bmN0aW9uIGtqKGEsYil7bGooKTt2YXIgYz1qajtyZXR1cm4gYy5IW2FdPWMuSFthXXx8YigpfWZ1bmN0aW9uIG1qKGEpe2xqKCk7cmV0dXJuIGpqLkhbYV19ZnVuY3Rpb24gbmooYSxiKXtsaigpO2pqLkhbYV09Yn1mdW5jdGlvbiBvaihhKXt2YXIgYj1FKDUpO2xqKCk7dmFyIGM9amo7Yy5IW2JdPWMuSFtiXXx8YX1mdW5jdGlvbiBwaigpe3ZhciBhPUUoMTkpO2xqKCk7dmFyIGI9amo7cmV0dXJuIGIuSFthXT1iLkhbYV18fHt9fWZ1bmN0aW9uIHFqKCl7dmFyIGE9RSgxOSk7bGooKTtyZXR1cm4gamouSFthXX1mdW5jdGlvbiByaigpe2xqKCk7dmFyIGE9amosYj1hLkguc2VxdWVuY2V8fDE7YS5ILnNlcXVlbmNlPWIrMTtyZXR1cm4gYn1mdW5jdGlvbiBsaigpe2pqfHwoamo9bmV3IGlqKX07dmFyIHNqPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDE6cmV0dXJuIDA7Y2FzZSA0OTE6cmV0dXJuIDEyO2Nhc2UgNDgwOnJldHVybiAxMTtjYXNlIDQ5OTpyZXR1cm4gMTA7Y2FzZSA1MDA6cmV0dXJuIDY7Y2FzZSA0MjE6cmV0dXJuIDk7Y2FzZSA1NjE6cmV0dXJuIDE3O2Nhc2UgNDgyOnJldHVybiAxNTtjYXNlIDU3MDpyZXR1cm4gMTk7Y2FzZSA0OTU6cmV0dXJuIDEzO2Nhc2UgNTE0OnJldHVybiAxNjtjYXNlIDU3MzpyZXR1cm4gMTg7Y2FzZSAyMzU6cmV0dXJuIDg7Y2FzZSA1MzpyZXR1cm4gMTtjYXNlIDU0OnJldHVybiAyO2Nhc2UgNTI6cmV0dXJuIDQ7Y2FzZSA3NTpyZXR1cm4gM319LHRqPWZ1bmN0aW9uKGEsYil7YS5OW2JdPSEwO3ZhciBjPXNqKGIpO2MhPT12b2lkIDAmJihXZltjXT0hMCl9LE09ZnVuY3Rpb24oYSl7cmV0dXJuISF1ai5OW2FdfSx1aj1uZXcgZnVuY3Rpb24oKXt0aGlzLk49W107dGhpcy5LPVtdO3RoaXMuSD1bXTsKdGoodGhpcywxMzIpO3ZhciBhPU5mKDYsNkU0KTtYZlsxXT1hO3ZhciBiPU5mKDcsMSk7WGZbM109Yjt2YXIgYz1OZigzNSw1MCk7WGZbMl09Yzt2YXIgZD1OZig2OSwxNzc2NDQ4OTIwKTtYZls0XT1kOwp0aih0aGlzLDQzNSk7dGoodGhpcywxNDEpOwp9O3ZhciB2aj1mdW5jdGlvbigpe3RoaXMuSD1uZXcgU2V0O3RoaXMuSz1uZXcgU2V0fSx4aj1mdW5jdGlvbihhKXt2YXIgYj13ai5IO2E9YT09PXZvaWQgMD9bXTphO3ZhciBjPVtdLmNvbmNhdCh3KGIuSCkpLmNvbmNhdChbXS5jb25jYXQodyhiLkspKSkuY29uY2F0KGEpO2Muc29ydChmdW5jdGlvbihkLGUpe3JldHVybiBkLWV9KTtyZXR1cm4gY30seWo9ZnVuY3Rpb24oKXt2YXIgYT1bXS5jb25jYXQodyh3ai5ILkgpKTthLnNvcnQoZnVuY3Rpb24oYixjKXtyZXR1cm4gYi1jfSk7cmV0dXJuIGF9LHpqPWZ1bmN0aW9uKCl7dmFyIGE9d2ouSCxiPUUoNDQpO2EuSD1uZXcgU2V0O2lmKGIhPT0iIilmb3IodmFyIGM9bShiLnNwbGl0KCJ+IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1OdW1iZXIoZC52YWx1ZSk7aXNOYU4oZSl8fGEuSC5hZGQoZSl9fTt2YXIgQWo9e30sQmo9e19fY2w6MSxfX2VjbDoxLF9fZWhsOjEsX19ldmw6MSxfX2ZhbDoxLF9fZmlsOjEsX19mc2w6MSxfX2hsOjEsX19qZWw6MSxfX2xjbDoxLF9fc2RsOjEsX190bDoxLF9feXRsOjF9LENqPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se19fcGF1c2VkOjEsX190ZzoxfSxCaiksRGosRWo9ITE7RGo9RWo7dmFyIEZqPSIiO0FqLnFqPUZqO3ZhciB3aj1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9bmV3IHZqfTt2YXIgR2o9LzpbMC05XSskLyxIaj0vXlxkK1wuZmxzXC5kb3VibGVjbGlja1wubmV0JC87ZnVuY3Rpb24gSWooYSxiLGMsZCl7dmFyIGU9SmooYSwhIWQsYiksZixnO3JldHVybiBjPyhnPWVbYl0pIT1udWxsP2c6W106KGY9ZVtiXSk9PW51bGw/dm9pZCAwOmZbMF19ZnVuY3Rpb24gSmooYSxiLGMpe2Zvcih2YXIgZD17fSxlPW0oYS5zcGxpdCgiJiIpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9bShmLnZhbHVlLnNwbGl0KCI9IikpLGg9Zy5uZXh0KCkudmFsdWUsbD15YShnKSxuPWRlY29kZVVSSUNvbXBvbmVudChoLnJlcGxhY2UoL1wrL2csIiAiKSk7aWYoYz09PXZvaWQgMHx8bj09PWMpe3ZhciBwPWwuam9pbigiPSIpO2Rbbl18fChkW25dPVtdKTtkW25dLnB1c2goYj9wOmRlY29kZVVSSUNvbXBvbmVudChwLnJlcGxhY2UoL1wrL2csIiAiKSkpfX1yZXR1cm4gZH0KZnVuY3Rpb24gS2ooYSl7dHJ5e3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goYil7fX1mdW5jdGlvbiBMaihhLGIsYyxkLGUpe2ImJihiPVN0cmluZyhiKS50b0xvd2VyQ2FzZSgpKTtpZihiPT09InByb3RvY29sInx8Yj09PSJwb3J0IilhLnByb3RvY29sPU1qKGEucHJvdG9jb2wpfHxNaihBLmxvY2F0aW9uLnByb3RvY29sKTtiPT09InBvcnQiP2EucG9ydD1TdHJpbmcoTnVtYmVyKGEuaG9zdG5hbWU/YS5wb3J0OkEubG9jYXRpb24ucG9ydCl8fChhLnByb3RvY29sPT09Imh0dHAiPzgwOmEucHJvdG9jb2w9PT0iaHR0cHMiPzQ0MzoiIikpOmI9PT0iaG9zdCImJihhLmhvc3RuYW1lPShhLmhvc3RuYW1lfHxBLmxvY2F0aW9uLmhvc3RuYW1lKS5yZXBsYWNlKEdqLCIiKS50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gTmooYSxiLGMsZCxlKX0KZnVuY3Rpb24gTmooYSxiLGMsZCxlKXt2YXIgZixnPU1qKGEucHJvdG9jb2wpO2ImJihiPVN0cmluZyhiKS50b0xvd2VyQ2FzZSgpKTtzd2l0Y2goYil7Y2FzZSAidXJsX25vX2ZyYWdtZW50IjpmPU9qKGEpO2JyZWFrO2Nhc2UgInByb3RvY29sIjpmPWc7YnJlYWs7Y2FzZSAiaG9zdCI6Zj1hLmhvc3RuYW1lLnJlcGxhY2UoR2osIiIpLnRvTG93ZXJDYXNlKCk7aWYoYyl7dmFyIGg9L153d3dcZCpcLi8uZXhlYyhmKTtoJiZoWzBdJiYoZj1mLnN1YnN0cmluZyhoWzBdLmxlbmd0aCkpfWJyZWFrO2Nhc2UgInBvcnQiOmY9U3RyaW5nKE51bWJlcihhLnBvcnQpfHwoZz09PSJodHRwIj84MDpnPT09Imh0dHBzIj80NDM6IiIpKTticmVhaztjYXNlICJwYXRoIjphLnBhdGhuYW1lfHxhLmhvc3RuYW1lfHxzYigiVEFHR0lORyIsMSk7Zj1hLnBhdGhuYW1lLnN1YnN0cmluZygwLDEpPT09Ii8iP2EucGF0aG5hbWU6Ii8iK2EucGF0aG5hbWU7dmFyIGw9Zi5zcGxpdCgiLyIpOyhkfHxbXSkuaW5kZXhPZihsW2wubGVuZ3RoLQoxXSk+PTAmJihsW2wubGVuZ3RoLTFdPSIiKTtmPWwuam9pbigiLyIpO2JyZWFrO2Nhc2UgInF1ZXJ5IjpmPWEuc2VhcmNoLnJlcGxhY2UoIj8iLCIiKTtlJiYoZj1JaihmLGUsITEpKTticmVhaztjYXNlICJleHRlbnNpb24iOnZhciBuPWEucGF0aG5hbWUuc3BsaXQoIi4iKTtmPW4ubGVuZ3RoPjE/bltuLmxlbmd0aC0xXToiIjtmPWYuc3BsaXQoIi8iKVswXTticmVhaztjYXNlICJmcmFnbWVudCI6Zj1hLmhhc2gucmVwbGFjZSgiIyIsIiIpO2JyZWFrO2RlZmF1bHQ6Zj1hJiZhLmhyZWZ9cmV0dXJuIGZ9ZnVuY3Rpb24gTWooYSl7cmV0dXJuIGE/YS5yZXBsYWNlKCI6IiwiIikudG9Mb3dlckNhc2UoKToiIn1mdW5jdGlvbiBPaihhKXt2YXIgYj0iIjtpZihhJiZhLmhyZWYpe3ZhciBjPWEuaHJlZi5pbmRleE9mKCIjIik7Yj1jPDA/YS5ocmVmOmEuaHJlZi5zdWJzdHJpbmcoMCxjKX1yZXR1cm4gYn12YXIgUGo9e30sUWo9MDsKZnVuY3Rpb24gUmooYSl7dmFyIGI9UGpbYV07aWYoIWIpe3ZhciBjPUIuY3JlYXRlRWxlbWVudCgiYSIpO2EmJihjLmhyZWY9YSk7dmFyIGQ9Yy5wYXRobmFtZTtkWzBdIT09Ii8iJiYoYXx8c2IoIlRBR0dJTkciLDEpLGQ9Ii8iK2QpO3ZhciBlPWMuaG9zdG5hbWUucmVwbGFjZShHaiwiIik7Yj17aHJlZjpjLmhyZWYscHJvdG9jb2w6Yy5wcm90b2NvbCxob3N0OmMuaG9zdCxob3N0bmFtZTplLHBhdGhuYW1lOmQsc2VhcmNoOmMuc2VhcmNoLGhhc2g6Yy5oYXNoLHBvcnQ6Yy5wb3J0fTtRajw1JiYoUGpbYV09YixRaisrKX1yZXR1cm4gYn1mdW5jdGlvbiBTaihhLGIsYyl7dmFyIGQ9UmooYSk7cmV0dXJuIGFjKGIsZCxjKX0KZnVuY3Rpb24gVGooYSl7dmFyIGI9UmooQS5sb2NhdGlvbi5ocmVmKSxjPUxqKGIsImhvc3QiLCExKTtpZihjJiZjLm1hdGNoKEhqKSl7dmFyIGQ9TGooYiwicGF0aCIpO2lmKGQpe3ZhciBlPWQuc3BsaXQoYSsiPSIpO2lmKGUubGVuZ3RoPjEpcmV0dXJuIGVbMV0uc3BsaXQoIjsiKVswXS5zcGxpdCgiPyIpWzBdfX19O3ZhciBVaj17Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iOiIvZyIsImh0dHBzOi8vd3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIjoiL2FzIiwiaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSI6Ii9ncyJ9LFZqPVsiL2FzL2QvY2NtL2NvbnZlcnNpb24iLCIvZy9kL2NjbS9jb252ZXJzaW9uIiwiL2dzL2NjbS9jb252ZXJzaW9uIiwiL2QvY2NtL2Zvcm0tZGF0YSJdO2Z1bmN0aW9uIFdqKCl7cmV0dXJuIElmKDQ3KT9KZig1NCkhPT0xOiExfWZ1bmN0aW9uIFhqKCl7dmFyIGE9RSgxOCksYj1hLmxlbmd0aDtyZXR1cm4gYVtiLTFdPT09Ii8iP2Euc3Vic3RyaW5nKDAsYi0xKTphfQpmdW5jdGlvbiBZaihhLGIpe2lmKGEpe3ZhciBjPSIiK2E7Yy5pbmRleE9mKCJodHRwOi8vIikhPT0wJiZjLmluZGV4T2YoImh0dHBzOi8vIikhPT0wJiYoYz0iaHR0cHM6Ly8iK2MpO2NbYy5sZW5ndGgtMV09PT0iLyImJihjPWMuc3Vic3RyaW5nKDAsYy5sZW5ndGgtMSkpO3JldHVybiBSaigiIitjK2IpLmhyZWZ9fWZ1bmN0aW9uIFpqKGEpe2lmKGFrKCkpcmV0dXJuIFlqKGEsIi9hbmFseXRpY3MuanMiKX1mdW5jdGlvbiBiayhhKXtyZXR1cm4gYT09PTJ8fGE9PT0zfWZ1bmN0aW9uIGNrKGEpe3JldHVybiBNKDU4OCkmJmE9PT0zfWZ1bmN0aW9uIGFrKCl7cmV0dXJuIFdqKCl8fElmKDUwKX1mdW5jdGlvbiBkaygpe3JldHVybiEhQWoucWomJkFqLnFqLnNwbGl0KCJAQCIpLmpvaW4oIiIpIT09IlNHVE1fVE9LRU4ifQpmdW5jdGlvbiBlayhhKXtmb3IodmFyIGI9bShbRi5ELmRkLEYuRC55Y10pLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKXt2YXIgZD1PKGEsYy52YWx1ZSk7aWYoZClyZXR1cm4gZH19ZnVuY3Rpb24gZmsoYSxiLGMpe2M9Yz09PXZvaWQgMD8iIjpjO2lmKCFXaigpKXJldHVybiBhO3ZhciBkPWI/VWpbYV18fCIiOiIiO2Q9PT0iL2dzIiYmKGM9IiIpO3JldHVybiIiK1hqKCkrZCtjfWZ1bmN0aW9uIGdrKGEpe2lmKFdqKCkpZm9yKHZhciBiPW0oVmopLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKXt2YXIgZD1jLnZhbHVlO2lmKFNiKGEsIiIrWGooKStkKSlyZXR1cm4iOjoifX0KZnVuY3Rpb24gaGsoKXt2YXIgYT1BO2lmKCFhKXJldHVybiExO3RyeXtpZihhPT09YS50b3ApcmV0dXJuITE7dmFyIGI9YS5sb2NhdGlvbi5wYXRobmFtZTtyZXR1cm4gYi5pbmRleE9mKCIvXy9zZXJ2aWNlX3dvcmtlci8iKSE9PS0xJiZUYihiLCIvc3dfaWZyYW1lLmh0bWwiKX1jYXRjaChjKXtyZXR1cm4hMX19O3ZhciBpaz0vZ3RhZ1suXC9danMvLGprPS9ndG1bLlwvXWpzLyxsaz1mdW5jdGlvbihhKXt2YXIgYj1raztpZigoYS5zY3JpcHRDb250YWluZXJJZHx8IiIpLmluZGV4T2YoIkdUTS0iKT49MCl7dmFyIGM7YTp7dmFyIGQsZT0oZD1hLnNjcmlwdEVsZW1lbnQpPT1udWxsP3ZvaWQgMDpkLnNyYztpZihlKXtmb3IodmFyIGY9SWYoNDcpLGc9UmooZSksaD1mP2cucGF0aG5hbWU6IiIrZy5ob3N0bmFtZStnLnBhdGhuYW1lLGw9Qi5zY3JpcHRzLG49IiIscD0wO3A8bC5sZW5ndGg7KytwKXt2YXIgcT1sW3BdO2lmKCEocS5pbm5lckhUTUwubGVuZ3RoPT09MHx8IWYmJnEuaW5uZXJIVE1MLmluZGV4T2YoYS5zY3JpcHRDb250YWluZXJJZHx8IlNIT1VMRF9OT1RfQkVfU0VUIik8MHx8cS5pbm5lckhUTUwuaW5kZXhPZihoKTwwKSl7aWYocS5pbm5lckhUTUwuaW5kZXhPZigiKGZ1bmN0aW9uKHcsZCxzLGwsaSkiKT49MCl7Yz1TdHJpbmcocCk7YnJlYWsgYX1uPVN0cmluZyhwKX19aWYobil7Yz0KbjticmVhayBhfX1jPXZvaWQgMH12YXIgcj1jO2lmKHIpcmV0dXJuIGIuSD0hMCxyfXZhciB0PVtdLnNsaWNlLmNhbGwoQi5zY3JpcHRzKTtyZXR1cm4gYS5zY3JpcHRFbGVtZW50P1N0cmluZyh0LmluZGV4T2YoYS5zY3JpcHRFbGVtZW50KSk6Ii0xIn0sbWs9ZnVuY3Rpb24oYSl7aWYoa2suSClyZXR1cm4iMSI7dmFyIGIsYz0oYj1hLnNjcmlwdEVsZW1lbnQpPT1udWxsP3ZvaWQgMDpiLnNyYztpZihjKXtpZihpay50ZXN0KGMpKXJldHVybiIzIjtpZihqay50ZXN0KGMpKXJldHVybiIyIn1yZXR1cm4iMCJ9LGtrPW5ldyBmdW5jdGlvbigpe3RoaXMuSD0hMX07ZnVuY3Rpb24gUChhKXtzYigiR1RNIixhKX07ZnVuY3Rpb24gbmsoYSl7dmFyIGI9b2soKS5kZXN0aW5hdGlvbkFycmF5W2FdLGM9b2soKS5kZXN0aW5hdGlvblthXTtyZXR1cm4gYiYmYi5sZW5ndGg+MD9iWzBdOmN9ZnVuY3Rpb24gcGsoYSxiKXt2YXIgYz1vaygpO2MucGVuZGluZ3x8KGMucGVuZGluZz1bXSk7Q2IoYy5wZW5kaW5nLGZ1bmN0aW9uKGQpe3JldHVybiBkLnRhcmdldC5jdGlkPT09YS5jdGlkJiZkLnRhcmdldC5pc0Rlc3RpbmF0aW9uPT09YS5pc0Rlc3RpbmF0aW9ufSl8fGMucGVuZGluZy5wdXNoKHt0YXJnZXQ6YSxvbkxvYWQ6Yn0pfWZ1bmN0aW9uIHFrKCl7dmFyIGE9QS5nb29nbGVfdGFnc19maXJzdF9wYXJ0eTtBcnJheS5pc0FycmF5KGEpfHwoYT1bXSk7Zm9yKHZhciBiPXt9LGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSliW2QudmFsdWVdPSEwO3JldHVybiBPYmplY3QuZnJlZXplKGIpfQp2YXIgcms9ZnVuY3Rpb24oKXt0aGlzLmNvbnRhaW5lcj17fTt0aGlzLmRlc3RpbmF0aW9uPXt9O3RoaXMuZGVzdGluYXRpb25BcnJheT17fTt0aGlzLmNhbm9uaWNhbD17fTt0aGlzLnBlbmRpbmc9W107dGhpcy5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzPXt9O3RoaXMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz1xaygpfTsKZnVuY3Rpb24gb2soKXt2YXIgYT1NYygiZ29vZ2xlX3RhZ19kYXRhIix7fSksYj1hLnRpZHI7YiYmdHlwZW9mIGI9PT0ib2JqZWN0Inx8KGI9bmV3IHJrLGEudGlkcj1iKTt2YXIgYz1iO2MuY29udGFpbmVyfHwoYy5jb250YWluZXI9e30pO2MuZGVzdGluYXRpb258fChjLmRlc3RpbmF0aW9uPXt9KTtjLmRlc3RpbmF0aW9uQXJyYXl8fChjLmRlc3RpbmF0aW9uQXJyYXk9e30pO2MuY2Fub25pY2FsfHwoYy5jYW5vbmljYWw9e30pO2MucGVuZGluZ3x8KGMucGVuZGluZz1bXSk7Yy5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzfHwoYy5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzPXFrKCkpO3JldHVybiBjfTtmdW5jdGlvbiBzaygpe3JldHVybiBJZig3KSYmdGsoKS5zb21lKGZ1bmN0aW9uKGEpe3JldHVybiBhPT09RSg1KX0pfWZ1bmN0aW9uIHVrKCl7dmFyIGE7cmV0dXJuKGE9S2YoNTUpKSE9bnVsbD9hOltdfWZ1bmN0aW9uIHZrKCl7cmV0dXJuIEUoNil8fCJfIitFKDUpfWZ1bmN0aW9uIHdrKCl7dmFyIGE9RSgxMCk7cmV0dXJuIGE/YS5zcGxpdCgifCIpOltFKDUpXX1mdW5jdGlvbiB0aygpe3ZhciBhPUtmKDU5KTtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGI9PT0ic3RyaW5nIn0pLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gYi5pbmRleE9mKCJHVE0tIikhPT0wfSk6W119ZnVuY3Rpb24geGsoKXt2YXIgYT15ayh6aygpKSxiPWEmJmEucGFyZW50O2lmKGIpcmV0dXJuIHlrKGIpfQpmdW5jdGlvbiBBaygpe3ZhciBhPXlrKHprKCkpO2lmKGEpe2Zvcig7YS5wYXJlbnQ7KXt2YXIgYj15ayhhLnBhcmVudCk7aWYoIWIpYnJlYWs7YT1ifXJldHVybiBhfX1mdW5jdGlvbiB5ayhhKXt2YXIgYj1vaygpO3JldHVybiBhLmlzRGVzdGluYXRpb24/bmsoYS5jdGlkKTpiLmNvbnRhaW5lclthLmN0aWRdfWZ1bmN0aW9uIEJrKCl7dmFyIGE9b2soKTtpZihhLnBlbmRpbmcpe2Zvcih2YXIgYixjPVtdLGQ9ITEsZT13aygpLGY9dGsoKSxnPXt9LGg9MDtoPGEucGVuZGluZy5sZW5ndGg7Zz17Umc6dm9pZCAwfSxoKyspZy5SZz1hLnBlbmRpbmdbaF0sQ2IoZy5SZy50YXJnZXQuaXNEZXN0aW5hdGlvbj9mOmUsZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBuPT09bC5SZy50YXJnZXQuY3RpZH19KGcpKT9kfHwoYj1nLlJnLm9uTG9hZCxkPSEwKTpjLnB1c2goZy5SZyk7YS5wZW5kaW5nPWM7aWYoYil0cnl7Yih2aygpKX1jYXRjaChsKXt9fX0KZnVuY3Rpb24gQ2soKXtmb3IodmFyIGE9RSg1KSxiPXdrKCksYz10aygpLGQ9dWsoKSxlPWZ1bmN0aW9uKHEscil7dmFyIHQ9e2Nhbm9uaWNhbENvbnRhaW5lcklkOkUoNiksc2NyaXB0Q29udGFpbmVySWQ6YSxzdGF0ZToyLGNvbnRhaW5lcnM6Yi5zbGljZSgpLGRlc3RpbmF0aW9uczpjLnNsaWNlKCl9O0pjJiYodC5zY3JpcHRFbGVtZW50PUpjKTtLYyYmKHQuc2NyaXB0U291cmNlPUtjKTt4aygpPT09dm9pZCAwJiYodC5odG1sTG9hZE9yZGVyPWxrKHQpLHQubG9hZFNjcmlwdFR5cGU9bWsodCkpO3ZhciB1LHY7c3dpdGNoKHIpe2Nhc2UgMDp1PWZ1bmN0aW9uKHope2YuY29udGFpbmVyW3FdPXp9O3Y9Zi5jb250YWluZXJbcV07YnJlYWs7Y2FzZSAxOnU9ZnVuY3Rpb24oeil7Zi5kZXN0aW5hdGlvbkFycmF5W3FdPWYuZGVzdGluYXRpb25BcnJheVtxXXx8W107Zi5kZXN0aW5hdGlvbkFycmF5W3FdLnVuc2hpZnQoeil9O3ZhciB4LHk9KCh4PWYuZGVzdGluYXRpb25BcnJheVtxXSk9PQpudWxsP3ZvaWQgMDp4WzBdKXx8Zi5kZXN0aW5hdGlvbltxXTsheXx8eS5zdGF0ZSE9PTAmJnkuc3RhdGUhPT0xfHwodj15KTticmVhaztjYXNlIDI6dT1mdW5jdGlvbih6KXtmLmRlc3RpbmF0aW9uQXJyYXlbcV09Zi5kZXN0aW5hdGlvbkFycmF5W3FdfHxbXTtmLmRlc3RpbmF0aW9uQXJyYXlbcV0ucHVzaCh6KX0sdj12b2lkIDB9dSYmKHY/KHYuc3RhdGU9PT0wJiZQKDkzKSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHYsdCkpOnUodCkpfSxmPW9rKCksZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKWUoaC52YWx1ZSwwKTtmb3IodmFyIGw9bShjKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtkLmluY2x1ZGVzKHApP2UocCwxKTplKHAsMil9Zi5jYW5vbmljYWxbdmsoKV09e307QmsoKX1mdW5jdGlvbiBEaygpe3ZhciBhPXZrKCk7cmV0dXJuISFvaygpLmNhbm9uaWNhbFthXX0KZnVuY3Rpb24gRWsoYSl7cmV0dXJuISFvaygpLmNvbnRhaW5lclthXX1mdW5jdGlvbiBGaygpe3ZhciBhPXprKCksYj15ayhhKTtyZXR1cm4gYiYmYi5jb250ZXh0fWZ1bmN0aW9uIEdrKGEpe3ZhciBiPW5rKGEpO3JldHVybiBiP2Iuc3RhdGUhPT0wOiExfWZ1bmN0aW9uIHprKCl7cmV0dXJue2N0aWQ6RSg1KSxpc0Rlc3RpbmF0aW9uOklmKDcpfX1mdW5jdGlvbiBIayhhLGIsYyl7dmFyIGQ9emsoKSxlPW9rKCkuY29udGFpbmVyW2FdO2UmJmUuc3RhdGUhPT0zfHwob2soKS5jb250YWluZXJbYV09e3N0YXRlOjEsY29udGV4dDpiLHBhcmVudDpkfSxwayh7Y3RpZDphLGlzRGVzdGluYXRpb246ITF9LGMpKX1mdW5jdGlvbiBJayhhLGIsYyl7dmFyIGQ9b2soKSxlPW5rKGEpO2U/ZS5zdGF0ZT0xOihlPXtjb250ZXh0OmIsc3RhdGU6MSxwYXJlbnQ6emsoKX0sZC5kZXN0aW5hdGlvbkFycmF5W2FdPVtlXSk7cGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiEwfSxjKX0KZnVuY3Rpb24gSmsoYSxiLGMsZCl7dmFyIGU9b2soKSxmPW5rKGEpO2Y/Zi5zdGF0ZT0wOihmPXtzdGF0ZTowLHRyYW5zcG9ydFVybDpiLGNvbnRleHQ6YyxwYXJlbnQ6emsoKX0sZS5kZXN0aW5hdGlvbkFycmF5W2FdPVtmXSk7cGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiEwfSxkKTtQKDkxKX1mdW5jdGlvbiBLaygpe3ZhciBhPW9rKCkuY29udGFpbmVyLGI7Zm9yKGIgaW4gYSlpZihhLmhhc093blByb3BlcnR5KGIpJiZhW2JdLnN0YXRlPT09MSlyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBMaygpe3ZhciBhPXt9O0diKG9rKCkuZGVzdGluYXRpb24sZnVuY3Rpb24oYixjKXsoYz09bnVsbD92b2lkIDA6Yy5zdGF0ZSk9PT0wJiYoYVtiXT1jKX0pO0diKG9rKCkuZGVzdGluYXRpb25BcnJheSxmdW5jdGlvbihiLGMpe3ZhciBkPWNbMF07KGQ9PW51bGw/dm9pZCAwOmQuc3RhdGUpPT09MCYmKGFbYl09ZCl9KTtyZXR1cm4gYX0KZnVuY3Rpb24gTWsoYSl7cmV0dXJuISEoYSYmYS5wYXJlbnQmJmEuY29udGV4dCYmYS5jb250ZXh0LnNvdXJjZT09PTEmJmEucGFyZW50LmN0aWQuaW5kZXhPZigiR1RNLSIpIT09MCl9ZnVuY3Rpb24gTmsoKXtmb3IodmFyIGE9b2soKSxiPW0od2soKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaWYoYS5pbmplY3RlZEZpcnN0UGFydHlDb250YWluZXJzW2MudmFsdWVdKXJldHVybiEwO3JldHVybiExfTt2YXIgT2s9ZnVuY3Rpb24oKXt9O09rLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJ1bmRlZmluZWQifTt2YXIgUGs9bmV3IE9rO3ZhciBYaz1mdW5jdGlvbigpe3RoaXMuc3RvcmFnZT1ZYSgpfTtYay5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5zdG9yYWdlLnNldChTdHJpbmcoYSksYil9O1hrLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuc3RvcmFnZS5nZXQoU3RyaW5nKGEpKX07dmFyIFlrO2Z1bmN0aW9uIFprKGEsYil7WWt8fChZaz1uZXcgWGspO1lrLnNldChhLGIpfWZ1bmN0aW9uICRrKGEpe1lrfHwoWWs9bmV3IFhrKTtyZXR1cm4gWWsuZ2V0KGEpfWZ1bmN0aW9uIGFsKGEsYil7WWt8fChZaz1uZXcgWGspO3ZhciBjPVlrO2Muc3RvcmFnZS5oYXMoU3RyaW5nKGEpKXx8Yy5zdG9yYWdlLnNldChTdHJpbmcoYSksYigpKTtyZXR1cm4gYy5zdG9yYWdlLmdldChTdHJpbmcoYSkpfTtmdW5jdGlvbiBibChhLGIpe2Z1bmN0aW9uIGMoZyl7dmFyIGg9UmooZyksbD1MaihoLCJwcm90b2NvbCIpLG49TGooaCwiaG9zdCIsITApLHA9TGooaCwicG9ydCIpLHE9TGooaCwicGF0aCIpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvXC8kLywiIik7aWYobD09PXZvaWQgMHx8bD09PSJodHRwIiYmcD09PSI4MCJ8fGw9PT0iaHR0cHMiJiZwPT09IjQ0MyIpbD0id2ViIixwPSJkZWZhdWx0IjtyZXR1cm5bbCxuLHAscV19Zm9yKHZhciBkPWMoU3RyaW5nKGEpKSxlPWMoU3RyaW5nKGIpKSxmPTA7ZjxkLmxlbmd0aDtmKyspaWYoZFtmXSE9PWVbZl0pcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gY2woYSl7cmV0dXJuIGRsKGEpPzE6MH0KZnVuY3Rpb24gZGwoYSl7dmFyIGI9YS5hcmcwLGM9YS5hcmcxO2lmKGEuYW55X29mJiZBcnJheS5pc0FycmF5KGMpKXtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9RWQoYSx7fSk7RWQoe2FyZzE6Y1tkXSxhbnlfb2Y6dm9pZCAwfSxlKTtpZihjbChlKSlyZXR1cm4hMH1yZXR1cm4hMX1zd2l0Y2goYVsiZnVuY3Rpb24iXSl7Y2FzZSAiX2NuIjpyZXR1cm4gS2coYixjKTtjYXNlICJfY3NzIjpyZXR1cm4gR2coYixjKTtjYXNlICJfZXciOnJldHVybiBIZyhiLGMpO2Nhc2UgIl9lcSI6cmV0dXJuIExnKGIsYyk7Y2FzZSAiX2dlIjpyZXR1cm4gTWcoYixjKTtjYXNlICJfZ3QiOnJldHVybiBPZyhiLGMpO2Nhc2UgIl9sYyI6cmV0dXJuIElnKGIsYyk7Y2FzZSAiX2xlIjpyZXR1cm4gTmcoYixjKTtjYXNlICJfbHQiOnJldHVybiBQZyhiLGMpO2Nhc2UgIl9yZSI6cmV0dXJuIEpnKGIsYyxhLmlnbm9yZV9jYXNlLGFsKDMsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE1hcH0pKTtjYXNlICJfc3ciOnJldHVybiBRZyhiLApjKTtjYXNlICJfdW0iOnJldHVybiBibChiLGMpfXJldHVybiExfTtmdW5jdGlvbiBlbChhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBmO3N3aXRjaChhWzBdKXtjYXNlICJmdW5jdGlvbl9pZCI6cmV0dXJuIGFbMV07Y2FzZSAibGlzdCI6Zj1bXTtmb3IodmFyIGc9MTtnPGEubGVuZ3RoO2crKylmLnB1c2goZWwoYVtnXSxiLGMsZCxlKSk7cmV0dXJuIGY7Y2FzZSAibWFjcm8iOnZhciBoPWRbYVsxXV07cmV0dXJuIGg/aC5ldmFsdWF0ZShiLGUpOnZvaWQgMDtjYXNlICJtYXAiOmY9e307Zm9yKHZhciBsPTE7bDxhLmxlbmd0aDtsKz0yKWZbZWwoYVtsXSxiLGMsZCxlKV09ZWwoYVtsKzFdLGIsYyxkLGUpO3JldHVybiBmO2Nhc2UgInRlbXBsYXRlIjpmPVtdO2Zvcih2YXIgbj0hMSxwPTE7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWVsKGFbcF0sYixjLGQsZSk7Zi5wdXNoKHEpfXJldHVybiBmLmpvaW4oIiIpO2Nhc2UgImVzY2FwZSI6Zj1lbChhWzFdLGIsYyxkLGUpO2Y9U3RyaW5nKGYpO2Zvcih2YXIgeT0yO3k8YS5sZW5ndGg7eSsrKVVpW2FbeV1dJiYoZj1VaVthW3ldXShmKSk7cmV0dXJuIGY7Y2FzZSAidGFnIjp2YXIgej1hWzFdO2lmKCFjW3pdKXRocm93IEVycm9yKCJVbmFibGUgdG8gcmVzb2x2ZSB0YWcgcmVmZXJlbmNlICIrCnorIi4iKTtyZXR1cm57Ym86YVsyXSxpbmRleDp6fTtjYXNlICJ6YiI6dmFyIEM9e30sRD0oQ1tHZi5ZYl09YVsxXSxDLmFyZzA9ZWwoYVsyXSxiLGMsZCxlKSxDLmFyZzE9ZWwoYVszXSxiLGMsZCxlKSxDLmlnbm9yZV9jYXNlPWVsKGFbNV0sYixjLGQsZSksQyksST1jbChEKSxHPSEhYVs0XTtyZXR1cm4gR3x8SSE9PTI/RyE9PShJPT09MSk6bnVsbDtkZWZhdWx0OnRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGV4cGFuZCB1bmtub3duIFZhbHVlIHR5cGU6ICIrYVswXSsiLiIpO319cmV0dXJuIGF9O2Z1bmN0aW9uIGZsKGEpe3JldHVybiBhJiZhLmluZGV4T2YoInBlbmRpbmc6Iik9PT0wP2dsKGEuc3Vic3RyKDgpKTohMX1mdW5jdGlvbiBnbChhKXtpZihhPT1udWxsfHxhLmxlbmd0aD09PTApcmV0dXJuITE7dmFyIGI9TnVtYmVyKGEpLGM9TmIoKTtyZXR1cm4gYjxjKzNFNSYmYj5jLTlFNX07dmFyIGhsPSExLGlsPSExLGpsPSExLGtsPTAsbGw9ITEsbWw9dm9pZCAwLG5sPVtdO2Z1bmN0aW9uIG9sKGEpe2lmKGtsPT09MClsbCYmbmwmJihubC5sZW5ndGg+PTEwMCYmbmwuc2hpZnQoKSxubC5wdXNoKGEpKTtlbHNlIGlmKHBsKCkpe3ZhciBiPUUoNDEpLGM9TWMoYixbXSk7Yy5sZW5ndGg+PTUwJiZjLnNoaWZ0KCk7Yy5wdXNoKGEpfX1mdW5jdGlvbiBxbCgpe2lsfHwocmwoKSxzbChrbCkpfWZ1bmN0aW9uIHNsKGEpe2lmKCFpbHx8a2w9PT0yJiZhPT09MSlpZihpbD0hMCxqbCYmKGFkKEIsIlRBUHJvZERlYnVnU2lnbmFsIixxbCksamw9ITEpLG1sIT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQobWwpLG1sPXZvaWQgMCksa2w9YSxhPT09MSl7dmFyIGI9bmw7bmw9dm9pZCAwO2I9PW51bGx8fGIuZm9yRWFjaChmdW5jdGlvbihjKXtvbChjKX0pfX0KZnVuY3Rpb24gcmwoKXt2YXIgYT1CLmRvY3VtZW50RWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtdGFnLWFzc2lzdGFudC1wcm9kLXByZXNlbnQiKTtnbChhKT9rbD0xOiFmbChhKXx8aGx8fGpsP2tsPTI6KGpsPSEwLCRjKEIsIlRBUHJvZERlYnVnU2lnbmFsIixxbCwhMSksbWw9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWx8fChybCgpLHNsKGtsKSk7aGw9ITB9LDIwMCkpfWZ1bmN0aW9uIHBsKCl7aWYoIWxsKXJldHVybiExO3N3aXRjaChrbCl7Y2FzZSAxOmNhc2UgMDpyZXR1cm4hMDtjYXNlIDI6cmV0dXJuITE7ZGVmYXVsdDpyZXR1cm4hMX19O2Z1bmN0aW9uIHRsKCl7dmFyIGE9TWMoImdvb2dsZV90YWdfZGF0YSIse30pO3JldHVybiBhLmljcz1hLmljc3x8bmV3IHVsfXZhciB1bD1mdW5jdGlvbigpe3RoaXMuZW50cmllcz17fTt0aGlzLndhaXRQZXJpb2RUaW1lZE91dD10aGlzLndhc1NldExhdGU9dGhpcy5hY2Nlc3NlZEFueT10aGlzLmFjY2Vzc2VkRGVmYXVsdD10aGlzLnVzZWRJbXBsaWNpdD10aGlzLnVzZWRVcGRhdGU9dGhpcy51c2VkRGVmYXVsdD10aGlzLnVzZWREZWNsYXJlPXRoaXMuYWN0aXZlPSExO3RoaXMuSD1bXX07CnVsLnByb3RvdHlwZS5kZWZhdWx0PWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcpe3RoaXMudXNlZERlZmF1bHR8fHRoaXMudXNlZERlY2xhcmV8fCF0aGlzLmFjY2Vzc2VkRGVmYXVsdCYmIXRoaXMuYWNjZXNzZWRBbnl8fCh0aGlzLndhc1NldExhdGU9ITApO3RoaXMudXNlZERlZmF1bHQ9dGhpcy5hY3RpdmU9ITA7c2IoIlRBR0dJTkciLDE5KTtiPT1udWxsP3NiKCJUQUdHSU5HIiwxOCk6dmwodGhpcyxhLGI9PT0iZ3JhbnRlZCIsYyxkLGUsZixnKX07dWwucHJvdG90eXBlLndhaXRGb3JVcGRhdGU9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGg7ZCsrKXZsKHRoaXMsYVtkXSx2b2lkIDAsdm9pZCAwLCIiLCIiLGIsYyl9Owp2YXIgdmw9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt2YXIgbD1hLmVudHJpZXMsbj1sW2JdfHx7fSxwPW4ucmVnaW9uLHE9ZCYmemIoZCk/ZC50b1VwcGVyQ2FzZSgpOnZvaWQgMDtlPWUudG9VcHBlckNhc2UoKTtmPWYudG9VcHBlckNhc2UoKTtpZihlPT09IiJ8fHE9PT1mfHwocT09PWU/cCE9PWY6IXEmJiFwKSl7dmFyIHI9ISEoZyYmZz4wJiZuLnVwZGF0ZT09PXZvaWQgMCksdD17cmVnaW9uOnEsZGVjbGFyZV9yZWdpb246bi5kZWNsYXJlX3JlZ2lvbixpbXBsaWNpdDpuLmltcGxpY2l0LGRlZmF1bHQ6YyE9PXZvaWQgMD9jOm4uZGVmYXVsdCxkZWNsYXJlOm4uZGVjbGFyZSx1cGRhdGU6bi51cGRhdGUscXVpZXQ6cn07aWYoZSE9PSIifHxuLmRlZmF1bHQhPT0hMSlsW2JdPXQ7ciYmQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bFtiXT09PXQmJnQucXVpZXQmJihzYigiVEFHR0lORyIsMiksYS53YWl0UGVyaW9kVGltZWRPdXQ9ITAsYS5jbGVhclRpbWVvdXQoYix2b2lkIDAsaCksCmEubm90aWZ5TGlzdGVuZXJzKCkpfSxnKX19O2s9dWwucHJvdG90eXBlO2suY2xlYXJUaW1lb3V0PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bYV0sZT1jLmRlbGVnYXRlZENvbnNlbnRUeXBlcyxmO2ZvcihmIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShmKSYmZVtmXT09PWEmJmQucHVzaChmKTt2YXIgZz10aGlzLmVudHJpZXNbYV18fHt9LGg9dGhpcy5nZXRDb25zZW50U3RhdGUoYSxjKTtpZihnLnF1aWV0KXtnLnF1aWV0PSExO2Zvcih2YXIgbD1tKGQpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXdsKHRoaXMsbi52YWx1ZSl9ZWxzZSBpZihiIT09dm9pZCAwJiZoIT09Yilmb3IodmFyIHA9bShkKSxxPXAubmV4dCgpOyFxLmRvbmU7cT1wLm5leHQoKSl3bCh0aGlzLHEudmFsdWUpfTsKay51cGRhdGU9ZnVuY3Rpb24oYSxiLGMpe3RoaXMudXNlZERlZmF1bHR8fHRoaXMudXNlZERlY2xhcmV8fHRoaXMudXNlZFVwZGF0ZXx8IXRoaXMuYWNjZXNzZWRBbnl8fCh0aGlzLndhc1NldExhdGU9ITApO3RoaXMudXNlZFVwZGF0ZT10aGlzLmFjdGl2ZT0hMDtpZihiIT1udWxsKXt2YXIgZD10aGlzLmdldENvbnNlbnRTdGF0ZShhLGMpLGU9dGhpcy5lbnRyaWVzOyhlW2FdPWVbYV18fHt9KS51cGRhdGU9Yj09PSJncmFudGVkIjt0aGlzLmNsZWFyVGltZW91dChhLGQsYyl9fTsKay5kZWNsYXJlPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy51c2VkRGVjbGFyZT10aGlzLmFjdGl2ZT0hMDt2YXIgZj10aGlzLmVudHJpZXMsZz1mW2FdfHx7fSxoPWcuZGVjbGFyZV9yZWdpb24sbD1jJiZ6YihjKT9jLnRvVXBwZXJDYXNlKCk6dm9pZCAwO2Q9ZC50b1VwcGVyQ2FzZSgpO2U9ZS50b1VwcGVyQ2FzZSgpO2lmKGQ9PT0iInx8bD09PWV8fChsPT09ZD9oIT09ZTohbCYmIWgpKXt2YXIgbj17cmVnaW9uOmcucmVnaW9uLGRlY2xhcmVfcmVnaW9uOmwsZGVjbGFyZTpiPT09ImdyYW50ZWQiLGltcGxpY2l0OmcuaW1wbGljaXQsZGVmYXVsdDpnLmRlZmF1bHQsdXBkYXRlOmcudXBkYXRlLHF1aWV0OmcucXVpZXR9O2lmKGQhPT0iInx8Zy5kZWNsYXJlIT09ITEpZlthXT1ufX07CmsuaW1wbGljaXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnVzZWRJbXBsaWNpdD0hMDt2YXIgYz10aGlzLmVudHJpZXMsZD1jW2FdPWNbYV18fHt9O2QuaW1wbGljaXQhPT0hMSYmKGQuaW1wbGljaXQ9Yj09PSJncmFudGVkIil9OwprLmdldENvbnNlbnRTdGF0ZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuZW50cmllcyxkPWNbYV18fHt9LGU9ZC51cGRhdGU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYi51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpe3ZhciBmPWIuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYV07aWYoZj09PTMpcmV0dXJuIDE7aWYoZj09PTIpcmV0dXJuIDJ9ZWxzZSBpZihlPWQuZGVmYXVsdCxlIT09dm9pZCAwKXJldHVybiBlPzE6MjtpZihiPT1udWxsPzA6Yi5kZWxlZ2F0ZWRDb25zZW50VHlwZXMuaGFzT3duUHJvcGVydHkoYSkpe3ZhciBnPWIuZGVsZWdhdGVkQ29uc2VudFR5cGVzW2FdLGg9Y1tnXXx8e307ZT1oLnVwZGF0ZTtpZihlIT09dm9pZCAwKXJldHVybiBlPzE6MjtpZihiLnVzZWRDb250YWluZXJTY29wZWREZWZhdWx0cyl7dmFyIGw9Yi5jb250YWluZXJTY29wZWREZWZhdWx0c1tnXTtpZihsPT09MylyZXR1cm4gMTtpZihsPT09MilyZXR1cm4gMn1lbHNlIGlmKGU9CmguZGVmYXVsdCxlIT09dm9pZCAwKXJldHVybiBlPzE6Mn1lPWQuZGVjbGFyZTtpZihlIT09dm9pZCAwKXJldHVybiBlPzE6MjtlPWQuaW1wbGljaXQ7cmV0dXJuIGUhPT12b2lkIDA/ZT8zOjQ6MH07ay5hZGRMaXN0ZW5lcj1mdW5jdGlvbihhLGIpe3RoaXMuSC5wdXNoKHtjb25zZW50VHlwZXM6YSxpZTpifSl9O3ZhciB3bD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8YS5ILmxlbmd0aDsrK2Mpe3ZhciBkPWEuSFtjXTtBcnJheS5pc0FycmF5KGQuY29uc2VudFR5cGVzKSYmZC5jb25zZW50VHlwZXMuaW5kZXhPZihiKSE9PS0xJiYoZC54bz0hMCl9fTt1bC5wcm90b3R5cGUubm90aWZ5TGlzdGVuZXJzPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7Yzx0aGlzLkgubGVuZ3RoOysrYyl7dmFyIGQ9dGhpcy5IW2NdO2lmKGQueG8pe2QueG89ITE7dHJ5e2QuaWUoe2NvbnNlbnRFdmVudElkOmEsY29uc2VudFByaW9yaXR5SWQ6Yn0pfWNhdGNoKGUpe319fX07dmFyIHhsPSExLHlsPSExLHpsPXt9LEFsPXtkZWxlZ2F0ZWRDb25zZW50VHlwZXM6e30sY29yZVBsYXRmb3JtU2VydmljZXM6e30sdXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzOiExLHNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM6ITEsY29udGFpbmVyU2NvcGVkRGVmYXVsdHM6KHpsLmFkX3N0b3JhZ2U9MSx6bC5hbmFseXRpY3Nfc3RvcmFnZT0xLHpsLmFkX3VzZXJfZGF0YT0xLHpsLmFkX3BlcnNvbmFsaXphdGlvbj0xLHpsKSx1c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM6ITF9O2Z1bmN0aW9uIEJsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4oemIoYSk/W2FdOmEpLmV2ZXJ5KGZ1bmN0aW9uKGMpe3N3aXRjaChiLmdldENvbnNlbnRTdGF0ZShjLEFsKSl7Y2FzZSAxOmNhc2UgMzpyZXR1cm4hMDtjYXNlIDI6Y2FzZSA0OnJldHVybiExO2RlZmF1bHQ6cmV0dXJuITB9fSl9CmZ1bmN0aW9uIENsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4gYi5nZXRDb25zZW50U3RhdGUoYSxBbCl9ZnVuY3Rpb24gRGwoYSl7dmFyIGI9dGwoKTtiLmFjY2Vzc2VkQW55PSEwO3JldHVybiEoYi5lbnRyaWVzW2FdfHx7fSkucXVpZXR9ZnVuY3Rpb24gRWwoKXtpZighWWYoNSkpcmV0dXJuITE7dmFyIGE9dGwoKTthLmFjY2Vzc2VkQW55PSEwO2lmKGEuYWN0aXZlKXJldHVybiEwO2lmKCFBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpcmV0dXJuITE7Zm9yKHZhciBiPW0oT2JqZWN0LmtleXMoQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHMpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSlpZihBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tjLnZhbHVlXSE9PTEpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gRmwoYSxiKXt0bCgpLmFkZExpc3RlbmVyKGEsYil9CmZ1bmN0aW9uIEdsKGEsYil7dGwoKS5ub3RpZnlMaXN0ZW5lcnMoYSxiKX1mdW5jdGlvbiBIbChhLGIpe2lmKGIuZXZlcnkoRGwpKWEoe30pO2Vsc2V7dmFyIGM9ITE7RmwoYixmdW5jdGlvbihkKXshYyYmYi5ldmVyeShEbCkmJihjPSEwLGEoZCkpfSl9fQpmdW5jdGlvbiBJbChhLGIpe3ZhciBjPXpiKGIpP1tiXTpiLGQ9e30sZT1mdW5jdGlvbigpe3JldHVybiBjLmZpbHRlcihmdW5jdGlvbihoKXtyZXR1cm4gQmwoaCkmJiFkW2hdfSl9LGY9ZSgpO2lmKGYubGVuZ3RoIT09Yy5sZW5ndGgpe3ZhciBnPWZ1bmN0aW9uKGgpe2Zvcih2YXIgbD1tKGgpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKWRbbi52YWx1ZV09ITB9O2coZik7RmwoYyxmdW5jdGlvbihoKXtmdW5jdGlvbiBsKHEpe3EubGVuZ3RoIT09MCYmKGcocSksaC5jb25zZW50VHlwZXM9cSxhKGgpKX12YXIgbj1lKCk7aWYobi5sZW5ndGghPT0wKXt2YXIgcD1PYmplY3Qua2V5cyhkKS5sZW5ndGg7bi5sZW5ndGgrcD49Yy5sZW5ndGg/bChuKTpBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtsKGUoKSl9LDUwMCl9fSl9fTt2YXIgSmw9ITE7ZnVuY3Rpb24gS2woYSxiKXt2YXIgYz13aygpLGQ9dGsoKTtFKDI2KTt2YXIgZT1JZig0Nyk/MDpJZig1MCk/MTozLGY9WGooKTtpZihwbCgpKXt2YXIgZz1MbCgiSU5JVCIpO2cuY29udGFpbmVyTG9hZFNvdXJjZT1hIT1udWxsP2E6MDtiJiYoZy5wYXJlbnRUYXJnZXRSZWZlcmVuY2U9Yik7Zy5hbGlhc2VzPWM7Zy5kZXN0aW5hdGlvbnM9ZDtlIT09dm9pZCAwJiYoZy5ndGc9e3NvdXJjZTplLG1QYXRoOmYhPW51bGw/ZjoiIn0pO29sKGcpfX0KZnVuY3Rpb24gTWwoYSl7dmFyIGIsYyxkLGU7Yj1hLnRhcmdldElkO2M9YS5yZXF1ZXN0O2Q9YS5xYjtlPWEuaXNCYXRjaGVkO3ZhciBmO2lmKGY9cGwoKSl7dmFyIGc7YTpzd2l0Y2goYy5lbmRwb2ludCl7Y2FzZSA2ODpjYXNlIDY5OmNhc2UgMTk6Y2FzZSA2MjpjYXNlIDQ3Omc9ITA7YnJlYWsgYTtkZWZhdWx0Omc9ITF9Zj0hZ31pZihmKXt2YXIgaD1MbCgiR1RBR19ISVQiLHtldmVudElkOmQuZXZlbnRJZCxwcmlvcml0eUlkOmQucHJpb3JpdHlJZH0pO2gudGFyZ2V0PWI7aC51cmw9Yy51cmw7Yy5wb3N0Qm9keSYmKGgucG9zdEJvZHk9Yy5wb3N0Qm9keSk7aC5wYXJhbWV0ZXJFbmNvZGluZz1jLnBhcmFtZXRlckVuY29kaW5nO2guZW5kcG9pbnQ9Yy5lbmRwb2ludDtlIT09dm9pZCAwJiYoaC5pc0JhdGNoZWQ9ZSk7b2woaCl9fWZ1bmN0aW9uIE5sKGEpe3BsKCkmJk1sKGEoKSl9CmZ1bmN0aW9uIExsKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7Yi5ncm91cElkPU9sO3ZhciBjLGQ9YixlPVBsLGY9e3B1YmxpY0lkOlFsfTtkLmV2ZW50SWQhPW51bGwmJihmLmV2ZW50SWQ9ZC5ldmVudElkKTtkLnByaW9yaXR5SWQhPW51bGwmJihmLnByaW9yaXR5SWQ9ZC5wcmlvcml0eUlkKTtkLmV2ZW50TmFtZSYmKGYuZXZlbnROYW1lPWQuZXZlbnROYW1lKTtkLmdyb3VwSWQmJihmLmdyb3VwSWQ9ZC5ncm91cElkKTtkLnRhZ05hbWUmJihmLnRhZ05hbWU9ZC50YWdOYW1lKTtjPXtjb250YWluZXJQcm9kdWN0OiJHVE0iLGtleTpmLHZlcnNpb246ZSxtZXNzYWdlVHlwZTphfTtjLmNvbnRhaW5lclByb2R1Y3Q9Smw/Ik9HVCI6IkdUTSI7Yy5rZXkudGFyZ2V0UmVmPVJsO3JldHVybiBjfXZhciBRbD0iIixQbD0iIixSbD17Y3RpZDoiIixpc0Rlc3RpbmF0aW9uOiExfSxPbDsKZnVuY3Rpb24gU2woYSl7dmFyIGI9RSg1KSxjPUlmKDQ1KSxkPXNrKCksZT1FKDYpLGY9RSgxKTtFKDIzKTtrbD0wO2xsPSEwO3JsKCk7T2w9YTtRbD1iO1BsPWY7Smw9YztSbD17Y3RpZDpiLGlzRGVzdGluYXRpb246ZCxjYW5vbmljYWxJZDplfX07ZnVuY3Rpb24gVGwoYSxiLGMsZCl7aWYocGwoKSl7dmFyIGU9Yi5NO01sKHt0YXJnZXRJZDpkfHxbYi50YXJnZXQuZGVzdGluYXRpb25JZF0scmVxdWVzdDp7dXJsOmEscGFyYW1ldGVyRW5jb2Rpbmc6MixlbmRwb2ludDpjfSxxYjp7ZXZlbnRJZDplLmV2ZW50SWQscHJpb3JpdHlJZDplLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fTtmdW5jdGlvbiBVbChhLGIsYyl7dmFyIGQ9Imh0dHBzOi8vIithK2I7cmV0dXJuIGM/ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKT9YaigpK2MrYjpkfTpmdW5jdGlvbigpe3JldHVybiBkfX07dmFyIFZsPXt9LFdsPShWbFsyMl09VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9jY20vY29udmVyc2lvbiIsIi9hcy9kIiksVmxbNjBdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9jY20vY29udmVyc2lvbiIsIi9ncyIpLFZsWzIzXT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvZy9kIiksVmwpO3ZhciBYbD17fSxZbD0oWGxbNV09VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIpLFhsWzZdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIsIi9ncyIpLFhsWzhdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvMXAtY29udmVyc2lvbiIpLFhsWzY2XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkL3Vjb252ZXJzaW9uIiksWGxbNjNdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iKSxYbFs2NF09VWwoInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL3BhZ2VhZC9jb252ZXJzaW9uIiwiL2dzIiksWGxbNjVdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvMXAtY29udmVyc2lvbiIpLFhsWzc0XT1mdW5jdGlvbigpe3JldHVybiBYaigpKyIvYXMvcC9jIn0sWGwpO3ZhciBabD17fSwkbD0oWmxbNDVdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9jY20vY29sbGVjdCIpLFpsWzQ2XT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvY2NtL2NvbGxlY3QiLCIvZ3MiKSxabFs2OV09VWwoImFkLmRvdWJsZWNsaWNrLm5ldCIsIi9jY20vcy9jb2xsZWN0IiksWmxbNThdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvc2V0X3BhcnRpdGlvbmVkX2Nvb2tpZSIpLFpsWzU3XT1VbCgid3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIiwiL3BhZ2VhZC9zZXRfcGFydGl0aW9uZWRfY29va2llIiksWmwpO3ZhciBhbT17fSxibT0oYW1bOV09VWwoImdvb2dsZWFkcy5nLmRvdWJsZWNsaWNrLm5ldCIsIi9wYWdlYWQvdmlld3Rocm91Z2hjb252ZXJzaW9uIiksYW1bNjhdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9ybWt0L2NvbGxlY3QiKSxhbSk7dmFyIGNtPXt9LGRtPShjbVsxMV09VWwoInd3dy5nb29nbGUuY29tIiwiL3BhZ2VhZC9mb3JtLWRhdGEiLCIvZCIpLGNtWzIxXT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2Zvcm0tZGF0YSIsIi9kIiksY21bNzJdPVVsKCJnb29nbGUuY29tIiwiL3BhZ2VhZC9mb3JtLWRhdGEiLCIvZCIpLGNtWzczXT1VbCgiZ29vZ2xlLmNvbSIsIi9jY20vZm9ybS1kYXRhIiwiL2QiKSxjbSk7dmFyIGVtPXt9LGZtPShlbVs1MV09VWwoInd3dy5nb29nbGUuY29tIiwiL3RyYXZlbC9mbGlnaHRzL2NsaWNrL2NvbnZlcnNpb24iKSxlbSk7dmFyIGdtPXt9LGhtPShnbVsxXT1mdW5jdGlvbigpe3JldHVybiJodHRwczovL2FkLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eTsifSxnbVsyXT1mdW5jdGlvbigpe3JldHVybihXaigpP1hqKCk6Imh0dHBzOi8vYWRlLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIpKyIvZGRtL2FjdGl2aXR5IisoTSg0NjcpPyI7IjoiLyIpfSxnbVszXT1mdW5jdGlvbihhKXtyZXR1cm4iaHR0cHM6Ly8iK2EubHIrIi5mbHMuZG91YmxlY2xpY2submV0L2FjdGl2aXR5aTsifSxnbSk7ZnVuY3Rpb24gaW0oYSl7c2IoIkhFQUxUSCIsYSl9O3ZhciBqbT17YmE6e1B0OiJhd191c2VyX2RhdGFfY2FjaGUiLG9pOiJjb29raWVfZGVwcmVjYXRpb25fbGFiZWwiLGJoOiJkaWFnbm9zdGljc19wYWdlX2lkIixvcDoiZW1lbW8iLGR1OiJlbV9yZWdpc3RyeSIsU2k6ImVhYiIscnU6ImZsX3VzZXJfZGF0YV9jYWNoZSIsdHU6ImdhNF91c2VyX2RhdGFfY2FjaGUiLEx1OiJpZGNfcHZfY2xhaW0iLFNlOiJpcF9nZW9fZGF0YV9jYWNoZSIsWGk6ImlwX2dlb19mZXRjaF9pbl9wcm9ncmVzcyIsam46Im5iX2RhdGEiLFRxOiJwYWdlX2V4cGVyaW1lbnRfaWRzIixsbjoicGxkIixWZToicHRfZGF0YSIsbW46InB0X2xpc3RlbmVyX3NldCIsa2o6InJldHJ5X2NvbnRhaW5lcnMiLE9oOiJzZXJ2aWNlX3dvcmtlcl9lbmRwb2ludCIsWnE6InNoYXJlZF91c2VyX2lkIixhcjoic2hhcmVkX3VzZXJfaWRfcmVxdWVzdGVkIixzajoic2hhcmVkX3VzZXJfaWRfc291cmNlIixidjoiYXdoIixocjoidW5pdmVyc2FsX2NsYWltX3JlZ2lzdHJ5In19O3ZhciBrbT1mdW5jdGlvbihhKXtyZXR1cm4gdGYoZnVuY3Rpb24oYil7Zm9yKHZhciBjIGluIGEpaWYoYj09PWFbY10mJiEvXlswLTldKyQvLnRlc3QoYykpcmV0dXJuITA7cmV0dXJuITF9KX0oam0uYmEpOwpmdW5jdGlvbiBsbShhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO2lmKGttKGEpKXt2YXIgYyxkLGU9KGQ9KGM9TWMoImdvb2dsZV90YWdfZGF0YSIse30pKS54Y2QpIT1udWxsP2Q6Yy54Y2Q9e307aWYoZVthXSlyZXR1cm4gZVthXTtpZihiKXt2YXIgZj12b2lkIDAsZz0xLGg9e30sbD17c2V0OmZ1bmN0aW9uKG4pe2Y9bjtsLm5vdGlmeSgpfSxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gZn0sc3Vic2NyaWJlOmZ1bmN0aW9uKG4pe2hbU3RyaW5nKGcpXT1uO3JldHVybiBnKyt9LHVuc3Vic2NyaWJlOmZ1bmN0aW9uKG4pe3ZhciBwPVN0cmluZyhuKTtyZXR1cm4gaC5oYXNPd25Qcm9wZXJ0eShwKT8oZGVsZXRlIGhbcF0sITApOiExfSxub3RpZnk6ZnVuY3Rpb24oKXtmb3IodmFyIG49bShPYmplY3Qua2V5cyhoKSkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpe3ZhciBxPXAudmFsdWU7dHJ5e2hbcV0oYSxmKX1jYXRjaChyKXt9fX19O3JldHVybiBlW2FdPWx9fX0KZnVuY3Rpb24gbW0oYSxiKXt2YXIgYz1sbShhLCEwKTtjJiZjLnNldChiKX1mdW5jdGlvbiBubShhKXt2YXIgYjtyZXR1cm4oYj1sbShhKSk9PW51bGw/dm9pZCAwOmIuZ2V0KCl9ZnVuY3Rpb24gb20oYSxiKXt2YXIgYz1sbShhKTtpZighYyl7Yz1sbShhLCEwKTtpZighYylyZXR1cm47Yy5zZXQoYil9cmV0dXJuIGMuZ2V0KCl9ZnVuY3Rpb24gcG0oYSxiKXtpZih0eXBlb2YgYj09PSJmdW5jdGlvbiIpe3ZhciBjO3JldHVybihjPWxtKGEsITApKT09bnVsbD92b2lkIDA6Yy5zdWJzY3JpYmUoYil9fWZ1bmN0aW9uIHFtKGEsYil7dmFyIGM9bG0oYSk7cmV0dXJuIGM/Yy51bnN1YnNjcmliZShiKTohMX07dmFyIHNtPWZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz0hMX07c20ucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt0aGlzLkt8fCh0aGlzLkg9dG0oKSx0aGlzLkhbIjAiXSYmb20oam0uYmEuU2UsSlNPTi5zdHJpbmdpZnkodGhpcy5IKSkpfTsKdmFyIHhtPWZ1bmN0aW9uKCl7dmFyIGE9dW0sYj12bSxjPXZvaWQgMCxkPWZ1bmN0aW9uKCl7YyE9PXZvaWQgMCYmcW0oam0uYmEuU2UsYyk7dHJ5e3ZhciBmPW5tKGptLmJhLlNlKTtiLkg9SlNPTi5wYXJzZShmKX1jYXRjaChnKXtQKDEyMyksaW0oMiksYi5IPXt9fWIuSz0hMDthKCl9LGU9bm0oam0uYmEuU2UpO2U/ZChlKTooYz1wbShqbS5iYS5TZSxkKSx3bSgpKX0sd209ZnVuY3Rpb24oKXtpZighbm0oam0uYmEuWGkpKXttbShqbS5iYS5YaSwhMCk7dmFyIGE9ZnVuY3Rpb24oYil7bW0oam0uYmEuU2UsYnx8Int9Iik7bW0oam0uYmEuWGksITEpfTt0cnl7QS5mZXRjaCgiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9jY20vZ2VvIix7bWV0aG9kOiJHRVQiLGNhY2hlOiJuby1zdG9yZSIsbW9kZToiY29ycyIsY3JlZGVudGlhbHM6Im9taXQifSkudGhlbihmdW5jdGlvbihiKXtiLm9rP2IudGV4dCgpLnRoZW4oZnVuY3Rpb24oYyl7YShjKX0sZnVuY3Rpb24oKXthKCl9KTphKCl9LGZ1bmN0aW9uKCl7YSgpfSl9Y2F0Y2goYil7YSgpfX19LAp0bT1mdW5jdGlvbigpe3ZhciBhPUUoMjIpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShxYihhKSl9Y2F0Y2goYil7cmV0dXJuIFAoMTIzKSxpbSgyKSx7fX19LHltPWZ1bmN0aW9uKCl7cmV0dXJuIHZtLkhbIjAiXXx8IiJ9LHptPWZ1bmN0aW9uKCl7cmV0dXJuIHZtLkhbIjEiXXx8IiJ9LEFtPWZ1bmN0aW9uKCl7dmFyIGE9dm0sYj0hMTtyZXR1cm4gYn0sQm09ZnVuY3Rpb24oKXtyZXR1cm4gdm0uSFsiNiJdIT09ITF9LENtPWZ1bmN0aW9uKCl7dmFyIGE9dm0sYj0hMTtyZXR1cm4gYn0sRG09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiOwpyZXR1cm4gYn0sRW09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO3JldHVybiBifSx2bT1uZXcgc207ZnVuY3Rpb24gRm0oYSl7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuImh0dHBzOi8vIisoRG0oKXx8Ind3dyIpKyIuZ29vZ2xlLWFuYWx5dGljcy5jb20vIithfWZ1bmN0aW9uIEdtKGEpe2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3ZhciBiPURtKCk7cmV0dXJuImh0dHBzOi8vIisoYj9iKyIuIjoiIikrImFuYWx5dGljcy5nb29nbGUuY29tLyIrYX12YXIgSG09e30sSW09KEhtWzE3XT1mdW5jdGlvbigpe3JldHVybiBXaigpJiYhRG0oKT9YaigpKyIvYWcvZy9jIjpHbSgpfSxIbVsxNl09ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKSYmIURtKCk/WGooKSsiL2dhL2cvYyI6Rm0oKX0sSG1bNjddPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuIERtKCk/IiI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vIithfSxIbSk7ZnVuY3Rpb24gSm0oYSxiLGMpe3ZhciBkPVVsKGIsIi9tZWFzdXJlbWVudC9jb252ZXJzaW9uIixjKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gRG0oKT9hKCJtZWFzdXJlbWVudC9jb252ZXJzaW9uIik6ZCgpfX12YXIgS209e30sTG09KEttWzU1XT1KbShGbSwicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvZ3MiKSxLbVs1NF09Sm0oR20sInd3dy5nb29nbGUuY29tIiwiL2ciKSxLbSk7dmFyIE1tPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sV2wsWWwsJGwsYm0sZG0sZm0saG0sTG0sSW0pO2Z1bmN0aW9uIE5tKGEsYil7dmFyIGM9T2JqZWN0LmtleXMoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdIT1udWxsfSkubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkKyI9IitiW2RdfSkuam9pbigiJiIpO3JldHVybiBNbVthXSh2b2lkIDApKyI/IitjfTt2YXIgT209e30sUG09KE9tLnRkcD0xLE9tLmV4cD0xLE9tLmd0bT0xLE9tLnBpZD0xLE9tLmRsPTEsT20uc2VxPTEsT20udD0xLE9tLnY9MSxPbSksUm09ZnVuY3Rpb24oKXt2YXIgYT1RbTtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGEuSFtiXX0pfSxTbT1mdW5jdGlvbihhLGIsYyl7aWYoYS5IW2JdPT09dm9pZCAwfHwoYz09PXZvaWQgMD8wOmMpKWEuSFtiXT0hMH0sVG09ZnVuY3Rpb24oYSl7YS5mb3JFYWNoKGZ1bmN0aW9uKGIpe1BtW2JdfHwoUW0uSFtiXT0hMSl9KX0sUW09bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gVW0oYSxiLGMpe3ZhciBkPWM9PT12b2lkIDA/ITA6YyxlPVFtO2UuS1thXT1iOyhkPT09dm9pZCAwfHxkKSYmU20oZSxhKX1mdW5jdGlvbiBWbShhLGIpe1NtKFFtLGEsYj09PXZvaWQgMD8hMTpiKX07ZnVuY3Rpb24gV20oYSl7dmFyIGI9MDthLkdjLmZvckVhY2goZnVuY3Rpb24oYyl7Ynw9MTw8Y30pO3JldHVybiBifWZ1bmN0aW9uIFhtKCl7cmV0dXJue3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0LGxmOnt9fX1mdW5jdGlvbiBZbShhLGIsYyxkKXt2YXIgZT1PYmplY3Qua2V5cyhhLm5mKS5zb3J0KGZ1bmN0aW9uKGYsZyl7cmV0dXJuIE51bWJlcihmKS1OdW1iZXIoZyl9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuW2YsYihhLm5mW2ZdKV19KS5maWx0ZXIoZnVuY3Rpb24oZil7cmV0dXJuIGZbMV0hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuam9pbihjKX0pLmpvaW4oZCk7cmV0dXJuIGU/ZTp2b2lkIDB9CmZ1bmN0aW9uIFptKGEsYil7dmFyIGMsZCxlO2M9Yz09PXZvaWQgMD8iXyI6YztkPWQ9PT12b2lkIDA/IjsiOmQ7ZT1lPT09dm9pZCAwPyJ+IjplO2Zvcih2YXIgZj1bXSxnPW0oT2JqZWN0LmtleXMoYS5sZikuc29ydCgpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPVltKGEubGZbbF0sYixjLGQpO2lmKG4pe3ZhciBwPXZvaWQgMDtmLnB1c2goIiIrKChwPWwpIT1udWxsP3A6IiIpK2Qrbil9fXJldHVybiBmLmxlbmd0aD9mLmpvaW4oZSk6dm9pZCAwfQpmdW5jdGlvbiAkbShhKXthLmpiPTA7YS5HYy5jbGVhcigpO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKGEubGYpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9YS5sZltjLnZhbHVlXTtkLmpiPTA7ZC5HYy5jbGVhcigpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGQubmYpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9ZC5uZltmLnZhbHVlXTtnLmpiPTA7Zy5HYy5jbGVhcigpfX19CmZ1bmN0aW9uIGFuKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPzE6ZDthLnRvdGFsKz1kO2EuamIrPWQ7dmFyIGYsZz1iPT09dm9pZCAwPyIiOmI7Zj1hLmxmW2ddfHwoYS5sZltnXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXQsbmY6e319KTtmLnRvdGFsKz1kO2YuamIrPWQ7dmFyIGgsbD1TdHJpbmcoYyk7aD1mLm5mW2xdfHwoZi5uZltsXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXR9KTtoLnRvdGFsKz1kO2guamIrPWQ7ZSE9PXZvaWQgMCYmKGEuR2MuYWRkKGUpLGYuR2MuYWRkKGUpLGguR2MuYWRkKGUpKX07dmFyIGJuPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCl9O2JuLnByb3RvdHlwZS5pbmNyZW1lbnQ9ZnVuY3Rpb24oYSxiKXthbih0aGlzLkgsYSxiKX07dmFyIGNuPW5ldyBibjtmdW5jdGlvbiBkbihhKXt2YXIgYj1TdHJpbmcoYVtHZi5ZYl18fCIiKS5yZXBsYWNlKC9fL2csIiIpO3JldHVybiBTYihiLCJjdnQiKT8iY3Z0IjpifXZhciBlbj1BLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCI/Z3RtX2xhdGVuY3k9Iik+PTB8fEEubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoIiZndG1fbGF0ZW5jeT0iKT49MDt2YXIgZ249ZnVuY3Rpb24oKXt2YXIgYT1mbjtyZXR1cm4gTSg2MDMpJiZJZig2NSwhMSkmJiFhLlp9LGZuPW5ldyBmdW5jdGlvbihhKXt0aGlzLlI9YSgpO3ZhciBiPUpmKDI3KTt0aGlzLk49ZW58fHRoaXMuUjxiO3ZhciBjPUpmKDQyKTt0aGlzLlo9ZW58fHRoaXMuUj49MS1jO3ZhciBkPU0oNjAzKSYmSWYoNjUsITEpO3RoaXMuSz10aGlzLlp8fGQ7dmFyIGU9SmYoMjcpLGY9SmYoNjMpO3RoaXMuSD1lbnx8Zj09PTF8fHRoaXMuUj49ZSYmdGhpcy5SPGUrZn0oZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKX0pO3ZhciBobj1mdW5jdGlvbigpe3RoaXMuSD17fX07aG4ucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjKXtpZihmbi5LKXt2YXIgZD1qbihiLGMpO2lmKGQpe3ZhciBlLGY9YjtmPT09NCYmKGY9NSk7dmFyIGc9dGhpcy5IW2ZdO2d8fChnPXRoaXMuSFtmXT17fSk7ZT1nO3ZhciBoPWVbZF07aHx8KGg9ZVtkXT1bXSk7aC5wdXNoKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSkpO2NuLmluY3JlbWVudChhLmRlc3RpbmF0aW9uSWQsYS5lbmRwb2ludCk7YS5lbmRwb2ludCE9PTU2JiZhLmVuZHBvaW50IT09NjEmJlZtKCJtZGUiLCEwKX19fTsKdmFyIG1uPWZ1bmN0aW9uKGEsYil7dmFyIGM9a24sZD1qbihhLGIpO2lmKGQpe3ZhciBlPWxuKGMsYSk7aWYoZSl7dmFyIGY9ZVtkXTtmJiYoZVtkXT1mLmZpbHRlcihmdW5jdGlvbihnKXtyZXR1cm4hZy5Fb30pKX19fSxsbj1mdW5jdGlvbihhLGIpe2I9PT00JiYoYj01KTtyZXR1cm4gYS5IW2JdfSxqbj1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYoYlswXT09PSIvIil7dmFyIGQ7Yz0oKGQ9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmQub3JpZ2luKStifXRyeXt2YXIgZT1uZXcgVVJMKGMpO3JldHVybiBhPT09Mj9lLm9yaWdpbjplLm9yaWdpbitlLnBhdGhuYW1lfWNhdGNoKGYpe319LGtuPW5ldyBobjsKZnVuY3Rpb24gbm4oYSl7c3dpdGNoKGEpe2Nhc2UgInNjcmlwdC1zcmMiOnJldHVybiA0O2Nhc2UgInNjcmlwdC1zcmMtZWxlbSI6cmV0dXJuIDU7Y2FzZSAiZnJhbWUtc3JjIjpyZXR1cm4gMjtjYXNlICJjb25uZWN0LXNyYyI6cmV0dXJuIDE7Y2FzZSAiaW1nLXNyYyI6cmV0dXJuIDN9fTtmdW5jdGlvbiBvbihhLGIsYyl7dmFyIGQsZT1hLkdvb2dsZWJRaENzTztlfHwoZT17fSxhLkdvb2dsZWJRaENzTz1lKTtkPWU7aWYoZFtiXSlyZXR1cm4hMTtkW2JdPVtdO2RbYl1bMF09YztyZXR1cm4hMH07dmFyIHBuLHFuO2E6e2Zvcih2YXIgcm49WyJDTE9TVVJFX0ZMQUdTIl0sc249UmEsdG49MDt0bjxybi5sZW5ndGg7dG4rKylpZihzbj1zbltyblt0bl1dLHNuPT1udWxsKXtxbj1udWxsO2JyZWFrIGF9cW49c259dmFyIHVuPXFuJiZxbls2MTA0MDEzMDFdO3BuPXVuIT1udWxsP3VuOiExO2Z1bmN0aW9uIHZuKCl7dmFyIGE9UmEubmF2aWdhdG9yO2lmKGEpe3ZhciBiPWEudXNlckFnZW50O2lmKGIpcmV0dXJuIGJ9cmV0dXJuIiJ9dmFyIHduLHhuPVJhLm5hdmlnYXRvcjt3bj14bj94bi51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7ZnVuY3Rpb24geW4oYSl7aWYoIXBufHwhd24pcmV0dXJuITE7Zm9yKHZhciBiPTA7Yjx3bi5icmFuZHMubGVuZ3RoO2IrKyl7dmFyIGM9d24uYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gem4oYSl7cmV0dXJuIHZuKCkuaW5kZXhPZihhKSE9LTF9O2Z1bmN0aW9uIEFuKCl7cmV0dXJuIHBuPyEhd24mJnduLmJyYW5kcy5sZW5ndGg+MDohMX1mdW5jdGlvbiBCbigpe3JldHVybiBBbigpPyExOnpuKCJPcGVyYSIpfWZ1bmN0aW9uIENuKCl7cmV0dXJuIHpuKCJGaXJlZm94Iil8fHpuKCJGeGlPUyIpfWZ1bmN0aW9uIERuKCl7cmV0dXJuIEFuKCk/eW4oIkNocm9taXVtIik6KHpuKCJDaHJvbWUiKXx8em4oIkNyaU9TIikpJiYhKEFuKCk/MDp6bigiRWRnZSIpKXx8em4oIlNpbGsiKX07ZnVuY3Rpb24gRW4oKXtyZXR1cm4gcG4/ISF3biYmISF3bi5wbGF0Zm9ybTohMX1mdW5jdGlvbiBGbigpe3JldHVybiB6bigiaVBob25lIikmJiF6bigiaVBvZCIpJiYhem4oImlQYWQiKX1mdW5jdGlvbiBHbigpe0ZuKCl8fHpuKCJpUGFkIil8fHpuKCJpUG9kIil9O3ZhciBIbj1mdW5jdGlvbihhKXtIblsiICJdKGEpO3JldHVybiBhfTtIblsiICJdPWZ1bmN0aW9uKCl7fTtCbigpO0FuKCl8fHpuKCJUcmlkZW50Iil8fHpuKCJNU0lFIik7em4oIkVkZ2UiKTshem4oIkdlY2tvIil8fHZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpfHx6bigiVHJpZGVudCIpfHx6bigiTVNJRSIpfHx6bigiRWRnZSIpO3ZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpJiZ6bigiTW9iaWxlIik7RW4oKXx8em4oIk1hY2ludG9zaCIpO0VuKCl8fHpuKCJXaW5kb3dzIik7KEVuKCk/d24ucGxhdGZvcm09PT0iTGludXgiOnpuKCJMaW51eCIpKXx8RW4oKXx8em4oIkNyT1MiKTtFbigpfHx6bigiQW5kcm9pZCIpO0ZuKCk7em4oImlQYWQiKTt6bigiaVBvZCIpO0duKCk7dm4oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImthaW9zIik7Q24oKTtGbigpfHx6bigiaVBvZCIpO3puKCJpUGFkIik7IXpuKCJBbmRyb2lkIil8fERuKCl8fENuKCl8fEJuKCl8fHpuKCJTaWxrIik7RG4oKTshem4oIlNhZmFyaSIpfHxEbigpfHwoQW4oKT8wOnpuKCJDb2FzdCIpKXx8Qm4oKXx8KEFuKCk/MDp6bigiRWRnZSIpKXx8KEFuKCk/eW4oIk1pY3Jvc29mdCBFZGdlIik6em4oIkVkZy8iKSl8fChBbigpP3luKCJPcGVyYSIpOnpuKCJPUFIiKSl8fENuKCl8fHpuKCJTaWxrIil8fHpuKCJBbmRyb2lkIil8fEduKCk7dmFyIEluPXt9LEpuPW51bGw7CmZ1bmN0aW9uIEtuKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZT4yNTUmJihiW2MrK109ZSYyNTUsZT4+PTgpO2JbYysrXT1lfXZhciBmPTQ7Zj09PXZvaWQgMCYmKGY9MCk7aWYoIUpuKXtKbj17fTtmb3IodmFyIGc9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksaD1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXSxsPTA7bDw1O2wrKyl7dmFyIG49Zy5jb25jYXQoaFtsXS5zcGxpdCgiIikpO0luW2xdPW47Zm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07Sm5bcV09PT12b2lkIDAmJihKbltxXT1wKX19fWZvcih2YXIgcj1JbltmXSx0PUFycmF5KE1hdGguZmxvb3IoYi5sZW5ndGgvMykpLHU9cls2NF18fCIiLHY9MCx4PTA7djxiLmxlbmd0aC0yO3YrPTMpe3ZhciB5PWJbdl0sej1iW3YrMV0sQz1iW3YrMl0sCkQ9clt5Pj4yXSxJPXJbKHkmMyk8PDR8ej4+NF0sRz1yWyh6JjE1KTw8MnxDPj42XSxOPXJbQyY2M107dFt4KytdPSIiK0QrSStHK059dmFyIFM9MCxXPXU7c3dpdGNoKGIubGVuZ3RoLXYpe2Nhc2UgMjpTPWJbdisxXSxXPXJbKFMmMTUpPDwyXXx8dTtjYXNlIDE6dmFyIGVhPWJbdl07dFt4XT0iIityW2VhPj4yXStyWyhlYSYzKTw8NHxTPj40XStXK3V9cmV0dXJuIHQuam9pbigiIil9O3ZhciBMbj1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEucmVwbGFjZSgvXCsvZywiICIpKX07dmFyIE1uPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW15cXFxcLz8jXSopQCk/KFteXFxcXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXFxcLz8jXXwkKSk/KFtePyNdKyk/KD86XFw/KFteI10qKSk/KD86IyhbXFxzXFxTXSopKT8kIik7ZnVuY3Rpb24gTm4oYSxiLGMsZCl7Zm9yKHZhciBlPWIsZj1jLmxlbmd0aDsoZT1hLmluZGV4T2YoYyxlKSk+PTAmJmU8ZDspe3ZhciBnPWEuY2hhckNvZGVBdChlLTEpO2lmKGc9PTM4fHxnPT02Myl7dmFyIGg9YS5jaGFyQ29kZUF0KGUrZik7aWYoIWh8fGg9PTYxfHxoPT0zOHx8aD09MzUpcmV0dXJuIGV9ZSs9ZisxfXJldHVybi0xfXZhciBPbj0vI3wkLzsKZnVuY3Rpb24gUG4oYSxiKXt2YXIgYz1hLnNlYXJjaChPbiksZD1ObihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gTG4oYS5zbGljZShkLGUhPT0tMT9lOjApKX12YXIgUW49L1s/Jl0oJHwjKS87CmZ1bmN0aW9uIFJuKGEsYixjKXtmb3IodmFyIGQsZT1hLnNlYXJjaChPbiksZj0wLGcsaD1bXTsoZz1ObihhLGYsYixlKSk+PTA7KWgucHVzaChhLnN1YnN0cmluZyhmLGcpKSxmPU1hdGgubWluKGEuaW5kZXhPZigiJiIsZykrMXx8ZSxlKTtoLnB1c2goYS5zbGljZShmKSk7ZD1oLmpvaW4oIiIpLnJlcGxhY2UoUW4sIiQxIik7dmFyIGwsbj1jIT1udWxsPyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKToiIjt2YXIgcD1iK247aWYocCl7dmFyIHEscj1kLmluZGV4T2YoIiMiKTtyPDAmJihyPWQubGVuZ3RoKTt2YXIgdD1kLmluZGV4T2YoIj8iKSx1O3Q8MHx8dD5yPyh0PXIsdT0iIik6dT1kLnN1YnN0cmluZyh0KzEscik7cT1bZC5zbGljZSgwLHQpLHUsZC5zbGljZShyKV07dmFyIHY9cVsxXTtxWzFdPXA/dj92KyImIitwOnA6djtsPXFbMF0rKHFbMV0/Ij8iK3FbMV06IiIpK3FbMl19ZWxzZSBsPWQ7cmV0dXJuIGx9O2Z1bmN0aW9uIFNuKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9UG4oYywiZm10Iik7aWYoZCl7dmFyIG49UG4oYywicmFuZG9tIikscD1QbihjLCJsYWJlbCIpfHwiIjtpZighbilyZXR1cm47dmFyIHE9S24oTG4ocCkrIjoiK0xuKG4pKTtpZighb24oYSxxLGQpKXJldHVybn1sJiZOdW1iZXIobCkhPT00PyhjPVJuKGMsInJmbXQiLGwpLGM9Um4oYywiZm10Iiw0KSk6bHx8KGM9Um4oYywiZm10Iiw0KSk7VWMoYyxmdW5jdGlvbigpe2c9PW51bGx8fFRuKGcpO2g9PW51bGx8fFVuKGgsYyk7YS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzJiZkJiYoYS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzPW51bGwsZCgpKX0sZnVuY3Rpb24oKXtnPT1udWxsfHxUbihnKTtoPT1udWxsfHxVbihoLGMpO2U9PW51bGx8fGUoKX0sZixiLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXS5wYXJlbnRFbGVtZW50fHx2b2lkIDApO3JldHVybiBjfTtmdW5jdGlvbiBWbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwxLGJbMF0pO2lkLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gV24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gamQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBYbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwzLGJbMF0pO1pjLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWW4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gbWQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBabihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSw1LGJbMF0pO1VjLmFwcGx5KG51bGwsdyhiKSl9CmZ1bmN0aW9uICRuKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtiWzBdJiZrbi5yZWdpc3RlcihhLDIsYlswXSk7WGMuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBhbyhhKXt2YXIgYj1Tbi5hcHBseShudWxsLHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSk7YiYma24ucmVnaXN0ZXIoYSw0LGIpO3JldHVybiBifTt2YXIgYm89e01hOntSZTowLFVlOjEsTGg6Mn19O2JvLk1hW2JvLk1hLlJlXT0iRlVMTF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLlVlXT0iTElNSVRFRF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLkxoXT0iTk9fVFJBTlNNSVNTSU9OIjt2YXIgY289e2lhOntnZDowLGNiOjEseGQ6MixaYjozfX07Y28uaWFbY28uaWEuZ2RdPSJOT19RVUVVRSI7Y28uaWFbY28uaWEuY2JdPSJBRFMiO2NvLmlhW2NvLmlhLnhkXT0iQU5BTFlUSUNTIjtjby5pYVtjby5pYS5aYl09Ik1PTklUT1JJTkciO3ZhciBlbz1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuY29uc2VudFR5cGVzPWJ9O2VvLnByb3RvdHlwZS5pc0NvbnNlbnRHcmFudGVkPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuSCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbnNlbnRUeXBlcy5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gQmwoYSl9KTtjYXNlIDE6cmV0dXJuIHRoaXMuY29uc2VudFR5cGVzLnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIEJsKGEpfSk7ZGVmYXVsdDp5Yyh0aGlzLkgsImNvbnNlbnRzUmVxdWlyZWQgaGFkIGFuIHVua25vd24gdHlwZSIpfX07CnZhciBmbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT17fTt0aGlzLkg9KGFbY28uaWEuZ2RdPWJvLk1hLlJlLGFbY28uaWEuY2JdPWJvLk1hLlJlLGFbY28uaWEueGRdPWJvLk1hLlJlLGFbY28uaWEuWmJdPWJvLk1hLlJlLGEpO3ZhciBiPXt9O3RoaXMuSz0oYltjby5pYS5nZF09bmV3IGVvKDAsW10pLGJbY28uaWEuY2JdPW5ldyBlbygwLFsiYWRfc3RvcmFnZSJdKSxiW2NvLmlhLnhkXT1uZXcgZW8oMCxbImFuYWx5dGljc19zdG9yYWdlIl0pLGJbY28uaWEuWmJdPW5ldyBlbygxLFsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl0pLGIpfTt2YXIgaG89ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0aGlzLnR5cGU9YTt0aGlzLkg9W107RmwoZm8uS1thXS5jb25zZW50VHlwZXMsZnVuY3Rpb24oKXtnbyhiKXx8Yi5mbHVzaCgpfSl9O2hvLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgYT1tKHRoaXMuSCksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpe3ZhciBjPWIudmFsdWU7YygpfXRoaXMuSD1bXX07dmFyIGdvPWZ1bmN0aW9uKGEpe3JldHVybiBmby5IW2EudHlwZV09PT1iby5NYS5MaCYmIWZvLktbYS50eXBlXS5pc0NvbnNlbnRHcmFudGVkKCl9LGlvPWZ1bmN0aW9uKGEsYil7Z28oYSk/YS5ILnB1c2goYik6YigpfSxqbz1mdW5jdGlvbigpe3RoaXMuSD1uZXcgTWFwfSxsbz1mdW5jdGlvbihhKXt2YXIgYj1rbztiLkguaGFzKGEpfHxiLkguc2V0KGEsbmV3IGhvKGEpKTtyZXR1cm4gYi5ILmdldChhKX07am8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5ILmNsZWFyKCl9Owp2YXIga289bmV3IGpvO3ZhciBtbz1bImZpbiIsImZzIiwibWNjIiwibmNjIl0sbm89ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwPyExOmE7dmFyIGI9Um0oKSxjPVFtLkssZD1iLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gY1tlXSE9PXZvaWQgMCYmKGF8fCFtby5pbmNsdWRlcyhlKSl9KTtUbShkKTtyZXR1cm4gZC5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9Y1tlXTt0eXBlb2YgZj09PSJmdW5jdGlvbiImJihmPWYoKSk7cmV0dXJuIGY/IiYiK2UrIj0iK2Y6IiJ9KS5qb2luKCIiKSsiJno9MCJ9LG9vPWZ1bmN0aW9uKGEpe3ZhciBiPSJodHRwczovLyIrRSgyMSksYz0iL3RkP2lkPSIrRSg1KTtyZXR1cm4iIitmayhiKStjK2F9LHBvPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITE6YjtjPWM9PT12b2lkIDA/ITE6YztpZigkaygyNikmJmZuLksmJkUoNSkmJihjfHwhZ24oKSkpe3ZhciBkPWxvKGNvLmlhLlpiKTtpZihnbyhkKSlhLkh8fChhLkg9ITAsaW8oZCxmdW5jdGlvbigpe3JldHVybiBwbyhhKX0pKTsKZWxzZXtiJiZVbSgiZmluIiwiMSIpO3ZhciBlPW5vKGIpLGY9b28oZSksZz17ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjYxfTtiP1luKGcsZix2b2lkIDAse1FnOiEwfSx2b2lkIDAsZnVuY3Rpb24oKXtaYyhmKyImaW1nPTEiKX0pOlhuKGcsZik7YS5IPSExO3FvKGUpfX19LHFvPWZ1bmN0aW9uKGEpe2lmKEtjJiYoU2IoS2MsImh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tLyIpfHxJZig0NykpJiYhKGEuaW5kZXhPZigiJmNzcD0iKTwwJiZhLmluZGV4T2YoIiZtZGU9Iik8MCkpe3ZhciBiO2E6e3RyeXtpZihLYyl7Yj1uZXcgVVJMKEtjKTticmVhayBhfX1jYXRjaChjKXt9Yj12b2lkIDB9YiYmVWMoIiIrS2MrKEtjLmluZGV4T2YoIj8iKT49MD8iJiI6Ij8iKSsiaXNfdGQ9MSIrYSl9fSxybz1mdW5jdGlvbihhKXtSbSgpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIVBtW2JdfSkmJnBvKGEsITApfSxzbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0hMTsKJGMoQSwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7cm8oYSl9KX07ZnVuY3Rpb24gdG8oYSxiKXtwbyhzbyxhPT09dm9pZCAwPyExOmEsYj09PXZvaWQgMD8hMTpiKX07dmFyIHVvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIiwiYWRfcGVyc29uYWxpemF0aW9uIl0sdm89W0YuRC5kZCxGLkQueWMsRi5ELlFmLEYuRC5LYixGLkQueGMsRi5ELmZiLEYuRC5EYixGLkQubmIsRi5ELkxiLEYuRC52Y10seW89ZnVuY3Rpb24oKXt2YXIgYT13bzshYS5SJiZhLkgmJih1by5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tiXSE9PTF9KXx8eG8oIm1iYyIpKTthLlI9ITB9LHhvPWZ1bmN0aW9uKGEpe2ZuLksmJihVbShhLCIxIiksdG8oKSl9LHpvPWZ1bmN0aW9uKGEsYil7dmFyIGM9d287aWYoIWMuTltiXSYmKGMuTltiXT0hMCxjLktbYl0pKWZvcih2YXIgZD1tKHZvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlpZihPKGEsZS52YWx1ZSkpe3hvKCJlcmMiKTticmVha319LHdvPW5ldyBmdW5jdGlvbigpe3RoaXMuUj10aGlzLkg9ITE7dGhpcy5OPXt9O3RoaXMuSz17fX07dmFyIEFvPXt9LEJvPU9iamVjdC5mcmVlemUoKEFvW0YuRC5SY109MSxBb1tGLkQuaGhdPTEsQW9bRi5ELnNpXT0xLEFvW0YuRC5TY109MSxBb1tGLkQuSGFdPTEsQW9bRi5ELkxiXT0xLEFvW0YuRC5DYl09MSxBb1tGLkQuVGJdPTEsQW9bRi5ELklkXT0xLEFvW0YuRC52Y109MSxBb1tGLkQubmJdPTEsQW9bRi5ELkpkXT0xLEFvW0YuRC5IZV09MSxBb1tGLkQuT2FdPTEsQW9bRi5ELlFwXT0xLEFvW0YuRC5QZl09MSxBb1tGLkQuRmldPTEsQW9bRi5ELnBoXT0xLEFvW0YuRC5XY109MSxBb1tGLkQuUWZdPTEsQW9bRi5ELmFxXT0xLEFvW0YuRC5UYV09MSxBb1tGLkQuVWZdPTEsQW9bRi5ELmZxXT0xLEFvW0YuRC5PZF09MSxBb1tGLkQuUmxdPTEsQW9bRi5ELlljXT0xLEFvW0YuRC5aY109MSxBb1tGLkQuRGJdPTEsQW9bRi5ELmFtXT0xLEFvW0YuRC5XYl09MSxBb1tGLkQuVGRdPTEsQW9bRi5ELlhiXT0xLEFvW0YuRC5PaV09MSxBb1tGLkQuZGRdPTEsQW9bRi5ELnloXT0xLEFvW0YuRC5QaV09CjEsQW9bRi5ELlVkXT0xLEFvW0YuRC55Y109MSxBb1tGLkQuVmRdPTEsQW9bRi5ELmxtXT0xLEFvW0YuRC5XZF09MSxBb1tGLkQuZWRdPTEsQW9bRi5ELm9qXT0xLEFvKSk7T2JqZWN0LmZyZWV6ZShbRi5ELnphLEYuRC5VYSxGLkQuTWIsRi5ELnRiLEYuRC5OaSxGLkQuZmIsRi5ELkdpLEYuRC5NcF0pOwp2YXIgQ289e30sRG89T2JqZWN0LmZyZWV6ZSgoQ29bRi5ELnFwXT0xLENvW0YuRC5ycF09MSxDb1tGLkQudHBdPTEsQ29bRi5ELnVwXT0xLENvW0YuRC52cF09MSxDb1tGLkQuenBdPTEsQ29bRi5ELkFwXT0xLENvW0YuRC5CcF09MSxDb1tGLkQuRHBdPTEsQ29bRi5ELnlmXT0xLENvKSksRW89e30sRm89T2JqZWN0LmZyZWV6ZSgoRW9bRi5ELnZsXT0xLEVvW0YuRC53bF09MSxFb1tGLkQueGVdPTEsRW9bRi5ELnllXT0xLEVvW0YuRC54bF09MSxFb1tGLkQuQWRdPTEsRW9bRi5ELnplXT0xLEVvW0YuRC5vY109MSxFb1tGLkQuUWNdPTEsRW9bRi5ELnFjXT0xLEVvW0YuRC5JYl09MSxFb1tGLkQuQWVdPTEsRW9bRi5ELnJjXT0xLEVvW0YuRC55bF09MSxFbykpLEdvPU9iamVjdC5mcmVlemUoW0YuRC5SYyxGLkQuU2MsRi5ELkpkLEYuRC5RZixGLkQuV2YsRi5ELlRkLEYuRC5PaSxGLkQuVmRdKSxIbz1PYmplY3QuZnJlZXplKFtdLmNvbmNhdCh3KEdvKSkpLElvPU9iamVjdC5mcmVlemUoW0YuRC5DYiwKRi5ELnBoLEYuRC55aCxGLkQuUGksRi5ELm5oXSksSm89T2JqZWN0LmZyZWV6ZShbXS5jb25jYXQodyhJbykpKSxLbz17fSxMbz0oS29bRi5ELmthXT0iMSIsS29bRi5ELnJhXT0iMiIsS29bRi5ELm1hXT0iMyIsS29bRi5ELlhhXT0iNCIsS28pLE1vPXt9LE5vPU9iamVjdC5mcmVlemUoKE1vLnNlYXJjaD0icyIsTW8ueW91dHViZT0ieSIsTW8ucGxheXN0b3JlPSJwIixNby5zaG9wcGluZz0iaCIsTW8uYWRzPSJhIixNby5tYXBzPSJtIixNbykpO2Z1bmN0aW9uIE9vKGEpe3JldHVybiB0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbD97fTphfWZ1bmN0aW9uIFBvKGEpe3JldHVybiBhPT09dm9pZCAwfHxhPT09bnVsbD8iIjp0eXBlb2YgYT09PSJvYmplY3QiP2EudG9TdHJpbmcoKTpTdHJpbmcoYSl9ZnVuY3Rpb24gUW8oYSl7aWYoYSE9PXZvaWQgMCYmYSE9PW51bGwpcmV0dXJuIFBvKGEpfTt2YXIgUm89W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV07ZnVuY3Rpb24gU28oYSl7Zm9yKHZhciBiPW0oYVtGLkQubmNdfHxbIiJdKSxjPWIubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyZWdpb246dm9pZCAwfSxjPWIubmV4dCgpKWQucmVnaW9uPWMudmFsdWUsR2IoYSxmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oZixnKXtpZihmIT09Ri5ELm5jKXt2YXIgaD1QbyhnKSxsPWUucmVnaW9uLG49eW0oKSxwPXptKCk7eWw9ITA7eGwmJnNiKCJUQUdHSU5HIiwyMCk7dGwoKS5kZWNsYXJlKGYsaCxsLG4scCl9fX0oZCkpfQpmdW5jdGlvbiBUbyhhKXt5bygpO3ZhciBiPWFsKDE3LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxjPWFsKDE2LGZ1bmN0aW9uKCl7cmV0dXJuITF9KTshYiYmYyYmeG8oImNyYyIpO1prKDE3LCEwKTt2YXIgZD1hW0YuRC5ZZ107ZCYmUCg0MSk7dmFyIGU9YVtGLkQubmNdO2U/UCg0MCk6ZT1bIiJdO2Zvcih2YXIgZj1tKGUpLGc9Zi5uZXh0KCksaD17fTshZy5kb25lO2g9e0JvOnZvaWQgMH0sZz1mLm5leHQoKSloLkJvPWcudmFsdWUsR2IoYSxmdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obixwKXtpZihuIT09Ri5ELm5jJiZuIT09Ri5ELllnKXt2YXIgcT1RbyhwKSxyPWwuQm8sdD1OdW1iZXIoZCksdT15bSgpLHY9em0oKTt0PXQ9PT12b2lkIDA/MDp0O3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkuZGVmYXVsdChuLHEscix1LHYsdCxBbCl9fX0oaCkpfQpmdW5jdGlvbiBVbyhhKXtBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM9ITA7dmFyIGI9YVtGLkQubmNdO2lmKGIpe3ZhciBjPUFycmF5LmlzQXJyYXkoYik/YjpbYl07aWYoIWMuaW5jbHVkZXMoem0oKSkmJiFjLmluY2x1ZGVzKHltKCkpKXJldHVybn1HYihhLGZ1bmN0aW9uKGQsZSl7c3dpdGNoKGQpe2Nhc2UgImFkX3N0b3JhZ2UiOmNhc2UgImFuYWx5dGljc19zdG9yYWdlIjpjYXNlICJhZF91c2VyX2RhdGEiOmNhc2UgImFkX3BlcnNvbmFsaXphdGlvbiI6YnJlYWs7ZGVmYXVsdDpyZXR1cm59QWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPSEwO0FsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2RdPWU9PT0iZ3JhbnRlZCI/MzoyfSl9CmZ1bmN0aW9uIFZvKGEsYil7eW8oKTtaaygxNiwhMCk7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPVBvKGQpO3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkudXBkYXRlKGMsZSxBbCl9KTtHbChiLmV2ZW50SWQsYi5wcmlvcml0eUlkKX1mdW5jdGlvbiBXbyhhKXthLmhhc093blByb3BlcnR5KCJhbGwiKSYmKEFsLnNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM9ITAsR2IoTm8sZnVuY3Rpb24oYil7QWwuY29yZVBsYXRmb3JtU2VydmljZXNbYl09YS5hbGw9PT0iZ3JhbnRlZCI7QWwudXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzPSEwfSkpO0diKGEsZnVuY3Rpb24oYixjKXtiIT09ImFsbCImJihBbC5jb3JlUGxhdGZvcm1TZXJ2aWNlc1tiXT1jPT09ImdyYW50ZWQiLEFsLnVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlcz0hMCl9KX0KZnVuY3Rpb24gWG8oYSl7QXJyYXkuaXNBcnJheShhKXx8KGE9W2FdKTtyZXR1cm4gYS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiBZbygpe3ZhciBhPVpvO0FycmF5LmlzQXJyYXkoYSl8fChhPVthXSk7cmV0dXJuIGEuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiAkbyhhLGIpe0ZsKGEsYil9ZnVuY3Rpb24gYXAoYSxiKXtJbChhLGIpfWZ1bmN0aW9uIGJwKGEsYil7SGwoYSxiKX1mdW5jdGlvbiBjcCgpe3ZhciBhPVtGLkQua2EsRi5ELlhhLEYuRC5tYV07dGwoKS53YWl0Rm9yVXBkYXRlKGEsNTAwLEFsKX1mdW5jdGlvbiBkcChhKXtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTt0bCgpLmNsZWFyVGltZW91dChkLHZvaWQgMCxBbCl9R2woKX0KZnVuY3Rpb24gZXAoYSl7Zm9yKHZhciBiPXt9LGM9bShhLnNwbGl0KCJ8IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWJbZC52YWx1ZV09ITA7cmV0dXJuIGJ9O3ZhciBmcD1PYmplY3QuZnJlZXplKFtGLkQua2EsRi5ELm1hXSk7CnZhciBocD1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtiW2dwW2VdfHxlXT1hW2VdfXJldHVybiBifSxpcD1mdW5jdGlvbihhKXtyZXR1cm4hIVEoYSxILkoudmQpJiZSKGEsRi5ELlBkKT09PSIxIiYmUihhLEYuRC5IZCkhPT0iMSImJlhvKGZwKX0sanA9ZnVuY3Rpb24oYSxiKXtpZighaXAoYSkpcmV0dXJuITE7dmFyIGM9UWMoKXx8T2MoKT81ODo1NyxkPU5tKGMsaHAoYikpO1RsKGQsYSxjKTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKyImZm10PTgiLHZvaWQgMCx7UWc6ITAsbWV0aG9kOiJHRVQifSxmdW5jdGlvbigpe30sZnVuY3Rpb24oKXtaYyhkKyImZm10PTMiKX0pO3JldHVybiEwfSxrcD17fSxncD0oa3AuZGw9InVybCIsa3AuZHI9CiJyZWYiLGtwLnVpZD0idXNlcklkIixrcCk7dmFyIGxwPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZD1mdW5jdGlvbihlKXtiW2VdIT1udWxsJiZiW2VdIT09IiImJihjW2VdPWJbZV0pfTtNKDQ3NCkmJmQoIl9nc2lkIik7UihhLEYuRC5IZCkhPT0iMSImJihkKCJnY2xpZCIpLGQoImdjbHNyYyIpLGQoImF1aWQiKSxkKCJkY2xpZCIpKTtpZihPYmplY3Qua2V5cyhjKS5sZW5ndGgpcmV0dXJuIGQoImd0bSIpLGN9Owp2YXIgbXA9e30sbnA9KG1wW0YuRC5zYV09ImdjdSIsbXBbRi5ELlNiXT0iZ2NsZ2IiLG1wW0YuRC5sYl09ImdjbGF3IixtcFtGLkQuemZdPSJnYWRfc291cmNlIixtcFtGLkQuQWZdPSJnYWRfc291cmNlX3NyYyIsbXBbRi5ELkRkXT0iZ2NsaWQiLG1wW0YuRC5BbF09ImdjbHNyYyIsbXBbRi5ELkJmXT0iZ2JyYWlkIixtcFtGLkQuRWVdPSJ3YnJhaWQiLG1wW0YuRC5FZF09ImF1aWQiLG1wW0YuRC5CbF09ImFlIixtcFtGLkQuSGFdPW51bGwsbXBbRi5ELkRsXT0icm5kIixtcFtGLkQuSGRdPSJuY2wiLG1wW0YuRC5OZl09ImdjbGRjIixtcFtGLkQuS2RdPSJkY2xpZCIsbXBbRi5ELlZjXT0iZWRpZCIsbXBbRi5ELlViXT0iZW4iLG1wW0YuRC5LZV09ImdkcHIiLG1wW0YuRC5YY109ImdkaWQiLG1wW0YuRC5UYV09bnVsbCxtcFtGLkQuTGVdPSJfbmciLG1wW0YuRC50aF09ImdwcF9zaWQiLG1wW0YuRC51aF09ImdwcCIsbXBbRi5ELlZmXT0iX3R1IixtcFtGLkQuUWxdPSJndG1fdXAiLG1wW0YuRC5NZV09CiJmcm0iLG1wW0YuRC5QZF09ImxwcyIsbXBbRi5ELkxpXT0iZGlkIixtcFtGLkQuVWxdPSJuYXZ0IixtcFtGLkQuemFdPSJkbCIsbXBbRi5ELlVhXT0iZHIiLG1wW0YuRC5NYl09ImR0IixtcFtGLkQuYm1dPSJzY3JzcmMiLG1wW0YuRC5aZl09ImdhX3VpZCIsbXBbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IixtcFtGLkQuUWldPSJ0ZXN0b25seSIsbXBbRi5ELnJxXT0idV90eiIsbXBbRi5ELlBlXT0idG9wIixtcFtGLkQuUWVdPSJ0aWQiLG1wW0YuRC5mYl09InVpZCIsbXBbRi5ELmtnXT0idXNfcHJpdmFjeSIsbXBbRi5ELmVkXT1udWxsLG1wW0YuRC5kZV09Im5wYSIsbXApO2Z1bmN0aW9uIG9wKGEsYil7aWYoYiE9bnVsbCYmYiE9PSIiKXt2YXIgYz1iPT09ITA/IjEiOmI9PT0hMT8iMCI6ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSk7aWYoU2IoYSwiXyYiKSlyZXR1cm57a2V5OmEuc3Vic3RyaW5nKDIpLHZhbHVlOmN9O3ZhciBkPW5wW2FdO2lmKGQhPT1udWxsKXJldHVybiBkP3trZXk6ZCx2YWx1ZTpjfTp7a2V5OkFiKGIpPyJlcG4uIithOiJlcC4iK2EsdmFsdWU6Y319fTtmdW5jdGlvbiBwcChhKXthPWE9PT12b2lkIDA/W106YTtyZXR1cm4geGooYSkuam9pbigifiIpfTtmdW5jdGlvbiBxcCgpe3ZhciBhPVtdLGI9TnVtYmVyKCcnKXx8MCxjPU51bWJlcignJyl8fDA7Y3x8KGM9Yi8xMDApO3ZhciBkPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyMjgsc3R1ZHlJZDoyMjgsZXhwZXJpbWVudElkOjEwNTE3NzE1NCxjb250cm9sSWQ6MTA1MTc3MTU1LGNvbnRyb2xJZDI6MTA1MjU1MjQ1LHByb2JhYmlsaXR5OmMsYWN0aXZlOmQsWmU6MH0pO3ZhciBlPU51bWJlcignJyl8fAowLGY9TnVtYmVyKCcnKXx8MDtmfHwoZj1lLzEwMCk7dmFyIGc9ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjIzNSxzdHVkeUlkOjIzNSxleHBlcmltZW50SWQ6MTA1MzU3MTUwLGNvbnRyb2xJZDoxMDUzNTcxNTEsY29udHJvbElkMjowLHByb2JhYmlsaXR5OmYsYWN0aXZlOmcsWmU6MX0pO3ZhciBoPU51bWJlcignJyl8fDAsbD1OdW1iZXIoJycpfHwKMDtsfHwobD1oLzEwMCk7dmFyIG49ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjI2NixzdHVkeUlkOjI2NixleHBlcmltZW50SWQ6MTE1NzE4NTI5LGNvbnRyb2xJZDoxMTU3MTg1MzAsY29udHJvbElkMjoxMTU3MTg1MzEscHJvYmFiaWxpdHk6bCxhY3RpdmU6bixaZTowfSk7dmFyIHA9TnVtYmVyKCcnKXx8MCxxPU51bWJlcignJyl8fAowO3F8fChxPXAvMTAwKTt2YXIgcj1mdW5jdGlvbigpe3ZhciB0PSExO3JldHVybiB0fSgpO2EucHVzaCh7dWs6MjY3LHN0dWR5SWQ6MjY3LGV4cGVyaW1lbnRJZDoxMTU3MTg1MjYsY29udHJvbElkOjExNTcxODUyNyxjb250cm9sSWQyOjExNTcxODUyOCxwcm9iYWJpbGl0eTpxLGFjdGl2ZTpyLFplOjB9KTtyZXR1cm4gYX07dmFyIHJwPWZ1bmN0aW9uKCl7dGhpcy5LPXt9O3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5SPW5ldyBTZXR9LHhwPWZ1bmN0aW9uKGEsYil7dmFyIGM9YixkPWI9YS5OW2Muc3R1ZHlJZF0/bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHthY3RpdmU6ITB9KTpjLGU9Rmk7ZC5jb250cm9sSWQyJiZkLnByb2JhYmlsaXR5PD0uMjV8fChkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZCx7Y29udHJvbElkMjowfSkpO2Uuc3R1ZGllc1tkLnN0dWR5SWRdPWQ7Yi5mb2N1c2VkJiYoYS5LW2Iuc3R1ZHlJZF09ITApO2lmKGIuWmU9PT0xKXt2YXIgZj1iLnN0dWR5SWQ7c3AoYSx0cCgpLGYpO3VwKGEsZik/dGoodWosZik6dnAoYSxmKT91ai5LW2ZdPSEwOndwKGEsZikmJih1ai5IW2ZdPSEwKX1lbHNlIGlmKGIuWmU9PT0wKXt2YXIgZz1iLnN0dWR5SWQ7c3AoYSxhLkgsZyk7dXAoYSxnKT90aih1aixnKTp2cChhLGcpP3VqLktbZ109ITA6d3AoYSxnKSYmCih1ai5IW2ddPSEwKX19LHNwPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPUZpO2lmKGUuc3R1ZGllc1tjXSl7dmFyIGY9ZS5zdHVkaWVzW2NdLGc9Zi5leHBlcmltZW50SWQsaD1mLnByb2JhYmlsaXR5O2lmKCEoYi5zdHVkaWVzfHx7fSlbY10pe3ZhciBsPWIuc3R1ZGllc3x8e307bFtjXT0hMDtiLnN0dWRpZXM9bDtpZighZS5zdHVkaWVzW2NdLmFjdGl2ZSlpZihlLnN0dWRpZXNbY10ucHJvYmFiaWxpdHk+LjUpSWkoYixnLGMpO2Vsc2UgaWYoIShoPD0wfHxoPjEpKXt2YXIgbj12b2lkIDA7aWYoZCl7dmFyIHA9Q2koZCsifiIrYyk7aWYocD09PSJlMiIpbj0tMTtlbHNle2Zvcih2YXIgcT1uZXcgVWludDhBcnJheShwKSxyPUJpZ0ludCgwKSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpcj1yPDxCaWdJbnQoOCl8QmlnSW50KHUudmFsdWUpO249TnVtYmVyKHIlQmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSl9fUdpLnNrKGIsYyxuKX19fWlmKCFhLktbY10pe3ZhciB2PQpOaShiLGMpO3YmJndqLkguSy5hZGQodil9fSx0cD1mdW5jdGlvbigpe3JldHVybiBvbShqbS5iYS5UcSx7fSl9LHVwPWZ1bmN0aW9uKGEsYil7dmFyIGM9dHAoKTtyZXR1cm4gS2koYyxiKXx8S2koYS5ILGIpfSx2cD1mdW5jdGlvbihhLGIpe3ZhciBjPXRwKCk7cmV0dXJuIExpKGMsYil8fExpKGEuSCxiKX0sd3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz10cCgpO3JldHVybiBNaShjLGIpfHxNaShhLkgsYil9LHlwOwpmdW5jdGlvbiB6cCgpe2lmKCF5cCl7dmFyIGE9eXA9bmV3IHJwLGIsYyxkPSgoYj1BKT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaGFzaCl8fCIiO2lmKGRbMF09PT0iIyImJmRbMV09PT0iXyImJmRbMl09PT0idCImJmRbM109PT0iZSImJmRbNF09PT0iPSIpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO2lmKGUpZm9yKHZhciBmPW0oZS5zcGxpdCgifiIpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9TnVtYmVyKGcudmFsdWUpO2gmJihhLk5baF09ITAsdGoodWosaCkpfX1mb3IodmFyIGw9bShxcCgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl4cChhLG4udmFsdWUpO2Zvcih2YXIgcD1bXSxxPW0oTWYoNTYpfHxbXSkscj1xLm5leHQoKTshci5kb25lO3I9cS5uZXh0KCkpe3ZhciB0PXIudmFsdWUsdT17c3R1ZHlJZDp0WzFdLGFjdGl2ZTohIXRbMl0scHJvYmFiaWxpdHk6dFszXXx8MCxleHBlcmltZW50SWQ6dFs0XXx8CjAsY29udHJvbElkOnRbNV18fDAsY29udHJvbElkMjp0WzZdfHwwfSx2PTA7c3dpdGNoKHRbN10pe2Nhc2UgMjp2PTE7YnJlYWs7Y2FzZSAzOnY9MjticmVhaztjYXNlIDE6Y2FzZSA0OmNhc2UgNTpjYXNlIDA6dj0wfXZhciB4O2E6c3dpdGNoKHUuc3R1ZHlJZCl7Y2FzZSA1Njc6Y2FzZSA0NjI6eD0hMDticmVhayBhO2RlZmF1bHQ6eD0hMX12YXIgeT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHUse1plOnYsZm9jdXNlZDp4fSk7KHkuYWN0aXZlfHx5LnByb2JhYmlsaXR5Pi41JiZ5LmV4cGVyaW1lbnRJZHx8eS5leHBlcmltZW50SWQmJnkuY29udHJvbElkKSYmcC5wdXNoKHkpfWZvcih2YXIgej1tKHApLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXhwKGEsQy52YWx1ZSl9fQpmdW5jdGlvbiBBcChhLGIpe3pwKCk7dmFyIGM9eXA7c3AoYyx0cCgpLGEsYik7dXAoYyxhKT90aih1aixhKTp2cChjLGEpP3VqLktbYV09ITA6d3AoYyxhKSYmKHVqLkhbYV09ITApfWZ1bmN0aW9uIEJwKCl7enAoKTt2YXIgYT15cCxiPXVwKGEsNTY3KTtpZihhLktbNTY3XSl7dmFyIGMsZD10cCgpOyhjPU5pKGQsNTY3KXx8TmkoYS5ILDU2NykpJiZhLlIuYWRkKGMpfXJldHVybiBifWZ1bmN0aW9uIENwKGEpe3pwKCk7dmFyIGI9bmV3IFNldCh5cC5SKTtpZihhKWZvcih2YXIgYz1RKGEsSC5KLkNoKXx8W10sZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWIuYWRkKGUudmFsdWUpO3JldHVybiBwcChbXS5jb25jYXQodyhiKSkpfTtmdW5jdGlvbiBEcChhKXt2YXIgYj1hLmxvY2F0aW9uLmhyZWY7aWYoYT09PWEudG9wKXJldHVybnt1cmw6YixJczohMH07dmFyIGM9ITEsZD1hLmRvY3VtZW50O2QmJmQucmVmZXJyZXImJihiPWQucmVmZXJyZXIsYS5wYXJlbnQ9PT1hLnRvcCYmKGM9ITApKTt2YXIgZT1hLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztpZihlKXt2YXIgZj1lW2UubGVuZ3RoLTFdLGc7ZiYmKChnPWIpPT1udWxsP3ZvaWQgMDpnLmluZGV4T2YoZikpPT09LTEmJihjPSExLGI9Zil9cmV0dXJue3VybDpiLElzOmN9fWZ1bmN0aW9uIEVwKGEpe3RyeXt2YXIgYjtpZihiPSEhYSYmYS5sb2NhdGlvbi5ocmVmIT1udWxsKWE6e3RyeXtIbihhLmZvbyk7Yj0hMDticmVhayBhfWNhdGNoKGMpe31iPSExfXJldHVybiBifWNhdGNoKGMpe3JldHVybiExfX1mdW5jdGlvbiBGcCgpe2Zvcih2YXIgYT1BLGI9YTthJiZhIT09YS5wYXJlbnQ7KWE9YS5wYXJlbnQsRXAoYSkmJihiPWEpO3JldHVybiBifTt2YXIgR3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbigpe307Yy5wcm90b3R5cGU9YS5wcm90b3R5cGU7dmFyIGQ9bmV3IGM7YS5hcHBseShkLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIGR9LEhwPWZ1bmN0aW9uKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPW51bGw7YygpfX19O2Z1bmN0aW9uIElwKGEsYil7aWYoYSlmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihhW2NdLGMsYSl9O2Z1bmN0aW9uIEpwKGEpe3ZhciBiPWEuc3BsaXQoL1s/I10vKSxjPS9bP10vLnRlc3QoYSk/Ij8iK2JbMV06IiI7cmV0dXJue3prOmJbMF0scGFyYW1zOmMsZnJhZ21lbnQ6L1sjXS8udGVzdChhKT8iIyIrKGM/YlsyXTpiWzFdKToiIn19ZnVuY3Rpb24gS3AoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gamMoYVswXSk7Zm9yKHZhciBjPWFbMF0sZD0wO2Q8Yi5sZW5ndGg7ZCsrKWMrPWVuY29kZVVSSUNvbXBvbmVudChiW2RdKSthW2QrMV07cmV0dXJuIGpjKGMpfQpmdW5jdGlvbiBMcChhLGIsYyxkKXtmdW5jdGlvbiBlKGcsaCl7ZyE9bnVsbCYmKEFycmF5LmlzQXJyYXkoZyk/Zy5mb3JFYWNoKGZ1bmN0aW9uKGwpe3JldHVybiBlKGwsaCl9KTooYis9ZitlbmNvZGVVUklDb21wb25lbnQoaCkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChnKSxmPSImIikpfXZhciBmPWIubGVuZ3RoPyImIjoiPyI7ZC5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQ9T2JqZWN0LmVudHJpZXMoZCkpO0FycmF5LmlzQXJyYXkoZCk/ZC5mb3JFYWNoKGZ1bmN0aW9uKGcpe3JldHVybiBlKGdbMV0sZ1swXSl9KTpkLmZvckVhY2goZSk7cmV0dXJuIGpjKGErYitjKX1mdW5jdGlvbiBNcChhLGIpe3ZhciBjPUpwKGtjKGEpLnRvU3RyaW5nKCkpLGQ9Yy56ay5zbGljZSgtMSk9PT0iLyI/IiI6Ii8iLGU9Yy56aytkK2VuY29kZVVSSUNvbXBvbmVudChiKTtyZXR1cm4gamMoZStjLnBhcmFtcytjLmZyYWdtZW50KX07dmFyIE5wPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEsZD0wO2Q8NTA7KytkKXt2YXIgZTt0cnl7ZT0hKCFjLmZyYW1lc3x8IWMuZnJhbWVzW2JdKX1jYXRjaChoKXtlPSExfWlmKGUpcmV0dXJuIGM7dmFyIGY7YTp7dHJ5e3ZhciBnPWMucGFyZW50O2lmKGcmJmchPT1jKXtmPWc7YnJlYWsgYX19Y2F0Y2goaCl7fWY9bnVsbH1pZighKGM9ZikpYnJlYWt9cmV0dXJuIG51bGx9LE9wPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi50b3A9PWIpcmV0dXJuIDA7aWYoYT09PXZvaWQgMD8wOmEpe3ZhciBjPWIubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zO2lmKGMpcmV0dXJuIGNbYy5sZW5ndGgtMV09PWIubG9jYXRpb24ub3JpZ2luPzE6Mn1yZXR1cm4gRXAoYi50b3ApPzE6Mn0sUHA9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7cmV0dXJuIGEuY3JlYXRlRWxlbWVudCgiaW1nIil9O2Z1bmN0aW9uIFFwKGEpe2Zvcih2YXIgYj1bXSxjPUIuY29va2llLnNwbGl0KCI7IiksZD1uZXcgUmVnRXhwKCJeXFxzKiIrKGF8fCJfZ2FjIikrIl8oVUEtXFxkKy1cXGQrKT1cXHMqKC4rPylcXHMqJCIpLGU9MDtlPGMubGVuZ3RoO2UrKyl7dmFyIGY9Y1tlXS5tYXRjaChkKTtmJiZiLnB1c2goe3VkOmZbMV0sdmFsdWU6ZlsyXSx0aW1lc3RhbXA6TnVtYmVyKGZbMl0uc3BsaXQoIi4iKVsxXSl8fDB9KX1iLnNvcnQoZnVuY3Rpb24oZyxoKXtyZXR1cm4gaC50aW1lc3RhbXAtZy50aW1lc3RhbXB9KTtyZXR1cm4gYn0KZnVuY3Rpb24gUnAoYSxiKXt2YXIgYz1RcChhKSxkPXt9O2lmKCFjfHwhYy5sZW5ndGgpcmV0dXJuIGQ7Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV0udmFsdWUuc3BsaXQoIi4iKTtpZighKGZbMF0hPT0iMSJ8fGImJmYubGVuZ3RoPDN8fCFiJiZmLmxlbmd0aCE9PTMpJiZOdW1iZXIoZlsxXSkpe2RbY1tlXS51ZF18fChkW2NbZV0udWRdPVtdKTt2YXIgZz17dmVyc2lvbjpmWzBdLHRpbWVzdGFtcDpOdW1iZXIoZlsxXSkqMUUzLGdjbGlkOmZbMl19O2ImJmYubGVuZ3RoPjMmJihnLmxhYmVscz1mLnNsaWNlKDMpKTtkW2NbZV0udWRdLnB1c2goZyl9fXJldHVybiBkfTtmdW5jdGlvbiBTcChhKXtyZXR1cm4gYS5vcmlnaW4hPT0ibnVsbCJ9O3ZhciBUcD17fSxVcD0oVHAuaz17bmE6L15bXHctXSskL30sVHAuYj17bmE6L15bXHctXSskLyxuazohMH0sVHAuaT17bmE6L15bMS05XVxkKiQvfSxUcC5oPXtuYTovXlxkKyQvfSxUcC50PXtuYTovXlsxLTldXGQqJC99LFRwLmQ9e25hOi9eW0EtWmEtejAtOV8tXSskL30sVHAuaj17bmE6L15cZCskL30sVHAudT17bmE6L15bMS05XVxkKiQvfSxUcC5sPXtuYTovXlswMV0kL30sVHAubz17bmE6L15bMS05XVxkKiQvfSxUcC5nPXtuYTovXlswMV0kL30sVHAucz17bmE6L14uKyQvfSxUcC5tPXtuYTovXlswMV0kL30sVHApO3ZhciBWcD17fSxacD0oVnBbNV09e2ppOnsyOldwfSxaajoiMiIsUmg6WyJrIiwiaSIsImIiLCJ1Il19LFZwWzRdPXtqaTp7MjpXcCxHQ0w6WHB9LFpqOiIyIixSaDpbImsiLCJpIiwiYiIsIm0iXX0sVnBbMl09e2ppOntHUzI6V3AsR1MxOllwfSxaajoiR1MyIixSaDoic29ndGpsaGQiLnNwbGl0KCIiKX0sVnApO2Z1bmN0aW9uICRwKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXt2YXIgZT1hLnNwbGl0KCIuIilbMF07Yz09bnVsbHx8YyhlKTtpZihlKXt2YXIgZj1kLmppW2VdO2lmKGYpcmV0dXJuIGYoYSxiKX19fQpmdW5jdGlvbiBXcChhLGIpe3ZhciBjPWEuc3BsaXQoIi4iKTtpZihjLmxlbmd0aD09PTMpe3ZhciBkPWNbMl07aWYoZC5pbmRleE9mKCIkIik9PT0tMSYmZC5pbmRleE9mKCIlMjQiKSE9PS0xKXRyeXtkPWRlY29kZVVSSUNvbXBvbmVudChkKX1jYXRjaCh0KXt9dmFyIGU9e30sZj1acFtiXTtpZihmKXtmb3IodmFyIGc9Zi5SaCxoPW0oZC5zcGxpdCgiJCIpKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZSxwPW5bMF07aWYoZy5pbmRleE9mKHApIT09LTEpdHJ5e3ZhciBxPWRlY29kZVVSSUNvbXBvbmVudChuLnN1YnN0cmluZygxKSkscj1VcFtwXTtyJiYoci5uaz8oZVtwXT1lW3BdfHxbXSxlW3BdLnB1c2gocSkpOmVbcF09cSl9Y2F0Y2godCl7fX1yZXR1cm4gZX19fWZ1bmN0aW9uIGFxKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXJldHVybltkLlpqLGN8fCIxIixicShhLGIpXS5qb2luKCIuIil9CmZ1bmN0aW9uIGJxKGEsYil7dmFyIGM9WnBbYl07aWYoYyl7Zm9yKHZhciBkPVtdLGU9bShjLlJoKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPVVwW2ddO2lmKGgpe3ZhciBsPWFbZ107aWYobCE9PXZvaWQgMClpZihoLm5rJiZBcnJheS5pc0FycmF5KGwpKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKWQucHVzaChlbmNvZGVVUklDb21wb25lbnQoIiIrZytwLnZhbHVlKSk7ZWxzZSBkLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCIiK2crbCkpfX1yZXR1cm4gZC5qb2luKCIkIil9fWZ1bmN0aW9uIFhwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKTtiLnNoaWZ0KCk7dmFyIGM9Yi5zaGlmdCgpLGQ9Yi5zaGlmdCgpLGU9e307cmV0dXJuIGUuaz1kLGUuaT1jLGUuYj1iLGV9CmZ1bmN0aW9uIFlwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKS5zbGljZSgyKTtpZighKGIubGVuZ3RoPDV8fGIubGVuZ3RoPjcpKXt2YXIgYz17fTtyZXR1cm4gYy5zPWJbMF0sYy5vPWJbMV0sYy5nPWJbMl0sYy50PWJbM10sYy5qPWJbNF0sYy5sPWJbNV0sYy5oPWJbNl0sY319O2Z1bmN0aW9uIGNxKGEsYixjLGQpe3ZhciBlO3JldHVybihlPWRxKGZ1bmN0aW9uKGYpe3JldHVybiBmPT09YX0sYixjLGQpW2FdKSE9bnVsbD9lOltdfWZ1bmN0aW9uIGRxKGEsYixjLGQpe3ZhciBlO2lmKGVxKGQpKXtmb3IodmFyIGY9e30sZz1TdHJpbmcoYnx8ZnEoKSkuc3BsaXQoIjsiKSxoPTA7aDxnLmxlbmd0aDtoKyspe3ZhciBsPWdbaF0uc3BsaXQoIj0iKSxuPWxbMF0udHJpbSgpO2lmKG4mJmEobikpe3ZhciBwPWwuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtwJiZjJiYocD1kZWNvZGVVUklDb21wb25lbnQocCkpO3ZhciBxPXZvaWQgMCxyPXZvaWQgMDsoKHE9Zilbcj1uXXx8KHFbcl09W10pKS5wdXNoKHApfX1lPWZ9ZWxzZSBlPXt9O3JldHVybiBlfQpmdW5jdGlvbiBncShhLGIsYyxkLGUpe2lmKGVxKGUpKXt2YXIgZj1ocShhLGQsZSk7aWYoZi5sZW5ndGg9PT0xKXJldHVybiBmWzBdO2lmKGYubGVuZ3RoIT09MCl7Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLkpyfSxiKTtpZihmLmxlbmd0aD09PTEpcmV0dXJuIGZbMF07Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLldzfSxjKTtyZXR1cm4gZlswXX19fWZ1bmN0aW9uIGpxKGEsYixjLGQpe3ZhciBlPWZxKCksZj1BO1NwKGYpJiYoZi5kb2N1bWVudC5jb29raWU9YSk7dmFyIGc9ZnEoKTtyZXR1cm4gZSE9PWd8fGMhPT12b2lkIDAmJmNxKGIsZywhMSxkKS5pbmRleE9mKGMpPj0wfQpmdW5jdGlvbiBrcShhLGIsYyxkKXtmdW5jdGlvbiBlKHgseSx6KXtpZih6PT1udWxsKXJldHVybiBkZWxldGUgaFt5XSx4O2hbeV09ejtyZXR1cm4geCsiOyAiK3krIj0iK3p9ZnVuY3Rpb24gZih4LHkpe2lmKHk9PW51bGwpcmV0dXJuIHg7aFt5XT0hMDtyZXR1cm4geCsiOyAiK3l9aWYoIWVxKGMuTWMpKXJldHVybiAyO3ZhciBnO2I9PW51bGw/Zz1hKyI9ZGVsZXRlZDsgZXhwaXJlcz0iKyhuZXcgRGF0ZSgwKSkudG9VVENTdHJpbmcoKTooYy5lbmNvZGUmJihiPWVuY29kZVVSSUNvbXBvbmVudChiKSksYj1scShiKSxnPWErIj0iK2IpO3ZhciBoPXt9O2c9ZShnLCJwYXRoIixjLnBhdGgpO3ZhciBsO2MuZXhwaXJlcyBpbnN0YW5jZW9mIERhdGU/bD1jLmV4cGlyZXMudG9VVENTdHJpbmcoKTpjLmV4cGlyZXMhPW51bGwmJihsPSIiK2MuZXhwaXJlcyk7Zz1lKGcsImV4cGlyZXMiLGwpO2c9ZShnLCJtYXgtYWdlIixjLk9zKTtnPWUoZywic2FtZXNpdGUiLGMucnQpO2Muc2VjdXJlJiYKKGc9ZihnLCJzZWN1cmUiKSk7dmFyIG49Yy5kb21haW47aWYobiYmbi50b0xvd2VyQ2FzZSgpPT09ImF1dG8iKXtmb3IodmFyIHA9bXEoKSxxPXZvaWQgMCxyPSExLHQ9MDt0PHAubGVuZ3RoOysrdCl7dmFyIHU9cFt0XSE9PSJub25lIj9wW3RdOnZvaWQgMCx2PWUoZywiZG9tYWluIix1KTt2PWYodixjLmZsYWdzKTt0cnl7ZCYmZChhLGgpfWNhdGNoKHgpe3E9eDtjb250aW51ZX1yPSEwO2lmKCFucSh1LGMucGF0aCkmJmpxKHYsYSxiLGMuTWMpKXJldHVybiAwfWlmKHEmJiFyKXRocm93IHE7cmV0dXJuIDF9biYmbi50b0xvd2VyQ2FzZSgpIT09Im5vbmUiJiYoZz1lKGcsImRvbWFpbiIsbikpO2c9ZihnLGMuZmxhZ3MpO2QmJmQoYSxoKTtyZXR1cm4gbnEobixjLnBhdGgpPzE6anEoZyxhLGIsYy5NYyk/MDoxfWZ1bmN0aW9uIG9xKGEsYixjKXtjLnBhdGg9PW51bGwmJihjLnBhdGg9Ii8iKTtjLmRvbWFpbnx8KGMuZG9tYWluPSJhdXRvIik7cmV0dXJuIGtxKGEsYixjKX0KZnVuY3Rpb24gaXEoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPVtdLGYsZz0wO2c8YS5sZW5ndGg7ZysrKXt2YXIgaD1hW2ddLGw9YihoKTtsPT09Yz9kLnB1c2goaCk6Zj09PXZvaWQgMHx8bDxmPyhlPVtoXSxmPWwpOmw9PT1mJiZlLnB1c2goaCl9cmV0dXJuIGQubGVuZ3RoPjA/ZDplfWZ1bmN0aW9uIGhxKGEsYixjKXtmb3IodmFyIGQ9W10sZT1jcShhLHZvaWQgMCx2b2lkIDAsYyksZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1lW2ZdLnNwbGl0KCIuIiksaD1nLnNoaWZ0KCk7aWYoIWJ8fCFofHxiLmluZGV4T2YoaCkhPT0tMSl7dmFyIGw9Zy5zaGlmdCgpO2lmKGwpe3ZhciBuPWwuc3BsaXQoIi0iKTtkLnB1c2goe0JyOmVbZl0sQ3I6Zy5qb2luKCIuIiksSnI6TnVtYmVyKG5bMF0pfHwxLFdzOk51bWJlcihuWzFdKXx8MX0pfX19cmV0dXJuIGR9ZnVuY3Rpb24gbHEoYSl7YSYmYS5sZW5ndGg+MTIwMCYmKGE9YS5zdWJzdHJpbmcoMCwxMjAwKSk7cmV0dXJuIGF9CnZhciBwcT0vXih3d3dcLik/Z29vZ2xlKFwuY29tPyk/KFwuW2Etel17Mn0pPyQvLHFxPS8oXnxcLilkb3VibGVjbGlja1wubmV0JC9pO2Z1bmN0aW9uIG5xKGEsYil7cmV0dXJuIGEhPT12b2lkIDAmJihxcS50ZXN0KEEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWUpfHxiPT09Ii8iJiZwcS50ZXN0KGEpKX1mdW5jdGlvbiBycShhKXtpZighYSlyZXR1cm4gMTt2YXIgYj1hO1lmKDQpJiZhPT09Im5vbmUiJiYoYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTtiPWIuaW5kZXhPZigiLiIpPT09MD9iLnN1YnN0cmluZygxKTpiO3JldHVybiBiLnNwbGl0KCIuIikubGVuZ3RofWZ1bmN0aW9uIHNxKGEpe2lmKCFhfHxhPT09Ii8iKXJldHVybiAxO2FbMF0hPT0iLyImJihhPSIvIithKTthW2EubGVuZ3RoLTFdIT09Ii8iJiYoYSs9Ii8iKTtyZXR1cm4gYS5zcGxpdCgiLyIpLmxlbmd0aC0xfQpmdW5jdGlvbiB0cShhLGIpe3ZhciBjPSIiK3JxKGEpLGQ9c3EoYik7ZD4xJiYoYys9Ii0iK2QpO3JldHVybiBjfQp2YXIgZnE9ZnVuY3Rpb24oKXt2YXIgYT1BO3JldHVybiBTcChhKT9hLmRvY3VtZW50LmNvb2tpZToiIn0sZXE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJllmKDUpPyhBcnJheS5pc0FycmF5KGEpP2E6W2FdKS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gRGwoYikmJkJsKGIpfSk6ITB9LG1xPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7aWYoYi5sZW5ndGg9PT00KXt2YXIgYz1iW2IubGVuZ3RoLTFdO2lmKE51bWJlcihjKS50b1N0cmluZygpPT09YylyZXR1cm5bIm5vbmUiXX1mb3IodmFyIGQ9Yi5sZW5ndGgtMjtkPj0wO2QtLSlhLnB1c2goYi5zbGljZShkKS5qb2luKCIuIikpO3ZhciBlPUEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWU7cXEudGVzdChlKXx8cHEudGVzdChlKXx8YS5wdXNoKCJub25lIik7cmV0dXJuIGF9O2Z1bmN0aW9uIHVxKGEsYixjLGQpe3ZhciBlLGY9TnVtYmVyKGEucGQhPW51bGw/YS5wZDp2b2lkIDApO2YhPT0wJiYoZT1uZXcgRGF0ZSgoYnx8TmIoKSkrMUUzKihmfHw3Nzc2RTMpKSk7cmV0dXJue3BhdGg6YS5wYXRoLGRvbWFpbjphLmRvbWFpbixmbGFnczphLmZsYWdzLGVuY29kZTohIWMsZXhwaXJlczplLE1jOmR9fTt2YXIgdnE9bmV3IE1hcChbWzUsImFkX3N0b3JhZ2UiXSxbNCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXV0sWzIsImFuYWx5dGljc19zdG9yYWdlIl1dKTtmdW5jdGlvbiB3cShhLGIsYyl7aWYoWnBbYl0pe2Zvcih2YXIgZD1bXSxlPWNxKGEsdm9pZCAwLHZvaWQgMCx2cS5nZXQoYikpLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9JHAoZy52YWx1ZSxiLGMpO2gmJmQucHVzaCh4cShoKSl9cmV0dXJuIGR9fQpmdW5jdGlvbiB5cShhKXt2YXIgYj16cTtpZihacFsyXSl7Zm9yKHZhciBjPXt9LGQ9ZHEoYSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSksZT1PYmplY3Qua2V5cyhkKS5zb3J0KCksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9bShkW2hdKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9JHAobi52YWx1ZSwyLGIpO3AmJihjW2hdfHwoY1toXT1bXSksY1toXS5wdXNoKHhxKHApKSl9cmV0dXJuIGN9fWZ1bmN0aW9uIEFxKGEsYixjLGQsZSl7ZD1kfHx7fTt2YXIgZj10cShkLmRvbWFpbixkLnBhdGgpLGc9YXEoYixjLGYpO2lmKCFnKXJldHVybiAxO3ZhciBoPXVxKGQsZSx2b2lkIDAsdnEuZ2V0KGMpKTtyZXR1cm4gb3EoYSxnLGgpfWZ1bmN0aW9uIEJxKGEsYil7dmFyIGM9Yi5uYTtyZXR1cm4gdHlwZW9mIGM9PT0iZnVuY3Rpb24iP2MoYSk6Yy50ZXN0KGEpfQpmdW5jdGlvbiB4cShhKXtmb3IodmFyIGI9bShPYmplY3Qua2V5cyhhKSksYz1iLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17QWc6dm9pZCAwfSxjPWIubmV4dCgpKXt2YXIgZT1jLnZhbHVlLGY9YVtlXTtkLkFnPVVwW2VdO2QuQWc/ZC5BZy5uaz9hW2VdPUFycmF5LmlzQXJyYXkoZik/Zi5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIGZ1bmN0aW9uKGgpe3JldHVybiBCcShoLGcuQWcpfX0oZCkpOnZvaWQgMDp0eXBlb2YgZj09PSJzdHJpbmciJiZCcShmLGQuQWcpfHwoYVtlXT12b2lkIDApOmFbZV09dm9pZCAwfXJldHVybiBhfTt2YXIgQ3E7ZnVuY3Rpb24gRHEoKXtmdW5jdGlvbiBhKGcpe2MoZy50YXJnZXR8fGcuc3JjRWxlbWVudHx8e30pfWZ1bmN0aW9uIGIoZyl7ZChnLnRhcmdldHx8Zy5zcmNFbGVtZW50fHx7fSl9dmFyIGM9RXEsZD1GcSxlPUdxKCk7aWYoIWUuaW5pdCl7JGMoQiwibW91c2Vkb3duIixhKTskYyhCLCJrZXl1cCIsYSk7JGMoQiwic3VibWl0IixiKTt2YXIgZj1IVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdDtIVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdD1mdW5jdGlvbigpe2QodGhpcyk7Zi5jYWxsKHRoaXMpfTtlLmluaXQ9ITB9fWZ1bmN0aW9uIEhxKGEsYixjLGQsZSl7dmFyIGY9e2NhbGxiYWNrOmEsZG9tYWluczpiLGZyYWdtZW50OmM9PT0yLHBsYWNlbWVudDpjLGZvcm1zOmQsc2FtZUhvc3Q6ZX07R3EoKS5kZWNvcmF0b3JzLnB1c2goZil9CmZ1bmN0aW9uIElxKGEsYixjKXtmb3IodmFyIGQ9R3EoKS5kZWNvcmF0b3JzLGU9e30sZj0wO2Y8ZC5sZW5ndGg7KytmKXt2YXIgZz1kW2ZdLGg7aWYoaD0hY3x8Zy5mb3JtcylhOnt2YXIgbD1nLmRvbWFpbnMsbj1hLHA9ISFnLnNhbWVIb3N0O2lmKGwmJihwfHxuIT09Qi5sb2NhdGlvbi5ob3N0bmFtZSkpZm9yKHZhciBxPTA7cTxsLmxlbmd0aDtxKyspaWYobFtxXWluc3RhbmNlb2YgUmVnRXhwKXtpZihsW3FdLnRlc3Qobikpe2g9ITA7YnJlYWsgYX19ZWxzZSBpZihuLmluZGV4T2YobFtxXSk+PTB8fHAmJmxbcV0uaW5kZXhPZihuKT49MCl7aD0hMDticmVhayBhfWg9ITF9aWYoaCl7dmFyIHI9Zy5wbGFjZW1lbnQ7cj09PXZvaWQgMCYmKHI9Zy5mcmFnbWVudD8yOjEpO3I9PT1iJiZRYihlLGcuY2FsbGJhY2soKSl9fXJldHVybiBlfQpmdW5jdGlvbiBHcSgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSxiPWEuZ2w7YiYmYi5kZWNvcmF0b3JzfHwoYj17ZGVjb3JhdG9yczpbXX0sYS5nbD1iKTtyZXR1cm4gYn07dmFyIEpxPS8oLio/KVwqKC4qPylcKiguKikvLEtxPS9eaHR0cHM/OlwvXC8oW15cL10qPylcLj9jZG5cLmFtcHByb2plY3RcLm9yZ1wvPyguKikvLExxPS9eKD86d3d3XC58bVwufGFtcFwuKSsvLE1xPS8oW14/I10rKShcP1teI10qKT8oIy4qKT8vO2Z1bmN0aW9uIE5xKGEpe3ZhciBiPU1xLmV4ZWMoYSk7aWYoYilyZXR1cm57aGs6YlsxXSxxdWVyeTpiWzJdLGZyYWdtZW50OmJbM119fWZ1bmN0aW9uIE9xKGEpe3JldHVybiBuZXcgUmVnRXhwKCIoLio/KShefCYpIithKyI9KFteJl0qKSY/KC4qKSIpfQpmdW5jdGlvbiBQcShhLGIpe3ZhciBjPVtIYy51c2VyQWdlbnQsKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpLEhjLnVzZXJMYW5ndWFnZXx8SGMubGFuZ3VhZ2UsTWF0aC5mbG9vcihOYigpLzYwLzFFMyktKGI9PT12b2lkIDA/MDpiKSxhXS5qb2luKCIqIiksZDtpZighKGQ9Q3EpKXtmb3IodmFyIGU9QXJyYXkoMjU2KSxmPTA7ZjwyNTY7ZisrKXtmb3IodmFyIGc9ZixoPTA7aDw4O2grKylnPWcmMT9nPj4+MV4zOTg4MjkyMzg0Omc+Pj4xO2VbZl09Z31kPWV9Q3E9ZDtmb3IodmFyIGw9NDI5NDk2NzI5NSxuPTA7bjxjLmxlbmd0aDtuKyspbD1sPj4+OF5DcVsobF5jLmNoYXJDb2RlQXQobikpJjI1NV07cmV0dXJuKChsXi0xKT4+PjApLnRvU3RyaW5nKDM2KX0KZnVuY3Rpb24gUXEoYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPVJqKEEubG9jYXRpb24uaHJlZiksZD1jLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZT1JaihkLCJfZ2wiLCExLCEwKXx8IiI7Yi5xdWVyeT1ScShlKXx8e307dmFyIGY9TGooYywiZnJhZ21lbnQiKSxnO3ZhciBoPS0xO2lmKFNiKGYsIl9nbD0iKSloPTQ7ZWxzZXt2YXIgbD1mLmluZGV4T2YoIiZfZ2w9Iik7bD4wJiYoaD1sKzMrMil9aWYoaDwwKWc9dm9pZCAwO2Vsc2V7dmFyIG49Zi5pbmRleE9mKCImIixoKTtnPW48MD9mLnN1YnN0cmluZyhoKTpmLnN1YnN0cmluZyhoLG4pfWIuZnJhZ21lbnQ9UnEoZ3x8IiIpfHx7fTthJiZTcShjLGQsZil9fWZ1bmN0aW9uIFRxKGEsYil7dmFyIGM9T3EoYSkuZXhlYyhiKSxkPWI7aWYoYyl7dmFyIGU9Y1syXSxmPWNbNF07ZD1jWzFdO2YmJihkPWQrZStmKX1yZXR1cm4gZH0KZnVuY3Rpb24gU3EoYSxiLGMpe2Z1bmN0aW9uIGQoZyxoKXt2YXIgbD1UcSgiX2dsIixnKTtsLmxlbmd0aCYmKGw9aCtsKTtyZXR1cm4gbH1pZihHYyYmR2MucmVwbGFjZVN0YXRlKXt2YXIgZT1PcSgiX2dsIik7aWYoZS50ZXN0KGIpfHxlLnRlc3QoYykpe3ZhciBmPUxqKGEsInBhdGgiKTtiPWQoYiwiPyIpO2M9ZChjLCIjIik7R2MucmVwbGFjZVN0YXRlKHt9LCIiLCIiK2YrYitjKX19fWZ1bmN0aW9uIFVxKGEsYil7dmFyIGM9UXEoISFiKSxkPUdxKCk7ZC5kYXRhfHwoZC5kYXRhPXtxdWVyeTp7fSxmcmFnbWVudDp7fX0sYyhkLmRhdGEpKTt2YXIgZT17fSxmPWQuZGF0YTtmJiYoUWIoZSxmLnF1ZXJ5KSxhJiZRYihlLGYuZnJhZ21lbnQpKTtyZXR1cm4gZX0KdmFyIFJxPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1WcShhLDMpO2lmKGIhPT12b2lkIDApe2Zvcih2YXIgYz17fSxkPWI/Yi5zcGxpdCgiKiIpOltdLGU9MDtlKzE8ZC5sZW5ndGg7ZSs9Mil7dmFyIGY9ZFtlXSxnPXFiKGRbZSsxXSk7Y1tmXT1nfXNiKCJUQUdHSU5HIiw2KTtyZXR1cm4gY319Y2F0Y2goaCl7c2IoIlRBR0dJTkciLDgpfX07ZnVuY3Rpb24gVnEoYSxiKXtpZihhKXt2YXIgYzthOntmb3IodmFyIGQ9YSxlPTA7ZTwzOysrZSl7dmFyIGY9SnEuZXhlYyhkKTtpZihmKXtjPWY7YnJlYWsgYX1kPUtqKGQpfHwiIn1jPXZvaWQgMH12YXIgZz1jO2lmKGcmJmdbMV09PT0iMSIpe3ZhciBoPWdbM10sbDthOntmb3IodmFyIG49Z1syXSxwPTA7cDxiOysrcClpZihuPT09UHEoaCxwKSl7bD0hMDticmVhayBhfWw9ITF9aWYobClyZXR1cm4gaDtzYigiVEFHR0lORyIsNyl9fX0KZnVuY3Rpb24gV3EoYSxiLGMsZCxlKXtmdW5jdGlvbiBmKHApe3A9VHEoYSxwKTt2YXIgcT1wLmNoYXJBdChwLmxlbmd0aC0xKTtwJiZxIT09IiYiJiYocCs9IiYiKTtyZXR1cm4gcCtufWQ9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO3ZhciBnPU5xKGMpO2lmKCFnKXJldHVybiIiO3ZhciBoPWcucXVlcnl8fCIiLGw9Zy5mcmFnbWVudHx8IiIsbj1hKyI9IitiO2Q/bC5zdWJzdHJpbmcoMSkubGVuZ3RoIT09MCYmZXx8KGw9IiMiK2YobC5zdWJzdHJpbmcoMSkpKTpoPSI/IitmKGguc3Vic3RyaW5nKDEpKTtyZXR1cm4iIitnLmhrK2grbH0KZnVuY3Rpb24gWHEoYSxiKXtmdW5jdGlvbiBjKG4scCxxKXt2YXIgcjthOntmb3IodmFyIHQgaW4gbilpZihuLmhhc093blByb3BlcnR5KHQpKXtyPSEwO2JyZWFrIGF9cj0hMX1pZihyKXt2YXIgdSx2PVtdLHg7Zm9yKHggaW4gbilpZihuLmhhc093blByb3BlcnR5KHgpKXt2YXIgeT1uW3hdO3khPT12b2lkIDAmJnk9PT15JiZ5IT09bnVsbCYmeS50b1N0cmluZygpIT09IltvYmplY3QgT2JqZWN0XSImJih2LnB1c2goeCksdi5wdXNoKHBiKFN0cmluZyh5KSkpKX12YXIgej12LmpvaW4oIioiKTt1PVsiMSIsUHEoeiksel0uam9pbigiKiIpO2Q/KFlmKDMpfHxZZigxKXx8IXApJiZZcSgiX2dsIix1LGEscCxxKTpacSgiX2dsIix1LGEscCxxKX19dmFyIGQ9KGEudGFnTmFtZXx8IiIpLnRvVXBwZXJDYXNlKCk9PT0iRk9STSIsZT1JcShiLDEsZCksZj1JcShiLDIsZCksZz1JcShiLDQsZCksaD1JcShiLDMsZCk7YyhlLCExLCExKTtjKGYsITAsITEpO1lmKDEpJiZjKGcsITAsITApO2Zvcih2YXIgbCBpbiBoKWguaGFzT3duUHJvcGVydHkobCkmJgokcShsLGhbbF0sYSl9ZnVuY3Rpb24gJHEoYSxiLGMpe2MudGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09ImEiP1pxKGEsYixjKTpjLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PSJmb3JtIiYmWXEoYSxiLGMpfWZ1bmN0aW9uIFpxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7dmFyIGY7aWYoZj1jLmhyZWYpe3ZhciBnO2lmKCEoZz1kKSl7dmFyIGg9QS5sb2NhdGlvbi5ocmVmLGw9TnEoYy5ocmVmKSxuPU5xKGgpO2c9IShsJiZuJiZsLmhrPT09bi5oayYmbC5xdWVyeT09PW4ucXVlcnkmJmwuZnJhZ21lbnQpfWY9Z31pZihmKXt2YXIgcD1XcShhLGIsYy5ocmVmLGQsZSk7dmMudGVzdChwKSYmKGMuaHJlZj1wKX19CmZ1bmN0aW9uIFlxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7aWYoYyl7dmFyIGY9Yy5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpfHwiIjtpZihmKXt2YXIgZz0oYy5tZXRob2R8fCIiKS50b0xvd2VyQ2FzZSgpO2lmKGchPT0iZ2V0Inx8ZCl7aWYoZz09PSJnZXQifHxnPT09InBvc3QiKXt2YXIgaD1XcShhLGIsZixkLGUpO3ZjLnRlc3QoaCkmJihjLmFjdGlvbj1oKX19ZWxzZXtmb3IodmFyIGw9Yy5jaGlsZE5vZGVzfHxbXSxuPSExLHA9MDtwPGwubGVuZ3RoO3ArKyl7dmFyIHE9bFtwXTtpZihxLm5hbWU9PT1hKXtxLnNldEF0dHJpYnV0ZSgidmFsdWUiLGIpO249ITA7YnJlYWt9fWlmKCFuKXt2YXIgcj1CLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7ci5zZXRBdHRyaWJ1dGUoInR5cGUiLCJoaWRkZW4iKTtyLnNldEF0dHJpYnV0ZSgibmFtZSIsYSk7ci5zZXRBdHRyaWJ1dGUoInZhbHVlIixiKTtjLmFwcGVuZENoaWxkKHIpfX19fX0KZnVuY3Rpb24gRXEoYSl7dHJ5e3ZhciBiO2E6e2Zvcih2YXIgYz1hLGQ9MTAwO2MmJmQ+MDspe2lmKGMuaHJlZiYmYy5ub2RlTmFtZS5tYXRjaCgvXmEoPzpyZWEpPyQvaSkpe2I9YzticmVhayBhfWM9Yy5wYXJlbnROb2RlO2QtLX1iPW51bGx9dmFyIGU9YjtpZihlKXt2YXIgZj1lLnByb3RvY29sO2YhPT0iaHR0cDoiJiZmIT09Imh0dHBzOiJ8fFhxKGUsZS5ob3N0bmFtZSl9fWNhdGNoKGcpe319ZnVuY3Rpb24gRnEoYSl7dHJ5e3ZhciBiPWEuZ2V0QXR0cmlidXRlKCJhY3Rpb24iKTtpZihiKXt2YXIgYz1MaihSaihiKSwiaG9zdCIpO1hxKGEsYyl9fWNhdGNoKGQpe319ZnVuY3Rpb24gYXIoYSxiLGMsZCl7RHEoKTt2YXIgZT1jPT09ImZyYWdtZW50Ij8yOjE7ZD0hIWQ7SHEoYSxiLGUsZCwhMSk7ZT09PTImJnNiKCJUQUdHSU5HIiwyMyk7ZCYmc2IoIlRBR0dJTkciLDI0KX0KZnVuY3Rpb24gYnIoYSxiKXtEcSgpO0hxKGEsW05qKEEubG9jYXRpb24sImhvc3QiLCEwKV0sYiwhMCwhMCl9ZnVuY3Rpb24gY3IoKXt2YXIgYT1CLmxvY2F0aW9uLmhvc3RuYW1lLGI9S3EuZXhlYyhCLnJlZmVycmVyKTtpZighYilyZXR1cm4hMTt2YXIgYz1iWzJdLGQ9YlsxXSxlPSIiO2lmKGMpe3ZhciBmPWMuc3BsaXQoIi8iKSxnPWZbMV07ZT1nPT09InMiP0tqKGZbMl0pfHwiIjpLaihnKXx8IiJ9ZWxzZSBpZihkKXtpZihkLmluZGV4T2YoInhuLS0iKT09PTApcmV0dXJuITE7ZT1kLnJlcGxhY2UoLy0vZywiLiIpLnJlcGxhY2UoL1wuXC4vZywiLSIpfXZhciBoPWEucmVwbGFjZShMcSwiIiksbD1lLnJlcGxhY2UoTHEsIiIpO3JldHVybiBoPT09bHx8VGIoaCwiLiIrbCl9ZnVuY3Rpb24gZHIoYSxiKXtyZXR1cm4gYT09PSExPyExOmF8fGJ8fGNyKCl9O3ZhciBlcj1mdW5jdGlvbihhKXt0aGlzLnZhbHVlPTA7dGhpcy52YWx1ZT1hPT09dm9pZCAwPzA6YX07ZXIucHJvdG90eXBlLnNldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXw9MTw8YX07dmFyIGZyPWZ1bmN0aW9uKGEsYil7Yjw9MHx8KGEudmFsdWV8PTE8PGItMSl9O2VyLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07ZXIucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKGEpe3RoaXMudmFsdWUmPX4oMTw8YSl9O2VyLnByb3RvdHlwZS5jbGVhckFsbD1mdW5jdGlvbigpe3RoaXMudmFsdWU9MH07ZXIucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZT09PWEudmFsdWV9O2Z1bmN0aW9uIGdyKGEpe2lmKGEpdHJ5e3JldHVybiBuZXcgVWludDhBcnJheShhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpLnNwbGl0KCIiKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuY2hhckNvZGVBdCgwKX0pKX1jYXRjaChiKXt9fWZ1bmN0aW9uIGhyKGEsYil7dmFyIGM9MCxkPTAsZSxmPWI7ZG97aWYoZj49YS5sZW5ndGgpcmV0dXJuO2U9YVtmKytdO2N8PShlJjEyNyk8PGQ7ZCs9N313aGlsZShlJjEyOCk7cmV0dXJuW2MsZl19O2Z1bmN0aW9uIGlyKCl7dmFyIGE9U3RyaW5nLGI9QS5sb2NhdGlvbi5ob3N0bmFtZSxjPUEubG9jYXRpb24ucGF0aG5hbWUsZD1iPWJjKGIpO2Quc3BsaXQoIi4iKS5sZW5ndGg+MiYmKGQ9ZC5yZXBsYWNlKC9eKHd3d1swLTldKnx3ZWJ8ZnRwfHdhcHxob21lfG18d3xhbXB8bW9iaWxlKVwuLywiIikpO2I9ZDtjPWJjKGMpO3ZhciBlPWMuc3BsaXQoIjsiKVswXTtlPWUucmVwbGFjZSgvXC8oYXJ8c2xwfHdlYnxpbmRleCk/XC8/JC8sIiIpO3JldHVybiBhKG5nKCgiIitiK2UpLnRvTG93ZXJDYXNlKCkpKX07dmFyIGpyPVsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdO2Z1bmN0aW9uIGtyKGEsYil7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMiksMTA7aWYoYj09PW51bGx8fGI9PT12b2lkIDB8fGI9PT0iIilyZXR1cm4gc2IoIlRBR0dJTkciLDMzKSwxMTt2YXIgYz1scighMSk7aWYoYy5lcnJvciE9PTApcmV0dXJuIHNiKCJUQUdHSU5HIiwzNCksYy5lcnJvcjtpZighYy52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDM1KSwyO2MudmFsdWVbYV09Yjt2YXIgZD1tcihjKTtkIT09MCYmc2IoIlRBR0dJTkciLDM2KTtyZXR1cm4gZH0KZnVuY3Rpb24gbnIoYSl7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwyNykse2Vycm9yOjEwfTt2YXIgYj1scigpO2lmKGIuZXJyb3IhPT0wKXJldHVybiBzYigiVEFHR0lORyIsMjkpLGI7aWYoIWIudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMCkse2Vycm9yOjJ9O2lmKCEoYSBpbiBiLnZhbHVlKSlyZXR1cm4gc2IoIlRBR0dJTkciLDMxKSx7dmFsdWU6dm9pZCAwLGVycm9yOjE1fTt2YXIgYz1iLnZhbHVlW2FdO3JldHVybiBjPT09bnVsbHx8Yz09PXZvaWQgMHx8Yz09PSIiPyhzYigiVEFHR0lORyIsMjgpLHt2YWx1ZTp2b2lkIDAsZXJyb3I6MTF9KTp7dmFsdWU6YyxlcnJvcjowfX0KZnVuY3Rpb24gb3IoYSl7aWYoYSl7dmFyIGI9bHIoITEpO2IuZXJyb3IhPT0wP3NiKCJUQUdHSU5HIiwzOCk6Yi52YWx1ZT9hIGluIGIudmFsdWU/KGRlbGV0ZSBiLnZhbHVlW2FdLG1yKGIpIT09MCYmc2IoIlRBR0dJTkciLDQxKSk6c2IoIlRBR0dJTkciLDQwKTpzYigiVEFHR0lORyIsMzkpfWVsc2Ugc2IoIlRBR0dJTkciLDM3KX0KZnVuY3Rpb24gbHIoYSl7YT1hPT09dm9pZCAwPyEwOmE7aWYoIUJsKGpyKSlyZXR1cm4gc2IoIlRBR0dJTkciLDQzKSx7ZXJyb3I6M307dHJ5e2lmKCFBLmxvY2FsU3RvcmFnZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQ0KSx7ZXJyb3I6MX19Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0NSkse2Vycm9yOjE0fX12YXIgYj17c2NoZW1hOiJnY2wiLHZlcnNpb246MX0sYz12b2lkIDA7dHJ5e2M9QS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgiX2djbF9scyIpfWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDYpLHtlcnJvcjoxM319dHJ5e2lmKGMpe3ZhciBkPUpTT04ucGFyc2UoYyk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0IiliPWQ7ZWxzZSByZXR1cm4gc2IoIlRBR0dJTkciLDQ3KSx7ZXJyb3I6MTJ9fX1jYXRjaChmKXtyZXR1cm4gc2IoIlRBR0dJTkciLDQ4KSx7ZXJyb3I6OH19aWYoYi5zY2hlbWEhPT0iZ2NsIilyZXR1cm4gc2IoIlRBR0dJTkciLDQ5KSx7ZXJyb3I6NH07CmlmKGIudmVyc2lvbiE9PTEpcmV0dXJuIHNiKCJUQUdHSU5HIiw1MCkse2Vycm9yOjV9O3RyeXt2YXIgZT1wcihiKTthJiZlJiZtcih7dmFsdWU6YixlcnJvcjowfSl9Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0OCkse2Vycm9yOjh9fXJldHVybnt2YWx1ZTpiLGVycm9yOjB9fQpmdW5jdGlvbiBwcihhKXtpZighYXx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZigiZXhwaXJlcyJpbiBhJiYidmFsdWUiaW4gYSl7dmFyIGI7dHlwZW9mIGEuZXhwaXJlcz09PSJudW1iZXIiP2I9YS5leHBpcmVzOmI9dHlwZW9mIGEuZXhwaXJlcz09PSJzdHJpbmciP051bWJlcihhLmV4cGlyZXMpOk5hTjtpZihpc05hTihiKXx8IShEYXRlLm5vdygpPD1iKSlyZXR1cm4gYS52YWx1ZT1udWxsLGEuZXJyb3I9OSxzYigiVEFHR0lORyIsNTQpLCEwfWVsc2V7Zm9yKHZhciBjPSExLGQ9bShPYmplY3Qua2V5cyhhKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpYz1wcihhW2UudmFsdWVdKXx8YztyZXR1cm4gY31yZXR1cm4hMX0KZnVuY3Rpb24gbXIoYSl7aWYoYS5lcnJvcilyZXR1cm4gYS5lcnJvcjtpZighYS52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQyKSwyO3ZhciBiPWEudmFsdWUsYzt0cnl7Yz1KU09OLnN0cmluZ2lmeShiKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUyKSw2fXRyeXtBLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJfZ2NsX2xzIixjKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUzKSw3fXJldHVybiAwfTt2YXIgcXI9e30scnI9KHFyLmdjbGlkPSEwLHFyLmRjbGlkPSEwLHFyLmdicmFpZD0hMCxxci53YnJhaWQ9ITAscXIpLHNyPS9eXHcrJC8sdHI9L15bXHctXSskLyx1cj17fSx2cj0odXIuYXc9IkZQR0NMQVciLHVyKSx3cj17fSx4cj0od3IuYWc9Il9hZyIsd3IuZ2I9Il9nYiIsd3IuYXc9Il9hdyIsd3IuZGM9Il9kYyIsd3IuZ2Y9Il9nZiIsd3IuaGE9Il9oYSIsd3IuZ3A9Il9ncCIsd3IuZ3M9Il9ncyIsd3IpLHlyPS9eKD86d3d3XC4pP2dvb2dsZSg/OlwuY29tPyk/KD86XC5bYS16XXsyfXQ/KT8kLyx6cj0vXnd3d1wuZ29vZ2xlYWRzZXJ2aWNlc1wuY29tJC87ZnVuY3Rpb24gQXIoKXtyZXR1cm5bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXX1mdW5jdGlvbiBCcihhKXtyZXR1cm4hWWYoNSl8fEJsKGEpfWZ1bmN0aW9uIENyKGEsYil7ZnVuY3Rpb24gYygpe3ZhciBkPUJyKGIpO2QmJmEoKTtyZXR1cm4gZH1IbChmdW5jdGlvbigpe2MoKXx8SWwoYyxiKX0sYil9CmZ1bmN0aW9uIERyKGEpe3JldHVybiBFcihhKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuZ2NsaWR9KX1mdW5jdGlvbiBGcihhKXtyZXR1cm4gR3IoYSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSl9ZnVuY3Rpb24gR3IoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1IcihhLnByZWZpeCksZD1JcigiZ2IiLGMpLGU9SXIoImFnIixjKTtpZighZXx8IWQpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe24uemc9bDtyZXR1cm4gbn19LGc9RXIoZCxiKS5tYXAoZigiZ2IiKSksaD1KcihlKS5tYXAoZigiYWciKSk7cmV0dXJuIGcuY29uY2F0KGgpLnNvcnQoZnVuY3Rpb24obCxuKXtyZXR1cm4gbi50aW1lc3RhbXAtbC50aW1lc3RhbXB9KX0KZnVuY3Rpb24gS3IoYSxiLGMsZCxlKXt2YXIgZj1DYihhLGZ1bmN0aW9uKGcpe3JldHVybiBnLmdjbGlkPT09Yn0pO2Y/KGYudGltZXN0YW1wPGMmJihmLnRpbWVzdGFtcD1jLGYub2Q9ZSksZi5sYWJlbHM9THIoZi5sYWJlbHN8fFtdLGR8fFtdKSk6YS5wdXNoKHt2ZXJzaW9uOiIyIixnY2xpZDpiLHRpbWVzdGFtcDpjLGxhYmVsczpkLG9kOmV9KX1mdW5jdGlvbiBNcihhKXtmb3IodmFyIGI9d3EoYSw1KXx8W10sYz1bXSxkPW0oYiksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1mLGg9TnIoZik7aCYmS3IoYyxnLmssaCxnLmJ8fFtdLGYudSl9cmV0dXJuIGMuc29ydChmdW5jdGlvbihsLG4pe3JldHVybiBuLnRpbWVzdGFtcC1sLnRpbWVzdGFtcH0pfQpmdW5jdGlvbiBFcihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO09yKGMsYSwxKTtpZihiKWlmKFRiKGEsIl9hdyIpKXt2YXIgZD1QcigpO2QmJihkLm9kPXZvaWQgMCxkLm9hPWQub2F8fFsyXSxRcihjLGQpKTtPcihjLCJnY2xfYXciLDIpfWVsc2UgVGIoYSwiX2diIikmJllmKDYpJiZPcihjLCJnY2xfZ2IiLDIpO2Muc29ydChmdW5jdGlvbihlLGYpe3JldHVybiBmLnRpbWVzdGFtcC1lLnRpbWVzdGFtcH0pO3JldHVybiBScihjKX1mdW5jdGlvbiBTcihhLGIpe2Zvcih2YXIgYz1bXSxkPW0oYSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Yy5pbmNsdWRlcyhmKXx8Yy5wdXNoKGYpfWZvcih2YXIgZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlO2MuaW5jbHVkZXMobCl8fGMucHVzaChsKX1yZXR1cm4gY30KZnVuY3Rpb24gUXIoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2Zvcih2YXIgZCxlLGY9bShhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtpZihoLmdjbGlkPT09Yi5nY2xpZCl7ZD1oO2JyZWFrfWgucWEmJmIucWEmJmgucWEuZXF1YWxzKGIucWEpJiYoZT1oKX1pZihkKXt2YXIgbCxuLHA9KGw9ZC5xYSkhPW51bGw/bDpuZXcgZXIscT0obj1iLnFhKSE9bnVsbD9uOm5ldyBlcjtwLnZhbHVlfD1xLnZhbHVlO2QucWE9cDtkLnRpbWVzdGFtcDxiLnRpbWVzdGFtcCYmKGQudGltZXN0YW1wPWIudGltZXN0YW1wLGQub2Q9Yi5vZCk7ZC5sYWJlbHM9U3IoZC5sYWJlbHN8fFtdLGIubGFiZWxzfHxbXSk7ZC5vYT1TcihkLm9hfHxbXSxiLm9hfHxbXSl9ZWxzZSBjJiZlP25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxiKTphLnB1c2goYil9CmZ1bmN0aW9uIFRyKGEpe2lmKCFhKXJldHVybiBuZXcgZXI7dmFyIGI9bmV3IGVyO2lmKGE9PT0xKXJldHVybiBmcihiLDIpLGZyKGIsMyksYjtmcihiLGEpO3JldHVybiBifQpmdW5jdGlvbiBQcigpe3ZhciBhPW5yKCJnY2xpZCIpO2lmKCFhfHxhLmVycm9yfHwhYS52YWx1ZXx8dHlwZW9mIGEudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYj1hLnZhbHVlO3RyeXtpZighKCJ2YWx1ZSJpbiBiJiZiLnZhbHVlKXx8dHlwZW9mIGIudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYz1iLnZhbHVlLGQ9Yy52YWx1ZTtpZighZHx8IWQubWF0Y2godHIpKXJldHVybiBudWxsO3ZhciBlPWMubGlua0RlY29yYXRpb25Tb3VyY2UsZj1jLmxpbmtEZWNvcmF0aW9uU291cmNlcyxnPW5ldyBlcjt0eXBlb2YgZT09PSJudW1iZXIiP2c9VHIoZSk6dHlwZW9mIGY9PT0ibnVtYmVyIiYmKGcudmFsdWU9Zik7cmV0dXJue3ZlcnNpb246IiIsZ2NsaWQ6ZCx0aW1lc3RhbXA6TnVtYmVyKGMuY3JlYXRpb25UaW1lTXMpfHwwLGxhYmVsczpbXSxxYTpnLG9hOlsyXX19Y2F0Y2goaCl7cmV0dXJuIG51bGx9fQpmdW5jdGlvbiBVcihhKXt2YXIgYj1ucihhKTtpZihiLmVycm9yIT09MClyZXR1cm4gbnVsbDt0cnl7cmV0dXJuIGIudmFsdWUucmVkdWNlKGZ1bmN0aW9uKGMsZCl7aWYoIWQudmFsdWV8fHR5cGVvZiBkLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIGM7dmFyIGU9ZC52YWx1ZSxmPWUudmFsdWU7aWYoIWZ8fCFmLm1hdGNoKHRyKSlyZXR1cm4gYzt2YXIgZz1uZXcgZXIsaD1lLmxpbmtEZWNvcmF0aW9uU291cmNlczt0eXBlb2YgaD09PSJudW1iZXIiJiYoZy52YWx1ZT1oKTt2YXIgbDtjLnB1c2goe3ZlcnNpb246IiIsZ2NsaWQ6Zix0aW1lc3RhbXA6TnVtYmVyKGUuY3JlYXRpb25UaW1lTXMpfHwwLGV4cGlyZXM6TnVtYmVyKGQuZXhwaXJlcyl8fDAsbGFiZWxzOihsPWUubGFiZWxzKSE9bnVsbD9sOltdLHFhOmcsb2E6WzJdfSk7cmV0dXJuIGN9LFtdKX1jYXRjaChjKXtyZXR1cm4gbnVsbH19CmZ1bmN0aW9uIE9yKGEsYixjKXtpZihjPT09MSlmb3IodmFyIGQ9Y3EoYixCLmNvb2tpZSx2b2lkIDAsQXIoKSksZT1tKGQpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1WcihmLnZhbHVlLnNwbGl0KCIuIikpLGg9Zy5sZW5ndGg9PT0wP251bGw6e3ZlcnNpb246Z1swXSxnY2xpZDpnWzJdLHRpbWVzdGFtcDooTnVtYmVyKGdbMV0pfHwwKSoxRTMsbGFiZWxzOmcuc2xpY2UoMyl9O2ghPW51bGwmJihoLm9kPXZvaWQgMCxoLnFhPW5ldyBlcixoLm9hPVtjXSxRcihhLGgpKX1lbHNlIGlmKGM9PT0yKXt2YXIgbD1VcihiKTtpZihsKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3Eub2Q9dm9pZCAwO3Eub2E9cS5vYTtRcihhLHEpfX19CmZ1bmN0aW9uIFpyKGEpe3ZhciBiPUVyKGEpLGM9VXIoImdjbF9kYyIpO2lmKGMpZm9yKHZhciBkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Zi5vZD12b2lkIDA7Zi5vYT1mLm9hfHxbMl07UXIoYixmKX1iLnNvcnQoZnVuY3Rpb24oZyxoKXt2YXIgbD1nLm9hJiZnLm9hLmluY2x1ZGVzKDEpLG49aC5vYSYmaC5vYS5pbmNsdWRlcygxKTtyZXR1cm4gbCYmIW4/LTE6IWwmJm4/MTpoLnRpbWVzdGFtcC1nLnRpbWVzdGFtcH0pO3JldHVybiBScihiKX1mdW5jdGlvbiBKcihhKXtyZXR1cm4gTXIoYSkubWFwKGZ1bmN0aW9uKGIpe2IucWE9bmV3IGVyO2Iub2E9WzFdO3JldHVybiBifSl9CmZ1bmN0aW9uIExyKGEsYil7aWYoIWEubGVuZ3RoKXJldHVybiBiO2lmKCFiLmxlbmd0aClyZXR1cm4gYTt2YXIgYz17fTtyZXR1cm4gYS5jb25jYXQoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBjLmhhc093blByb3BlcnR5KGQpPyExOmNbZF09ITB9KX1mdW5jdGlvbiBIcihhKXtyZXR1cm4gYSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaChzcik/YToiX2djbCJ9ZnVuY3Rpb24gJHIoYSxiKXtpZihhKXt2YXIgYz17dmFsdWU6YSxxYTpuZXcgZXJ9O2ZyKGMucWEsYik7cmV0dXJuIGN9fQpmdW5jdGlvbiBhcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpO2lmKGImJighZnx8IWUpKXt2YXIgZz1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Z8fChmPSRyKElqKGcsImdjbGlkIiwhMSksMykpO2V8fChlPUlqKGcsImdjbHNyYyIsITEpKX1yZXR1cm4gZiYmKGU9PT12b2lkIDB8fGU9PT0iYXcifHxlPT09ImF3LmRzInx8WWYoOCkmJmU9PT0iYXcuZHYiKT9bZl06W119CmZ1bmN0aW9uIGJzKGEsYil7dmFyIGM9UmooYSksZD1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGU9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJ3YnJhaWQiKTtmPSRiKGYpO3ZhciBnPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdicmFpZCIpLGg9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpLGw9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKTtpZihiJiYhKGQmJmUmJmYmJmcpKXt2YXIgbj1jLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Q9ZHx8SWoobiwiZ2NsaWQiLCExKTtlPWV8fElqKG4sImdjbHNyYyIsITEpO2Y9Znx8SWoobiwid2JyYWlkIiwhMSk7Zz1nfHxJaihuLCJnYnJhaWQiLCExKTtoPWh8fElqKG4sImdhZF9zb3VyY2UiLCExKX1yZXR1cm4gY3MoZCxlLGwsZixnLGgpfQpmdW5jdGlvbiBkcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpLGc9JHIoTGooZCwicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKSxjPzQ6Mik7aWYoYiYmKCFlfHwhZikpe3ZhciBoPWQuaGFzaC5yZXBsYWNlKCIjIiwiIik7Znx8KGY9JHIoSWooaCwiZ2NsaWQiLCExKSwzKSk7ZXx8KGU9SWooaCwiZ2Nsc3JjIiwhMSkpfXJldHVybiBmJiZlJiYoZT09PSJhdy5kcyJ8fGU9PT0iYXcuZHYifHxlPT09IjNwLmRzInx8ZT09PSJkcyIpP1tmXTpnP1tnXTpbXX1mdW5jdGlvbiBlcygpe3JldHVybiBicyhBLmxvY2F0aW9uLmhyZWYsITApfQpmdW5jdGlvbiBjcyhhLGIsYyxkLGUsZil7dmFyIGc9e30saD1mdW5jdGlvbihsLG4pe2dbbl18fChnW25dPVtdKTtnW25dLnB1c2gobCl9O2cuZ2NsaWQ9YTtnLmdjbHNyYz1iO2cuZGNsaWQ9YztpZihhIT09dm9pZCAwJiZhLm1hdGNoKHRyKSlzd2l0Y2goYil7Y2FzZSB2b2lkIDA6aChhLCJhdyIpO2JyZWFrO2Nhc2UgImF3LmRzIjpoKGEsImF3Iik7aChhLCJkYyIpO2JyZWFrO2Nhc2UgImF3LmR2IjpZZig4KSYmKGgoYSwiYXciKSxoKGEsImRjIikpO2JyZWFrO2Nhc2UgImRzIjpoKGEsImRjIik7YnJlYWs7Y2FzZSAiM3AuZHMiOmgoYSwiZGMiKTticmVhaztjYXNlICJnZiI6aChhLCJnZiIpO2JyZWFrO2Nhc2UgImhhIjpoKGEsImhhIil9YyYmaChjLCJkYyIpO2QhPT12b2lkIDAmJnRyLnRlc3QoZCkmJihnLndicmFpZD1kLGgoZCwiZ2IiKSk7ZSE9PXZvaWQgMCYmdHIudGVzdChlKSYmKGcuZ2JyYWlkPWUsaChlLCJhZyIpKTtmIT09dm9pZCAwJiZ0ci50ZXN0KGYpJiYoZy5nYWRfc291cmNlPQpmLGgoZiwiZ3MiKSk7cmV0dXJuIGd9ZnVuY3Rpb24gZnMoKXtmb3IodmFyIGE9ZXMoKSxiPSEwLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpaWYoYVtkLnZhbHVlXSE9PXZvaWQgMCl7Yj0hMTticmVha31iJiYoYT1icyhBLmRvY3VtZW50LnJlZmVycmVyLCExKSxhLmdhZF9zb3VyY2U9dm9pZCAwKTtyZXR1cm4gYX1mdW5jdGlvbiBncyhhKXt2YXIgYj1mcygpO2hzKGIsITEsYSl9CmZ1bmN0aW9uIGlzKGEpe3ZhciBiPWFzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7Yi5sZW5ndGh8fChiPWFzKEEuZG9jdW1lbnQucmVmZXJyZXIsITEsITApKTthPWF8fHt9O2pzKGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1iWzBdLGQ9TmIoKSxlPXVxKGEsZCwhMCksZj1BcigpLGc9ZnVuY3Rpb24oKXtCcihmKSYmZS5leHBpcmVzIT09dm9pZCAwJiZrcigiZ2NsaWQiLHt2YWx1ZTp7dmFsdWU6Yy52YWx1ZSxjcmVhdGlvblRpbWVNczpkLGxpbmtEZWNvcmF0aW9uU291cmNlczpjLnFhLmdldCgpfSxleHBpcmVzOk51bWJlcihlLmV4cGlyZXMpfSl9O0hsKGZ1bmN0aW9uKCl7ZygpO0JyKGYpfHxJbChnLGYpfSxmKX19CmZ1bmN0aW9uIGpzKGEpe3ZhciBiPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjtpZih5ci50ZXN0KGIpfHx6ci50ZXN0KGIpfHxrcygpKXt2YXIgYzthOntmb3IodmFyIGQ9UmooQS5sb2NhdGlvbi5ocmVmKSxlPUpqKExqKGQsInF1ZXJ5IikpLGY9bShPYmplY3Qua2V5cyhlKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7aWYoIXJyW2hdKXt2YXIgbD1lW2hdWzBdfHwiIixuO2lmKCFsfHxsLmxlbmd0aDw1MHx8bC5sZW5ndGg+MjAwKW49ITE7ZWxzZXt2YXIgcD1ncihsKSxxO2lmKHApYzp7dmFyIHI9cDtpZihyJiZyLmxlbmd0aCE9PTApe3ZhciB0PTA7dHJ5e2Zvcih2YXIgdT0xMDt0PHIubGVuZ3RoJiYhKHUtLTw9MCk7KXt2YXIgdj1ocihyLHQpO2lmKHY9PT12b2lkIDApYnJlYWs7dmFyIHg9bSh2KSx5PXgubmV4dCgpLnZhbHVlLHo9eC5uZXh0KCkudmFsdWUsQz15LEQ9eixJPUMmNztpZihDPj4zPT09MTYzODIpe2lmKEkhPT0KMClicmVhazt2YXIgRz1ocihyLEQpO2lmKEc9PT12b2lkIDApYnJlYWs7cT1tKEcpLm5leHQoKS52YWx1ZT09PTE7YnJlYWsgY312YXIgTjtkOnt2YXIgUz12b2lkIDAsVz1yLGVhPUQ7c3dpdGNoKEkpe2Nhc2UgMDpOPShTPWhyKFcsZWEpKT09bnVsbD92b2lkIDA6U1sxXTticmVhayBkO2Nhc2UgMTpOPWVhKzg7YnJlYWsgZDtjYXNlIDI6dmFyIGphPWhyKFcsZWEpO2lmKGphPT09dm9pZCAwKWJyZWFrO3ZhciBmYT1tKGphKSxzYT1mYS5uZXh0KCkudmFsdWU7Tj1mYS5uZXh0KCkudmFsdWUrc2E7YnJlYWsgZDtjYXNlIDU6Tj1lYSs0O2JyZWFrIGR9Tj12b2lkIDB9aWYoTj09PXZvaWQgMHx8Tj5yLmxlbmd0aHx8Tjw9dClicmVhazt0PU59fWNhdGNoKG1hKXt9fXE9ITF9ZWxzZSBxPSExO249cX1pZihuKXtjPWw7YnJlYWsgYX19fWM9dm9pZCAwfXZhciBkYT1jO2RhJiZscygiZ2NsX2F3IixkYSw3LGEpfX0KZnVuY3Rpb24gbHMoYSxiLGMsZCl7bXMoYSxbe3ZlcnNpb246IiIsZ2NsaWQ6Yix0aW1lc3RhbXA6TmIoKSxxYTpUcihjKX1dLGQpfQpmdW5jdGlvbiBtcyhhLGIsYyl7Yz1jfHx7fTt2YXIgZD1BcigpLGU9ZnVuY3Rpb24oKXtpZihCcihkKSYmYi5sZW5ndGg+MCl7dmFyIGY9VXIoYSl8fFtdO2IuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgaD11cShjLGcudGltZXN0YW1wLCEwKTtoLmV4cGlyZXMhPT12b2lkIDAmJlFyKGYse3ZlcnNpb246IiIsZ2NsaWQ6Zy5nY2xpZCx0aW1lc3RhbXA6Zy50aW1lc3RhbXAsZXhwaXJlczpOdW1iZXIoaC5leHBpcmVzKSxxYTpnLnFhLGxhYmVsczpnLmxhYmVsc30sITApfSk7Zi5sZW5ndGgmJmtyKGEsZi5tYXAoZnVuY3Rpb24oZyl7dmFyIGg9e3ZhbHVlOmcuZ2NsaWQsY3JlYXRpb25UaW1lTXM6Zy50aW1lc3RhbXAsbGlua0RlY29yYXRpb25Tb3VyY2VzOmcucWE/Zy5xYS5nZXQoKTowfSxsO2lmKChsPWcubGFiZWxzKT09bnVsbD8wOmwubGVuZ3RoKWgubGFiZWxzPWcubGFiZWxzO3JldHVybnt2YWx1ZTpoLGV4cGlyZXM6TnVtYmVyKGcuZXhwaXJlcyl9fSkpfX07SGwoZnVuY3Rpb24oKXtCcihkKT8KZSgpOklsKGUsZCl9LGQpfQpmdW5jdGlvbiBocyhhLGIsYyxkLGUpe2M9Y3x8e307ZT1lfHxbXTt2YXIgZj1IcihjLnByZWZpeCksZz1kfHxOYigpLGg9TWF0aC5yb3VuZChnLzFFMyksbD1BcigpLG49ITEscD0hMSxxPVlmKDkpLHI9ZnVuY3Rpb24oKXtpZihCcihsKSl7dmFyIHQ9dXEoYyxnLCEwKTt0Lk1jPWw7Zm9yKHZhciB1PWZ1bmN0aW9uKFcsZWEpe3ZhciBqYT1JcihXLGYpO2phJiYob3EoamEsZWEsdCksVyE9PSJnYiImJihuPSEwKSl9LHY9ZnVuY3Rpb24oVyl7dmFyIGVhPVsiR0NMIixoLFddO2UubGVuZ3RoPjAmJmVhLnB1c2goZS5qb2luKCIuIikpO3JldHVybiBlYS5qb2luKCIuIil9LHg9bShbImF3IiwiZGMiLCJnZiIsImhhIiwiZ3AiXSkseT14Lm5leHQoKTsheS5kb25lO3k9eC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7YVt6XSYmdSh6LHYoYVt6XVswXSkpfWlmKCghbnx8cSkmJmEuZ2Ipe3ZhciBDPWEuZ2JbMF0sRD1JcigiZ2IiLGYpOyFiJiZFcihEKS5zb21lKGZ1bmN0aW9uKFcpe3JldHVybiBXLmdjbGlkPT09QyYmClcubGFiZWxzJiZXLmxhYmVscy5sZW5ndGg+MH0pfHx1KCJnYiIsdihDKSl9fWlmKCFwJiZhLmdicmFpZCYmQnIoImFkX3N0b3JhZ2UiKSYmKHA9ITAsIW58fHEpKXt2YXIgST1hLmdicmFpZCxHPUlyKCJhZyIsZik7aWYoYnx8IUpyKEcpLnNvbWUoZnVuY3Rpb24oVyl7cmV0dXJuIFcuZ2NsaWQ9PT1JJiZXLmxhYmVscyYmVy5sYWJlbHMubGVuZ3RoPjB9KSl7dmFyIE49e30sUz0oTi5rPUksTi5pPSIiK2gsTi5iPWUsTik7QXEoRyxTLDUsYyxnKX19bnMoYSxmLGcsYyl9O0hsKGZ1bmN0aW9uKCl7cigpO0JyKGwpfHxJbChyLGwpfSxsKX0KZnVuY3Rpb24gbnMoYSxiLGMsZCl7aWYoYS5nYWRfc291cmNlIT09dm9pZCAwJiZCcigiYWRfc3RvcmFnZSIpKXt2YXIgZT1xZCgpO2lmKGUhPT0iciImJmUhPT0iaCIpe3ZhciBmPWEuZ2FkX3NvdXJjZSxnPUlyKCJncyIsYik7aWYoZyl7dmFyIGg9TWF0aC5mbG9vcigoTmIoKS0ocGQoKXx8MCkpLzFFMyksbCxuPWlyKCkscD17fTtsPShwLms9ZixwLmk9IiIraCxwLnU9bixwKTtBcShnLGwsNSxkLGMpfX19fWZ1bmN0aW9uIG9zKGEsYixjKXtmb3IodmFyIGQ9d3EoYixjKSxlPTA7ZTxkLmxlbmd0aDsrK2UpaWYoTnIoZFtlXSk+YSlyZXR1cm4hMDtyZXR1cm4hMX0KZnVuY3Rpb24gcHMoYSl7dmFyIGI9cXMsYz1ycyhhLnByZWZpeCk7Q3IoZnVuY3Rpb24oKXtmb3IodmFyIGQ9SHIoYS5wcmVmaXgpLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWNbZ107aWYoaCl7dmFyIGw9TWF0aC5taW4oc3MoaCksTmIoKSksbj11cShhLGwsITApO24uTWM9QXIoKTt2YXIgcD1JcihnLGQpO3AmJm9xKHAsaCxuKX19dmFyIHE9VXEoITApO2hzKGNzKHEuZ2NsaWQscS5nY2xzcmMpLCExLGEpfSxBcigpKX0KZnVuY3Rpb24gcnMoYSl7dmFyIGI9VXEoITApLGM9SHIoYSksZD17fSxlO2ZvcihlIGluIHhyKWlmKHhyLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1lLGc9SXIoZixjKTtpZihnIT09dm9pZCAwKXt2YXIgaD1iW2ddO2lmKGgpe3ZhciBsPXNzKGgpLG47YTp7Zm9yKHZhciBwPU1hdGgubWluKGwsTmIoKSl8fE5iKCkscT1jcShnLEIuY29va2llLHZvaWQgMCxBcigpKSxyPTA7cjxxLmxlbmd0aDsrK3IpaWYoc3MocVtyXSk+cCl7bj0hMDticmVhayBhfW49ITF9bnx8KGRbZl09aCl9fX1yZXR1cm4gZH0KZnVuY3Rpb24gdHMoYSl7dmFyIGI9WyJhZyJdLGM9VXEoITApLGQ9SHIoYS5wcmVmaXgpO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoZil7dmFyIGc9Y1tmXTtpZihnKXt2YXIgaD0kcChnLDUpO2lmKGgpe3ZhciBsPU5yKGgpO2x8fChsPU5iKCkpO2lmKG9zKGwsZiw1KSlicmVhaztoLmk9IiIrTWF0aC5yb3VuZChsLzFFMyk7QXEoZixoLDUsYSxsKX19fX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiBJcihhLGIpe3ZhciBjPXhyW2FdO2lmKGMhPT12b2lkIDApcmV0dXJuIGIrY31mdW5jdGlvbiBzcyhhKXtyZXR1cm4gVnIoYS5zcGxpdCgiLiIpKS5sZW5ndGghPT0wPyhOdW1iZXIoYS5zcGxpdCgiLiIpWzFdKXx8MCkqMUUzOjB9ZnVuY3Rpb24gTnIoYSl7cmV0dXJuIGE/KE51bWJlcihhLmkpfHwwKSoxRTM6MH0KZnVuY3Rpb24gVnIoYSl7cmV0dXJuIGEubGVuZ3RoPDN8fGFbMF0hPT0iR0NMIiYmYVswXSE9PSIxInx8IS9eXGQrJC8udGVzdChhWzFdKXx8IXRyLnRlc3QoYVsyXSk/W106YX1mdW5jdGlvbiB1cyhhLGIsYyxkKXt2YXIgZT1xcztpZihBcnJheS5pc0FycmF5KGEpJiZTcChBKSl7dmFyIGY9SHIoZCksZz1mdW5jdGlvbigpe2Zvcih2YXIgaD17fSxsPTA7bDxlLmxlbmd0aDsrK2wpe3ZhciBuPUlyKGVbbF0sZik7aWYobil7dmFyIHA9Y3EobixCLmNvb2tpZSx2b2lkIDAsQXIoKSk7cC5sZW5ndGgmJihoW25dPXAuc29ydCgpW3AubGVuZ3RoLTFdKX19cmV0dXJuIGh9O0NyKGZ1bmN0aW9uKCl7YXIoZyxhLGIsYyl9LEFyKCkpfX0KZnVuY3Rpb24gdnMoYSxiLGMpe3ZhciBkPXFzO2lmKFlmKDEzKSYmQXJyYXkuaXNBcnJheShhKSYmU3AoQSkpe3ZhciBlPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPXt9LGc9MDtnPGQubGVuZ3RoOysrZyl7dmFyIGg9dnJbZFtnXV07aWYoaCl7dmFyIGw9Y3EoaCxCLmNvb2tpZSx2b2lkIDAsQXIoKSk7aWYobC5sZW5ndGgpe2Zvcih2YXIgbj12b2lkIDAscD0wLHE9bShsKSxyPXEubmV4dCgpOyFyLmRvbmU7cj1xLm5leHQoKSl7dmFyIHQ9ci52YWx1ZSx1PSRwKHQsNCk7aWYodSYmKHUubT09PSIxInx8WWYoMTYpKSl7dmFyIHY9TnIodSk7dj49cCYmKHA9dixuPXQpfX1uJiYoZltoXT1uKX19fXJldHVybiBmfTtDcihmdW5jdGlvbigpe2FyKGUsYSxiLGMpfSxBcigpKX19CmZ1bmN0aW9uIHdzKGEsYixjLGQpe2lmKEFycmF5LmlzQXJyYXkoYSkmJlNwKEEpKXt2YXIgZT1bImFnIl0sZj1IcihkKSxnPWZ1bmN0aW9uKCl7Zm9yKHZhciBoPXt9LGw9MDtsPGUubGVuZ3RoOysrbCl7dmFyIG49SXIoZVtsXSxmKTtpZighbilyZXR1cm57fTt2YXIgcD13cShuLDUpO2lmKHAubGVuZ3RoKXt2YXIgcT1wLnNvcnQoZnVuY3Rpb24ocix0KXtyZXR1cm4gTnIodCktTnIocil9KVswXTtoW25dPWFxKHEsNSl9fXJldHVybiBofTtDcihmdW5jdGlvbigpe2FyKGcsYSxiLGMpfSxbImFkX3N0b3JhZ2UiXSl9fWZ1bmN0aW9uIFJyKGEpe3JldHVybiBhLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHIudGVzdChiLmdjbGlkKX0pfQpmdW5jdGlvbiB4cyhhLGIpe2lmKFNwKEEpKXtmb3IodmFyIGM9SHIoYi5wcmVmaXgpLGQ9e30sZT0wO2U8YS5sZW5ndGg7ZSsrKXhyW2FbZV1dJiYoZFthW2VdXT14clthW2VdXSk7Q3IoZnVuY3Rpb24oKXtHYihkLGZ1bmN0aW9uKGYsZyl7dmFyIGg9Y3EoYytnLEIuY29va2llLHZvaWQgMCxBcigpKTtoLnNvcnQoZnVuY3Rpb24odCx1KXtyZXR1cm4gc3ModSktc3ModCl9KTtpZihoLmxlbmd0aCl7dmFyIGw9aFswXSxuPXNzKGwpLHA9VnIobC5zcGxpdCgiLiIpKS5sZW5ndGghPT0wP2wuc3BsaXQoIi4iKS5zbGljZSgzKTpbXSxxPXt9LHI7cj1WcihsLnNwbGl0KCIuIikpLmxlbmd0aCE9PTA/bC5zcGxpdCgiLiIpWzJdOnZvaWQgMDtxW2ZdPVtyXTtocyhxLCEwLGIsbixwKX19KX0sQXIoKSl9fQpmdW5jdGlvbiB5cyhhKXt2YXIgYj1bImFnIl0sYz1bImdicmFpZCJdO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUhyKGEucHJlZml4KSxlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoIWYpYnJlYWs7dmFyIGc9d3EoZiw1KTtpZihnLmxlbmd0aCl7dmFyIGg9Zy5zb3J0KGZ1bmN0aW9uKHEscil7cmV0dXJuIE5yKHIpLU5yKHEpfSlbMF0sbD1OcihoKSxuPWguYixwPXt9O3BbY1tlXV09aC5rO2hzKHAsITAsYSxsLG4pfX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiB6cyhhLGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKWlmKGFbYltjXV0pcmV0dXJuITA7cmV0dXJuITF9CmZ1bmN0aW9uIEFzKGEpe2Z1bmN0aW9uIGIoaCxsLG4pe24mJihoW2xdPW4pfWlmKEVsKCkpe3ZhciBjPWVzKCksZDthLmluY2x1ZGVzKCJnYWRfc291cmNlIikmJihkPWMuZ2FkX3NvdXJjZSE9PXZvaWQgMD9jLmdhZF9zb3VyY2U6VXEoITEpLl9ncyk7aWYoenMoYyxhKXx8ZCl7dmFyIGU9e307YihlLCJnY2xpZCIsYy5nY2xpZCk7YihlLCJkY2xpZCIsYy5kY2xpZCk7YihlLCJnY2xzcmMiLGMuZ2Nsc3JjKTtiKGUsIndicmFpZCIsYy53YnJhaWQpO2IoZSwiZ2JyYWlkIixjLmdicmFpZCk7YnIoZnVuY3Rpb24oKXtyZXR1cm4gZX0sMyk7dmFyIGY9e30sZz0oZi5fdXA9IjEiLGYpO2IoZywiX2dzIixkKTticihmdW5jdGlvbigpe3JldHVybiBnfSwxKX19fWZ1bmN0aW9uIGtzKCl7dmFyIGE9UmooQS5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gTGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpfQpmdW5jdGlvbiBCcyhhKXtpZighWWYoMSkpcmV0dXJuIG51bGw7dmFyIGI9VXEoITApLmdhZF9zb3VyY2U7aWYoYiE9bnVsbClyZXR1cm4gQS5sb2NhdGlvbi5oYXNoPSIiLGI7aWYoWWYoMikpe2I9a3MoKTtpZihiIT1udWxsKXJldHVybiBiO3ZhciBjPWVzKCk7aWYoenMoYyxhKSlyZXR1cm4iMCJ9cmV0dXJuIG51bGx9ZnVuY3Rpb24gQ3MoYSl7dmFyIGI9QnMoYSk7YiE9bnVsbCYmYnIoZnVuY3Rpb24oKXt2YXIgYz17fTtyZXR1cm4gYy5nYWRfc291cmNlPWIsY30sNCl9CmZ1bmN0aW9uIERzKGEsYixjKXt2YXIgZD1bXTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGQ7Zm9yKHZhciBlPXt9LGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXSxoPWcuemc/Zy56ZzoiZ2NsIjtpZigoZy5sYWJlbHN8fFtdKS5pbmRleE9mKGMpPT09LTEpe2EucHVzaCgwKTt2YXIgbD0hMSxuPXZvaWQgMDtpZigobj1nLm9hKT09bnVsbD8wOm4uaW5jbHVkZXMoMikpbD0hMDt2YXIgcD12b2lkIDA7KChwPWcub2EpPT1udWxsPzA6cC5pbmNsdWRlcygxKSkmJiFlW2hdJiYobD0hMCxlW2hdPSEwKTtsJiZkLnB1c2goZyl9ZWxzZXthLnB1c2goMSk7dmFyIHE9dm9pZCAwO2lmKChxPWcub2EpPT1udWxsPzA6cS5pbmNsdWRlcygxKSllW2hdPSEwfX1yZXR1cm4gZH0KZnVuY3Rpb24gRXMoYSxiLGMsZCxlKXtlPWU9PT12b2lkIDA/ITE6ZTt2YXIgZj1bXTtjPWN8fHt9O2lmKCFCcihBcigpKSlyZXR1cm4gZjt2YXIgZz1FcihhLGUpLGg9RHMoZixnLGIpO2lmKGgubGVuZ3RoJiYhZCl7Zm9yKHZhciBsPVtdLG49ITEscD1tKGgpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlLHQ9cix1PXQudmVyc2lvbix2PXQuZ2NsaWQseD10LnRpbWVzdGFtcCx5PXQub2Esej0odC5sYWJlbHN8fFtdKS5jb25jYXQoW2JdKSxDPXZvaWQgMDtpZigoKEM9eSk9PW51bGw/MDpDLmluY2x1ZGVzKDEpKSYmIW4pe3ZhciBEPVt1LE1hdGgucm91bmQoeC8xRTMpLHZdLmNvbmNhdCh6KS5qb2luKCIuIiksST11cShjLHgsITApO0kuTWM9QXIoKTtvcShhLEQsSSk7bj0hMH12YXIgRz12b2lkIDA7ZSYmKChHPXkpPT1udWxsPzA6Ry5pbmNsdWRlcygyKSkmJmwucHVzaChuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHIse2xhYmVsczp6fSkpfWwubGVuZ3RoJiYKbXMoImdjbF9nYiIsbCxjKX1yZXR1cm4gZn0KZnVuY3Rpb24gRnMoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3ZhciBkPVtdO2I9Ynx8e307dmFyIGU9R3IoYixjKSxmPURzKGQsZSxhKTtpZihmLmxlbmd0aCl7Zm9yKHZhciBnPVtdLGg9e30sbD1tKGYpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlLHE9SHIoYi5wcmVmaXgpLHI9SXIocC56ZyxxKTtpZighcilyZXR1cm4gZDt2YXIgdD1wLHU9dC52ZXJzaW9uLHY9dC5nY2xpZCx4PXQudGltZXN0YW1wLHk9dC5vYSx6PU1hdGgucm91bmQoeC8xRTMpLEM9THIodC5sYWJlbHN8fFtdLFthXSksRD12b2lkIDA7aWYoKEQ9eSk9PW51bGw/MDpELmluY2x1ZGVzKDEpKWlmKHAuemc9PT0iYWciJiYhaC5hZyl7dmFyIEk9e30sRz0oSS5rPXYsSS5pPSIiK3osSS5iPUMsSSk7QXEocixHLDUsYix4KTtoLmFnPSEwfWVsc2UgaWYocC56Zz09PSJnYiImJiFoLmdiKXt2YXIgTj1bdSx6LHZdLmNvbmNhdChDKS5qb2luKCIuIiksUz11cShiLHgsITApO1MuTWM9CkFyKCk7b3EocixOLFMpO2guZ2I9ITB9dmFyIFc9dm9pZCAwO2MmJigoVz15KT09bnVsbD8wOlcuaW5jbHVkZXMoMikpJiZnLnB1c2gobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxwLHtsYWJlbHM6Q30pKX1nLmxlbmd0aCYmbXMoImdjbF9nYiIsZyxiKX1yZXR1cm4gZH1mdW5jdGlvbiBHcyhhLGIpe3ZhciBjPUhyKGIpLGQ9SXIoYSxjKTtpZighZClyZXR1cm4gMDt2YXIgZTtlPWE9PT0iYWciP0pyKGQpOkVyKGQpO2Zvcih2YXIgZj0wLGc9MDtnPGUubGVuZ3RoO2crKylmPU1hdGgubWF4KGYsZVtnXS50aW1lc3RhbXApO3JldHVybiBmfWZ1bmN0aW9uIEhzKGEpe2Zvcih2YXIgYj0wLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZm9yKHZhciBlPWFbZC52YWx1ZV0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWI9TWF0aC5tYXgoYixOdW1iZXIoZVtmXS50aW1lc3RhbXApKTtyZXR1cm4gYn0KZnVuY3Rpb24gSXMoYSl7dmFyIGI9TWF0aC5tYXgoR3MoImF3IixhKSxIcyhCcihBcigpKT9ScCgpOnt9KSksYz1NYXRoLm1heChHcygiZ2IiLGEpLEhzKEJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30pKTtjPU1hdGgubWF4KGMsR3MoImFnIixhKSk7cmV0dXJuIGM+Yn07dmFyIEpzPVJlZ0V4cCgiXlVBLVxcZCstXFxkKyUzQVtcXHctXSsoPzolMkNbXFx3LV0rKSooPzolM0JVQS1cXGQrLVxcZCslM0FbXFx3LV0rKD86JTJDW1xcdy1dKykqKSokIiksS3M9L15+P1tcdy1dKyg/Olwufj9bXHctXSspKiQvLExzPS9eXGQrXC5mbHNcLmRvdWJsZWNsaWNrXC5uZXQkLyxNcz0vO2dhYz0oW147P10rKS8sTnM9LztnYWNnYj0oW147P10rKS87CmZ1bmN0aW9uIE9zKGEsYil7aWYoTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpKXt2YXIgYz1CLmxvY2F0aW9uLmhyZWYubWF0Y2goYik7cmV0dXJuIGMmJmMubGVuZ3RoPT09MiYmY1sxXS5tYXRjaChKcyk/S2ooY1sxXSl8fCIiOiIifWZvcih2YXIgZD1bXSxlPW0oT2JqZWN0LmtleXMoYSkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZSxoPVtdLGw9YVtnXSxuPTA7bjxsLmxlbmd0aDtuKyspaC5wdXNoKGxbbl0uZ2NsaWQpO2QucHVzaChnKyI6IitoLmpvaW4oIiwiKSl9cmV0dXJuIGQubGVuZ3RoPjA/ZC5qb2luKCI7Iik6IiJ9CmZ1bmN0aW9uIFBzKGEsYixjKXtmb3IodmFyIGQ9QnIoQXIoKSk/UnAoIl9nYWNfZ2IiLCEwKTp7fSxlPVtdLGY9ITEsZz1tKE9iamVjdC5rZXlzKGQpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPUVzKCJfZ2FjX2diXyIrbCxhLGIsYyk7Zj1mfHxuLmxlbmd0aCE9PTAmJm4uc29tZShmdW5jdGlvbihwKXtyZXR1cm4gcD09PTF9KTtlLnB1c2gobCsiOiIrbi5qb2luKCIsIikpfXJldHVybntScjpmP2Uuam9pbigiOyIpOiIiLFFyOk9zKGQsTnMpfX1mdW5jdGlvbiBRcyhhKXt2YXIgYj1CLmxvY2F0aW9uLmhyZWYubWF0Y2gobmV3IFJlZ0V4cCgiOyIrYSsiPShbXjs/XSspIikpO3JldHVybiBiJiZiLmxlbmd0aD09PTImJmJbMV0ubWF0Y2goS3MpP2JbMV06dm9pZCAwfQpmdW5jdGlvbiBScyhhKXt2YXIgYj17fSxjLGQsZTtMcy50ZXN0KEIubG9jYXRpb24uaG9zdCkmJihjPVFzKCJnY2xncyIpLGQ9UXMoImdjbHN0IiksZT1RcygiZ2NsbHAiKSk7aWYoYyYmZCYmZSliLkVnPWMsYi5XaD1kLGIuVWg9ZTtlbHNle3ZhciBmPU5iKCksZz1NcigoYXx8Il9nY2wiKSsiX2dzIiksaD1nLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gcC5nY2xpZH0pLGw9Zy5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIGYtcC50aW1lc3RhbXB9KSxuPWcubWFwKGZ1bmN0aW9uKHApe3JldHVybiBwLm9kfSk7aC5sZW5ndGg+MCYmbC5sZW5ndGg+MCYmbi5sZW5ndGg+MCYmKGIuRWc9aC5qb2luKCIuIiksYi5XaD1sLmpvaW4oIi4iKSxiLlVoPW4uam9pbigiLiIpKX1yZXR1cm4gYn0KZnVuY3Rpb24gU3MoYSxiKXt2YXIgYz1hLnNwbGl0KCIuIiksZD1iP2Iuc3BsaXQoIi4iKTpbXSxlPWQubGVuZ3RoPT09Yy5sZW5ndGg/ZDp2b2lkIDA7cmV0dXJuIGMubWFwKGZ1bmN0aW9uKGYsZyl7dmFyIGg9e2djbGlkOmZ9O2lmKGUpe3ZhciBsPWVbZ10uc3BsaXQoIl8iKTtpZihsLmxlbmd0aD09PTIpe2gucWE9bmV3IGVyKE51bWJlcihsWzBdKSk7dmFyIG47dmFyIHA9TnVtYmVyKGxbMV0pO2lmKHA9PT0wKW49WzBdO2Vsc2V7dmFyIHE9W107cCYxJiZxLnB1c2goMSk7cCYyJiZxLnB1c2goMik7cCY0JiZxLnB1c2goMyk7cCY4JiZxLnB1c2goNCk7cCYxNiYmcS5wdXNoKDUpO249cX1oLm9hPW59fXJldHVybiBofSl9CmZ1bmN0aW9uIFRzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KSl7dmFyIGU9UXMoYyk7aWYoZSl7aWYoWWYoMTcpKXt2YXIgZj1RcyhjKyJfc3JjIik7cmV0dXJuIFNzKGUsZil9aWYoZCl7dmFyIGc9bmV3IGVyO2ZyKGcsMik7ZnIoZywzKTtyZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpnLG9hOlsxXX19KX1yZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpuZXcgZXIsb2E6WzFdfX0pfX1lbHNle2lmKGI9PT0iZ2NsaWQiKXtmb3IodmFyIGg9RXIoKGF8fCJfZ2NsIikrIl9hdyIsZCksbD1OdW1iZXIoWGZbNF09PT12b2lkIDA/MDpYZls0XSksbj1tKFVzKCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3EudGltZXN0YW1wPmwmJlFyKGgscSl9cmV0dXJuIGh9aWYoYj09PSJ3YnJhaWQiKXJldHVybiBFcigoYXx8CiJfZ2NsIikrIl9nYiIsZCk7aWYoYj09PSJicmFpZHMiKXJldHVybiBHcih7cHJlZml4OmF9LGQpfXJldHVybltdfWZ1bmN0aW9uIFVzKCl7cmV0dXJuKHdxKHZyLmF3LDQpfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLm09PT0iMSJ9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJue2djbGlkOmEuayx0aW1lc3RhbXA6TnVtYmVyKGEuaSksdmVyc2lvbjoiIixvYTpbNV19fSl9ZnVuY3Rpb24gVnMoYSl7Zm9yKHZhciBiPTAsYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2U+MCYmKGJ8PTE8PGUtMSl9cmV0dXJuIGIudG9TdHJpbmcoKX1mdW5jdGlvbiBXcyhhKXtyZXR1cm4gTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpPyEoUXMoImdjbGF3Iil8fFFzKCJnYWMiKSk6SXMoYSl9CmZ1bmN0aW9uIFhzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlO2U9Yz9GcyhhLGIsZCk6RXMoKGImJmIucHJlZml4fHwiX2djbCIpKyJfZ2IiLGEsYix2b2lkIDAsZCk7cmV0dXJuIGUubGVuZ3RoPT09MHx8ZS5ldmVyeShmdW5jdGlvbihmKXtyZXR1cm4gZj09PTB9KT8iIjplLmpvaW4oIi4iKX07CnZhciBZcz1mdW5jdGlvbihhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1raigiYWRzX3BhZ2V2aWV3IixmdW5jdGlvbigpe3JldHVybnt9fSk7aWYoY1thXSlyZXR1cm4hMTtifHwoY1thXT0hMCk7cmV0dXJuITB9LFpzPWZ1bmN0aW9uKGEpe3JldHVybiBTaihhLCJnY2xpZCBkY2xpZCBnYnJhaWQgd2JyYWlkIGdjbGF3IGdjbGRjIGdjbGhhIGdjbGdmIGdjbGdiIF9nbCIuc3BsaXQoIiAiKSwiMCIpfSxhdD1mdW5jdGlvbigpe3ZhciBhPVJqKEEubG9jYXRpb24uaHJlZiksYj12b2lkIDAsYz12b2lkIDAsZD1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfc291cmNlIiksZT1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfY2FtcGFpZ25pZCIpLGYsZz1hLmhhc2gucmVwbGFjZSgiIyIsIiIpLm1hdGNoKCRzKTtmPWc/Z1sxXTp2b2lkIDA7ZCYmZj8oYj1kLGM9MSk6ZD8oYj1kLGM9Mik6ZiYmKGI9ZixjPTMpO3JldHVybntEZzpiLFNyOmMsVGg6ZX19LGJ0PWZ1bmN0aW9uKGEpe3ZhciBiPQpPcCghMSk9PT0xP0EudG9wLmxvY2F0aW9uLmhyZWY6QS5sb2NhdGlvbi5ocmVmO3JldHVybiBhKGIpfSxjdD1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZD1ScihkKTtmb3IodmFyIGU9W10sZj0wO2Y8ZC5sZW5ndGg7ZisrKWUucHVzaChkW2ZdLmdjbGlkKTtlLmxlbmd0aCYmYi5wdXNoKGMrIjoiK2Uuam9pbigiLCIpKX0pO3JldHVybiBiLmpvaW4oIjsiKX0sZXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWR0KGEpO2lmKGQpcmV0dXJuIGQ7dmFyIGU9SHIoYik7aWYoZT09PSJfZ2NsIil7dmFyIGY9IVhvKGZwKSYmYyxnPVtdO2E9PT0iYXciP2c9YXMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKTphPT09ImRjIiYmKGc9ZHMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKSk7aWYoZy5sZW5ndGg+MClyZXR1cm4gZj9be3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsZ2NsaWQ6IjAifV06Zy5tYXAoZnVuY3Rpb24obCl7cmV0dXJue3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsCmdjbGlkOmwudmFsdWUscWE6bC5xYSxvYTpbMV19fSl9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9hPT09ImF3Ij9FcihoLE0oNTYyKSk6WnIoaCk6W119LGR0PWZ1bmN0aW9uKGEpe3ZhciBiPVRqKCJnY2wiK2EpLGM9YT09PSJkYyJ8fGE9PT0iYXciP1RqKCJnY2wiK2ErIl9zcmMiKTp2b2lkIDA7aWYoYilyZXR1cm4gU3MoYixjKX0sZnQ9ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PT0iYXcifHxhPT09ImRjInx8YT09PSJnYiIpe3ZhciBkPVRqKCJnY2wiK2EpO2lmKGQpcmV0dXJuIGQuc3BsaXQoIi4iKX12YXIgZT1IcihiKTtpZihlPT09Il9nY2wiKXt2YXIgZj0hWG8oZnApJiZjLGc7Zz1lcygpW2FdfHxbXTtpZihnLmxlbmd0aD4wKXJldHVybiBmP1siMCJdOmd9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9EcihoKTpbXX0sZ3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKCFSKGEsYil8fCFSKGEsYykpcmV0dXJuIiI7dmFyIGQ9UihhLGIpLnNwbGl0KCIuIiksZT1SKGEsYykuc3BsaXQoIi4iKTtyZXR1cm4gZC5sZW5ndGgmJgplLmxlbmd0aCYmZC5sZW5ndGg9PT1lLmxlbmd0aCYmZFswXSYmZVswXT9kLm1hcChmdW5jdGlvbihmLGcpe3JldHVybiBmKyJfIitlW2ddfSkuam9pbigiLiIpOiIifSwkcz0vXmdhZF9zb3VyY2VbXz1dKFxkKykkLztmdW5jdGlvbiBodChhLGIsYyl7dmFyIGQ9UihhLEYuRC5UYSk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0Iilmb3IodmFyIGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1kW2ddO2lmKGghPT12b2lkIDApe2g9PT1udWxsJiYoaD0iIik7dmFyIGw9ImdhcC4iK2csbj1TdHJpbmcoaCk7Yz9jKGwsbik6YltsXT1ufX19O3ZhciBpdD0hMSxqdD1bXTtmdW5jdGlvbiBrdCgpe2lmKCFpdCl7aXQ9ITA7Zm9yKHZhciBhPWp0Lmxlbmd0aC0xO2E+PTA7YS0tKWp0W2FdKCk7anQ9W119fTtmdW5jdGlvbiBsdChhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtmdW5jdGlvbiBtdChhLGIsYyl7cmV0dXJuIHR5cGVvZiBhLmFkZEV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iPyhhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCExKSwhMCk6ITF9ZnVuY3Rpb24gbnQoYSxiLGMpe3R5cGVvZiBhLnJlbW92ZUV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iJiZhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjLCExKX07ZnVuY3Rpb24gb3QoYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHN8fChhLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cz1bXSk7dmFyIGU9UHAoYS5kb2N1bWVudCk7aWYoYyl7dmFyIGY9ZnVuY3Rpb24oKXtpZihjKXt2YXIgZz1hLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cyxoPURjKGcsZSk7aD49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGcsaCwxKX1udChlLCJsb2FkIixmKTtudChlLCJlcnJvciIsZil9O210KGUsImxvYWQiLGYpO210KGUsImVycm9yIixmKX1kJiYoZS5hdHRyaWJ1dGlvblNyYz0iIik7ZS5zcmM9YjthLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cy5wdXNoKGUpfQpmdW5jdGlvbiBwdChhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvZ2VuXzIwND9pZD10Y2ZlIjtJcChhLGZ1bmN0aW9uKGQsZSl7aWYoZHx8ZD09PTApYys9IiYiK2UrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZCkpfSk7cXQoYyxiKX0KZnVuY3Rpb24gcXQoYSxiKXt2YXIgYz13aW5kb3csZDtiPWI9PT12b2lkIDA/ITE6YjtkPWQ9PT12b2lkIDA/ITE6ZDtpZihjLmZldGNoKXt2YXIgZT17a2VlcGFsaXZlOiEwLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixyZWRpcmVjdDoiZm9sbG93IixtZXRob2Q6ImdldCIsbW9kZToibm8tY29ycyJ9O2QmJihlLm1vZGU9ImNvcnMiLCJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU/ZS5hdHRyaWJ1dGlvblJlcG9ydGluZz17ZXZlbnRTb3VyY2VFbGlnaWJsZToidHJ1ZSIsdHJpZ2dlckVsaWdpYmxlOiJmYWxzZSJ9OmUuaGVhZGVycz17IkF0dHJpYnV0aW9uLVJlcG9ydGluZy1FbGlnaWJsZSI6ImV2ZW50LXNvdXJjZSJ9KTtjLmZldGNoKGEsZSl9ZWxzZSBvdChjLGEsYj09PXZvaWQgMD8hMTpiLGQ9PT12b2lkIDA/ITE6ZCl9O2Z1bmN0aW9uIHJ0KCl7dGhpcy5mYT10aGlzLmZhO3RoaXMuUj10aGlzLlJ9cnQucHJvdG90eXBlLmZhPSExO3J0LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5mYXx8KHRoaXMuZmE9ITAsdGhpcy5OKCkpfTtydC5wcm90b3R5cGVbU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9O3J0LnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuZmE/YiE9PXZvaWQgMD9hLmNhbGwoYik6YSgpOih0aGlzLlJ8fCh0aGlzLlI9W10pLGImJihhPWEuYmluZChiKSksdGhpcy5SLnB1c2goYSkpfTtydC5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2lmKHRoaXMuUilmb3IoO3RoaXMuUi5sZW5ndGg7KXRoaXMuUi5zaGlmdCgpKCl9O2Z1bmN0aW9uIHN0KGEpe2EuYWRkdGxDb25zZW50PT09dm9pZCAwfHx2ZihhLmFkZHRsQ29uc2VudCl8fChhLmFkZHRsQ29uc2VudD12b2lkIDApO2EuZ2RwckFwcGxpZXM9PT12b2lkIDB8fHdmKGEuZ2RwckFwcGxpZXMpfHwoYS5nZHByQXBwbGllcz12b2lkIDApO3JldHVybiBhLnRjU3RyaW5nIT09dm9pZCAwJiYhdmYoYS50Y1N0cmluZyl8fGEubGlzdGVuZXJJZCE9PXZvaWQgMCYmIXVmKGEubGlzdGVuZXJJZCk/MjphLmNtcFN0YXR1cyYmYS5jbXBTdGF0dXMhPT0iZXJyb3IiPzA6M312YXIgdHQ9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306YjtydC5jYWxsKHRoaXMpO3RoaXMuSD1udWxsO3RoaXMuamE9e307dGhpcy55YT0wO3RoaXMuWj1udWxsO3RoaXMuSz1hO3ZhciBjO3RoaXMudGltZW91dE1zPShjPWIudGltZW91dE1zKSE9bnVsbD9jOjUwMDt2YXIgZDt0aGlzLkVqPShkPWIuRWopIT1udWxsP2Q6ITF9O3dhKHR0LHJ0KTsKdHQucHJvdG90eXBlLk49ZnVuY3Rpb24oKXt0aGlzLmphPXt9O3RoaXMuWiYmKG50KHRoaXMuSywibWVzc2FnZSIsdGhpcy5aKSxkZWxldGUgdGhpcy5aKTtkZWxldGUgdGhpcy5qYTtkZWxldGUgdGhpcy5LO2RlbGV0ZSB0aGlzLkg7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07dmFyIHZ0PWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS5LLl9fdGNmYXBpPT09ImZ1bmN0aW9uInx8dXQoYSkhPW51bGx9Owp0dC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9e2ludGVybmFsQmxvY2tPbkVycm9yczp0aGlzLkVqfSxkPUhwKGZ1bmN0aW9uKCl7YShjKX0pLGU9MDt0aGlzLnRpbWVvdXRNcyE9PS0xJiYoZT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSI7Yy5pbnRlcm5hbEVycm9yU3RhdGU9MTtkKCl9LHRoaXMudGltZW91dE1zKSk7dmFyIGY9ZnVuY3Rpb24oZyxoKXtjbGVhclRpbWVvdXQoZSk7Zz8oYz1nLGMuaW50ZXJuYWxFcnJvclN0YXRlPXN0KGMpLGMuaW50ZXJuYWxCbG9ja09uRXJyb3JzPWIuRWosaCYmYy5pbnRlcm5hbEVycm9yU3RhdGU9PT0wfHwoYy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsaHx8KGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpKSk6KGMudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpO2EoYyl9O3RyeXt3dCh0aGlzLCJhZGRFdmVudExpc3RlbmVyIiwKZil9Y2F0Y2goZyl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsYy5pbnRlcm5hbEVycm9yU3RhdGU9MyxlJiYoY2xlYXJUaW1lb3V0KGUpLGU9MCksZCgpfX07dHQucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7YSYmYS5saXN0ZW5lcklkJiZ3dCh0aGlzLCJyZW1vdmVFdmVudExpc3RlbmVyIixudWxsLGEubGlzdGVuZXJJZCl9Owp2YXIgenQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9ZD09PXZvaWQgMD8iNzU1IjpkO3ZhciBlO2E6e2lmKGEucHVibGlzaGVyJiZhLnB1Ymxpc2hlci5yZXN0cmljdGlvbnMpe3ZhciBmPWEucHVibGlzaGVyLnJlc3RyaWN0aW9uc1tiXTtpZihmIT09dm9pZCAwKXtlPWZbZD09PXZvaWQgMD8iNzU1IjpkXTticmVhayBhfX1lPXZvaWQgMH12YXIgZz1lO2lmKGc9PT0wKXJldHVybiExO3ZhciBoPWM7Yz09PTI/KGg9MCxnPT09MiYmKGg9MSkpOmM9PT0zJiYoaD0xLGc9PT0xJiYoaD0wKSk7dmFyIGw7aWYoaD09PTApaWYoYS5wdXJwb3NlJiZhLnZlbmRvcil7dmFyIG49eHQoYS52ZW5kb3IuY29uc2VudHMsZD09PXZvaWQgMD8iNzU1IjpkKTtsPW4mJmI9PT0iMSImJmEucHVycG9zZU9uZVRyZWF0bWVudCYmYS5wdWJsaXNoZXJDQz09PSJDSCI/ITA6biYmeHQoYS5wdXJwb3NlLmNvbnNlbnRzLGIpfWVsc2UgbD0hMDtlbHNlIGw9aD09PTE/YS5wdXJwb3NlJiZhLnZlbmRvcj94dChhLnB1cnBvc2UubGVnaXRpbWF0ZUludGVyZXN0cywKYikmJnh0KGEudmVuZG9yLmxlZ2l0aW1hdGVJbnRlcmVzdHMsZD09PXZvaWQgMD8iNzU1IjpkKTohMDohMDtyZXR1cm4gbH0seHQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hKCFhfHwhYVtiXSl9LHd0PWZ1bmN0aW9uKGEsYixjLGQpe2N8fChjPWZ1bmN0aW9uKCl7fSk7dmFyIGU9YS5LO2lmKHR5cGVvZiBlLl9fdGNmYXBpPT09ImZ1bmN0aW9uIil7dmFyIGY9ZS5fX3RjZmFwaTtmKGIsMixjLGQpfWVsc2UgaWYodXQoYSkpe0F0KGEpO3ZhciBnPSsrYS55YTthLmphW2ddPWM7aWYoYS5IKXt2YXIgaD17fTthLkgucG9zdE1lc3NhZ2UoKGguX190Y2ZhcGlDYWxsPXtjb21tYW5kOmIsdmVyc2lvbjoyLGNhbGxJZDpnLHBhcmFtZXRlcjpkfSxoKSwiKiIpfX1lbHNlIGMoe30sITEpfSx1dD1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLkg9TnAoYS5LLCJfX3RjZmFwaUxvY2F0b3IiKTtyZXR1cm4gYS5IfSxBdD1mdW5jdGlvbihhKXtpZighYS5aKXt2YXIgYj1mdW5jdGlvbihjKXtpZihjLnNvdXJjZT09PQphLkgpdHJ5e3ZhciBkO2Q9KHZmKGMuZGF0YSk/SlNPTi5wYXJzZShjLmRhdGEpOmMuZGF0YSkuX190Y2ZhcGlSZXR1cm47YS5qYVtkLmNhbGxJZF0oZC5yZXR1cm5WYWx1ZSxkLnN1Y2Nlc3MpfWNhdGNoKGUpe319O2EuWj1iO210KGEuSywibWVzc2FnZSIsYil9fSxCdD1mdW5jdGlvbihhKXtpZihhLmdkcHJBcHBsaWVzPT09ITEpcmV0dXJuITA7YS5pbnRlcm5hbEVycm9yU3RhdGU9PT12b2lkIDAmJihhLmludGVybmFsRXJyb3JTdGF0ZT1zdChhKSk7cmV0dXJuIGEuY21wU3RhdHVzPT09ImVycm9yInx8YS5pbnRlcm5hbEVycm9yU3RhdGUhPT0wP2EuaW50ZXJuYWxCbG9ja09uRXJyb3JzPyhwdCh7ZTpTdHJpbmcoYS5pbnRlcm5hbEVycm9yU3RhdGUpfSksITEpOiEwOmEuY21wU3RhdHVzIT09ImxvYWRlZCJ8fGEuZXZlbnRTdGF0dXMhPT0idGNsb2FkZWQiJiZhLmV2ZW50U3RhdHVzIT09InVzZXJhY3Rpb25jb21wbGV0ZSI/ITE6ITB9O3ZhciBDdD17MTowLDM6MCw0OjAsNzozLDk6MywxMDozfTtmdW5jdGlvbiBEdCgpe3JldHVybiBraigidGNmIixmdW5jdGlvbigpe3JldHVybnt9fSl9dmFyIEV0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0dChBLHt0aW1lb3V0TXM6LTF9KX07CmZ1bmN0aW9uIEZ0KCl7dmFyIGE9RHQoKSxiPUV0KCk7dnQoYikmJiFHdCgpJiYhSHQoKSYmUCgxMjQpO2lmKCFhLmFjdGl2ZSYmdnQoYikpe0d0KCkmJihhLmFjdGl2ZT0hMCxhLnB1cnBvc2VzPXt9LGEuY21wSWQ9MCxhLnRjZlBvbGljeVZlcnNpb249MCx0bCgpLmFjdGl2ZT0hMCxhLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIik7Y3AoKTt0cnl7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGMpe2lmKGMuaW50ZXJuYWxFcnJvclN0YXRlIT09MClJdChhKSxkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKSx0bCgpLmFjdGl2ZT0hMDtlbHNlIGlmKGEuZ2RwckFwcGxpZXM9Yy5nZHByQXBwbGllcyxhLmNtcElkPWMuY21wSWQsYS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9Yy5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGUsSHQoKSYmKGEuYWN0aXZlPSEwKSwhSnQoYyl8fEd0KCl8fEh0KCkpe2EudGNmUG9saWN5VmVyc2lvbj1jLnRjZlBvbGljeVZlcnNpb247dmFyIGQ7aWYoYy5nZHByQXBwbGllcz09PQohMSl7dmFyIGU9e30sZjtmb3IoZiBpbiBDdClDdC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ITApO2Q9ZTtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyl9ZWxzZSBpZihKdChjKSl7dmFyIGc9e30saDtmb3IoaCBpbiBDdClpZihDdC5oYXNPd25Qcm9wZXJ0eShoKSlpZihoPT09IjEiKXt2YXIgbCxuPWMscD17VXI6ITB9O3A9cD09PXZvaWQgMD97fTpwO2w9QnQobik/bi5nZHByQXBwbGllcz09PSExPyEwOm4udGNTdHJpbmc9PT0idGN1bmF2YWlsYWJsZSI/IXAuaWRwY0FwcGxpZXM6KHAuaWRwY0FwcGxpZXN8fG4uZ2RwckFwcGxpZXMhPT12b2lkIDB8fHAuVXIpJiYocC5pZHBjQXBwbGllc3x8dmYobi50Y1N0cmluZykmJm4udGNTdHJpbmcubGVuZ3RoKT96dChuLCIxIiwwKTohMDohMTtnWyIxIl09bH1lbHNlIGdbaF09enQoYyxoLEN0W2hdKTtkPWd9aWYoZCl7YS50Y1N0cmluZz1jLnRjU3RyaW5nfHwidGNlbXB0eSI7YS5wdXJwb3Nlcz1kO3ZhciBxPXt9LHI9KHFbRi5ELmthXT0KYS5wdXJwb3Nlc1siMSJdPyJncmFudGVkIjoiZGVuaWVkIixxKTthLmdkcHJBcHBsaWVzIT09ITA/KGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pLHRsKCkuYWN0aXZlPSEwKToocltGLkQuWGFdPWEucHVycG9zZXNbIjMiXSYmYS5wdXJwb3Nlc1siNCJdPyJncmFudGVkIjoiZGVuaWVkIix0eXBlb2YgYS50Y2ZQb2xpY3lWZXJzaW9uPT09Im51bWJlciImJmEudGNmUG9saWN5VmVyc2lvbj49ND9yW0YuRC5tYV09YS5wdXJwb3Nlc1siMSJdJiZhLnB1cnBvc2VzWyI3Il0/ImdyYW50ZWQiOiJkZW5pZWQiOmRwKFtGLkQubWFdKSxWbyhyLHtldmVudElkOjB9LHtnZHByQXBwbGllczphP2EuZ2RwckFwcGxpZXM6dm9pZCAwLHRjU3RyaW5nOkt0KCl8fCIifSkpfX1lbHNlIGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pfSl9Y2F0Y2goYyl7SXQoYSksZHAoW0YuRC5rYSxGLkQuWGEsRi5ELm1hXSksdGwoKS5hY3RpdmU9ITB9fX0KZnVuY3Rpb24gSXQoYSl7YS50eXBlPSJlIjthLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIn1mdW5jdGlvbiBKdChhKXtyZXR1cm4gYS5ldmVudFN0YXR1cz09PSJ0Y2xvYWRlZCJ8fGEuZXZlbnRTdGF0dXM9PT0idXNlcmFjdGlvbmNvbXBsZXRlInx8YS5ldmVudFN0YXR1cz09PSJjbXB1aXNob3duIn1mdW5jdGlvbiBHdCgpe3JldHVybiBBLmd0YWdfZW5hYmxlX3RjZl9zdXBwb3J0PT09ITB9ZnVuY3Rpb24gSHQoKXtyZXR1cm4gRHQoKS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9PT0hMH1mdW5jdGlvbiBLdCgpe3ZhciBhPUR0KCk7aWYoYS5hY3RpdmUpcmV0dXJuIGEudGNTdHJpbmd9ZnVuY3Rpb24gTHQoKXt2YXIgYT1EdCgpO2lmKGEuYWN0aXZlJiZhLmdkcHJBcHBsaWVzIT09dm9pZCAwKXJldHVybiBhLmdkcHJBcHBsaWVzPyIxIjoiMCJ9CmZ1bmN0aW9uIE10KGEpe2lmKCFDdC5oYXNPd25Qcm9wZXJ0eShTdHJpbmcoYSkpKXJldHVybiEwO3ZhciBiPUR0KCk7cmV0dXJuIGIuYWN0aXZlJiZiLnB1cnBvc2VzPyEhYi5wdXJwb3Nlc1tTdHJpbmcoYSldOiEwfTt2YXIgTnQ9W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV0sT3Q9e30sUHQ9KE90W0YuRC5rYV09MSxPdFtGLkQucmFdPTIsT3QpO2Z1bmN0aW9uIFF0KGEpe2lmKGE9PT12b2lkIDApcmV0dXJuIDA7c3dpdGNoKE8oYSxGLkQuUmMpKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICExOnJldHVybiAzO2RlZmF1bHQ6cmV0dXJuIDJ9fWZ1bmN0aW9uIFJ0KCl7cmV0dXJuKE0oMTgzKT9MZigxNikuc3BsaXQoIn4iKTpMZigxNykuc3BsaXQoIn4iKSkuaW5kZXhPZih6bSgpKSE9PS0xJiZIYy5nbG9iYWxQcml2YWN5Q29udHJvbD09PSEwfWZ1bmN0aW9uIFN0KGEpe2lmKFJ0KCkpcmV0dXJuITE7dmFyIGI9UXQoYSk7aWYoYj09PTMpcmV0dXJuITE7c3dpdGNoKENsKEYuRC5YYSkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2Nhc2UgNDpyZXR1cm4gYj09PTI7Y2FzZSAwOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fQpmdW5jdGlvbiBUdCgpe3JldHVybiBFbCgpfHwhQmwoRi5ELmthKXx8IUJsKEYuRC5yYSl9ZnVuY3Rpb24gVXQoKXt2YXIgYT17fSxiO2ZvcihiIGluIFB0KVB0Lmhhc093blByb3BlcnR5KGIpJiYoYVtQdFtiXV09Q2woYikpO3JldHVybiJHMSIreWYoYVsxXXx8MCkreWYoYVsyXXx8MCl9dmFyIFZ0PXt9LFd0PShWdFtGLkQua2FdPTAsVnRbRi5ELnJhXT0xLFZ0W0YuRC5tYV09MixWdFtGLkQuWGFdPTMsVnQpO2Z1bmN0aW9uIFh0KGEpe3N3aXRjaChhKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICEwOnJldHVybiAzO2Nhc2UgITE6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19CmZ1bmN0aW9uIFl0KGEpe2Zvcih2YXIgYj0iMSIsYz0wO2M8TnQubGVuZ3RoO2MrKyl7dmFyIGQ9YixlLGY9TnRbY10sZz1BbC5kZWxlZ2F0ZWRDb25zZW50VHlwZXNbZl07ZT1nPT09dm9pZCAwPzA6V3QuaGFzT3duUHJvcGVydHkoZyk/MTJ8V3RbZ106ODt2YXIgaD10bCgpO2guYWNjZXNzZWRBbnk9ITA7dmFyIGw9aC5lbnRyaWVzW2ZdfHx7fTtlPWU8PDJ8WHQobC5pbXBsaWNpdCk7Yj1kKygiIisiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbZV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW1h0KGwuZGVjbGFyZSk8PDR8WHQobC5kZWZhdWx0KTw8MnxYdChsLnVwZGF0ZSldKX12YXIgbj1iLHA9KFJ0KCk/MTowKTw8MyxxPShFbCgpPzE6MCk8PDIscj1RdChhKTtiPW4rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW3B8CnF8cl07cmV0dXJuIGIrPSIiKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9zdG9yYWdlPDw0fEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFuYWx5dGljc19zdG9yYWdlPDwyfEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFkX3VzZXJfZGF0YV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iWyhBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM/MTowKTw8MnxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9wZXJzb25hbGl6YXRpb25dfWZ1bmN0aW9uIFp0KCl7cmV0dXJuIEJsKEYuRC5tYSk/ImEiOiItIn1mdW5jdGlvbiAkdCgpe3JldHVybiBCbSgpfHwoR3QoKXx8SHQoKSkmJkx0KCk9PT0iMSI/IjEiOiIwIn0KZnVuY3Rpb24gYXUoKXtyZXR1cm4oQm0oKT8hMDohKCFHdCgpJiYhSHQoKSkmJkx0KCk9PT0iMSIpfHwhQmwoRi5ELm1hKX0KZnVuY3Rpb24gYnUoKXt2YXIgYT0iMCIsYj0iMCIsYzt2YXIgZD1EdCgpO2M9ZC5hY3RpdmU/ZC5jbXBJZDp2b2lkIDA7dHlwZW9mIGM9PT0ibnVtYmVyIiYmYz49MCYmYzw9NDA5NSYmKGE9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2M+PjYmNjNdLGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2MmNjNdKTt2YXIgZT0iMCIsZjt2YXIgZz1EdCgpO2Y9Zy5hY3RpdmU/Zy50Y2ZQb2xpY3lWZXJzaW9uOnZvaWQgMDt0eXBlb2YgZj09PSJudW1iZXIiJiZmPj0wJiZmPD02MyYmKGU9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2ZdKTt2YXIgaD0wO0JtKCkmJihofD0xKTtMdCgpPT09IjEiJiYoaHw9Mik7R3QoKSYmKGh8PTQpO3ZhciBsO3ZhciBuPUR0KCk7bD1uLmVuYWJsZUFkdmVydGlzZXJDb25zZW50TW9kZSE9PQp2b2lkIDA/bi5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU/IjEiOiIwIjp2b2lkIDA7bD09PSIxIiYmKGh8PTgpO3RsKCkud2FpdFBlcmlvZFRpbWVkT3V0JiYoaHw9MTYpO3JldHVybiIxIithK2IrZSsiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbaF19O3ZhciBjdT17VUE6MSxBVzoyLERDOjMsRzo0LEdGOjUsR1Q6MTIsR1RNOjE0LEhBOjYsTUM6N307CmZ1bmN0aW9uIGR1KGEpe2E9YT09PXZvaWQgMD97fTphO3ZhciBiPUUoNSkuc3BsaXQoIi0iKVswXS50b1VwcGVyQ2FzZSgpLGMsZD17Y3RpZDpFKDUpLERvOkpmKDE1KSxJbzpFKDE0KSxMczpJZig3KT8yOjEsRHQ6YS5wZixjYW5vbmljYWxJZDpFKDYpLG50OihjPUFrKCkpPT1udWxsP3ZvaWQgMDpjLmNhbm9uaWNhbENvbnRhaW5lcklkLEV0OmEuVGc9PT12b2lkIDA/dm9pZCAwOmEuVGc/MTA6MTJ9O2QuY2Fub25pY2FsSWQhPT1hLm1jJiYoZC5tYz1hLm1jKTt2YXIgZT14aygpO2QuVXM9ZT9lLmNhbm9uaWNhbENvbnRhaW5lcklkOnZvaWQgMDtJZig0NSk/KGQuaGk9Y3VbYl0sZC5oaXx8KGQuaGk9MCkpOmQuaGk9RGo/MTM6MTA7SWYoNDcpPyhkLmJrPTAsZC5xcj0yKTpJZig1MCk/ZC5iaz0xOmQuYms9Mzt2YXIgZj1hLGc9ezY6ITF9O0pmKDU0KT09PTI/Z1s3XT0hMDpKZig1NCk9PT0xJiYoZ1syXT0hMCk7aWYoS2Mpe3ZhciBoPUxqKFJqKEtjKSwiaG9zdCIpO2gmJihnWzhdPQpoLm1hdGNoKC9eKHd3d1wuKT9nb29nbGV0YWdtYW5hZ2VyXC5jb20kLyk9PT1udWxsKX12YXIgbDtnWzldPShsPWYuZWYpIT1udWxsP2w6ITE7dmFyIG49RmsoKSxwO2dbMTBdPShwPW49PW51bGw/dm9pZCAwOm4uZnJvbUNvbnRhaW5lckV4ZWN1dGlvbikhPW51bGw/cDohMTtkLnpyPWc7cmV0dXJuIENmKGQsYS5Qbil9Owp2YXIgZnU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShldShhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj1SKGEsZSksZz1RKGEsSC5KLlllKTtNKDU4OSkmJmcmJihlPT09Ri5ELnphfHxlPT09Ri5ELlVhfHxlPT09Ri5ELlBlKSYmdHlwZW9mIGY9PT0ic3RyaW5nIiYmKGY9WnMoZikpO3ZhciBoPW9wKGUsZik7aCYmKCFnfHxlIT09Ri5ELkRkJiZlIT09Ri5ELktkJiZlIT09Ri5ELkVlJiZlIT09Ri5ELkJmfHwoaC52YWx1ZT0iMCIpLE0oNTA0KSYmKGU9PT1GLkQuTWQ/aC5rZXk9ImV2bmlkIjplPT09Ri5ELk5kJiYoaC5rZXk9ImV4Y2lkIikpLGJbaC5rZXldPWgudmFsdWUpfWIuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxUZzphLk0uaXNHdG1FdmVudCxlZjpRKGEsSC5KLkNjKX0pO1R0KCkmJihiLmdjcz1iLmdjc3x8VXQoKSk7Yi5nY2Q9Yi5nY2R8fFl0KGEuTSk7YXUoKSYmKGIuZG1hX2Nwcz1adCgpKTtiLmRtYT0kdCgpO3Z0KEV0KCkpJiYKKGIudGNmZD1idSgpKTt2YXIgbD1DcChhKTtsJiYoYi50YWdfZXhwPWwpO2lmKFEoYSxILkouQmspKXtiLnRmdD1TdHJpbmcoTmIoKSk7dmFyIG49cGQoKTtuIT09dm9pZCAwJiYoYi50ZmQ9U3RyaW5nKE1hdGgucm91bmQobikpKX1iLmFwdmU9IjEiO2IuYXB2Zj1uZCgpPyJmIjoibmYiO2ZvLkhbY28uaWEuY2JdIT09Ym8uTWEuVWV8fGZvLktbY28uaWEuY2JdLmlzQ29uc2VudEdyYW50ZWQoKXx8KGIubGltaXRlZF9hZHM9IjEiKTt2YXIgcD1RKGEsSC5KLlhnKTtNKDQ3NCkmJnAhPW51bGwmJnAhPT0iIiYmKGIuX2dzaWQ9cCk7aHQoYSxiLGZ1bmN0aW9uKHEscil7YltxXT1lbmNvZGVVUklDb21wb25lbnQocil9KTtyZXR1cm4gYn07dmFyIGd1PWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5lbmRwb2ludD1hO3RoaXMuZmE9Yzt0aGlzLmphPWQ7dGhpcy5wYXJhbWV0ZXJFbmNvZGluZz1lO3RoaXMuWj1iLnNsaWNlKCl9O2d1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIFhvKHRoaXMuWil9O2d1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtndS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3ZhciBhPU1tW3RoaXMuZW5kcG9pbnRdKHZvaWQgMCk7cmV0dXJuIFNiKGEsImh0dHBzOi8vIik/YS5zdWJzdHJpbmcoOCk6U2IoYSwiaHR0cDovLyIpP2Euc3Vic3RyaW5nKDcpOmF9O3ZhciBodT1mdW5jdGlvbihhLGIpe3RoaXMubWV0aG9kTmFtZT1hO3RoaXMuUj1ifTtodS5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuaXNTdXBwb3J0ZWQoKSlpZigoYz09bnVsbD92b2lkIDA6Yy5ib2R5KT09PXZvaWQgMHx8dGhpcy5IKCkpdHJ5e3RoaXMuSyhhLGIsYyl9Y2F0Y2goZCl7YS5yZChkKX1lbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgZG9lcyBub3Qgc3VwcG9ydCBhIHJlcXVlc3QgYm9keS4iKTtlbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgaXMgbm90IHN1cHBvcnRlZC4iKX07dmFyIGl1PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbWFnZVBpeGVsIiwzKX07d2EoaXUsaHUpO2l1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtpdS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTsKaXUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe1pjKGIsZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKCl7YS5vbkZhaWx1cmUodm9pZCAwKX0sYz09bnVsbD92b2lkIDA6Yy5hZil9O3ZhciBqdT1mdW5jdGlvbigpe2h1LmNhbGwodGhpcywiU2VuZEJlYWNvbiIsMSl9O3dhKGp1LGh1KTtqdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4ga2QoKX07anUucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07anUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe2pkKGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5KT9hLmpmKCk6YS5yZCh2b2lkIDApfTt2YXIga3U9ZnVuY3Rpb24oKXtodS5jYWxsKHRoaXMsIkZldGNoIiwxKX07d2Eoa3UsaHUpO2t1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07a3UucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Cmt1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtBLmZldGNoKGIsYz09bnVsbD92b2lkIDA6Yy5HYikudGhlbihmdW5jdGlvbihkKXtpZihkLm9rKWEucGUoZCk7ZWxzZSBpZihkLnN0YXR1cz09PTApYS5qZigpO2Vsc2UgYS5vbkZhaWx1cmUoIkZldGNoIGZhaWxlZCB3aXRoIHN0YXR1cyBjb2RlICIrZC5zdGF0dXMrIi4iKX0pLmNhdGNoKGZ1bmN0aW9uKGQpe2EucmQoZCl9KX07dmFyIGx1PW5ldyBpdSxtdT1uZXcganUsbnU9bmV3IGt1O3ZhciBvdT1mdW5jdGlvbigpe307b3UucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm5bXX07CnZhciBwdT1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXTpiO2d1LmNhbGwodGhpcyxhLGIsMSwhMCwyKX07d2EocHUsZ3UpO3B1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe2lmKHRoaXMuWi5sZW5ndGgpe3ZhciBiPVEoYSxILkouRGspO2lmKGIhPT12b2lkIDApcmV0dXJuIGJ9cmV0dXJuIGd1LnByb3RvdHlwZS5LLmNhbGwodGhpcyxhKX07cHUucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdShhKTthLnRhcmdldC5kZXN0aW5hdGlvbklkJiYoYy50aWQ9YS50YXJnZXQuZGVzdGluYXRpb25JZCk7Yi5tZXRob2QgaW5zdGFuY2VvZiBrdT9jLmZtdD0iOCI6Yi5tZXRob2QgaW5zdGFuY2VvZiBqdT9jLmZtdD0iNSI6Yi5tZXRob2QgaW5zdGFuY2VvZiBpdSYmKGMuZm10PSIzIik7cmV0dXJuIGN9O3B1LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTihhLGIpO3JldHVybiI/IitPYmplY3Qua2V5cyhjKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQrCiI9IitjW2RdfSkuam9pbigiJiIpfTtwdS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy55YShhLGIpLGU9e307aWYoYi5tZXRob2QgaW5zdGFuY2VvZiBrdSl7ZS5HYj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtpZih0aGlzLmVuZHBvaW50PT09NTh8fHRoaXMuZW5kcG9pbnQ9PT01NyllLkdiLm1ldGhvZD0iR0VUIjt0aGlzLmVuZHBvaW50IT09NDV8fHF1LksoYSl8fChlLkdiLmNyZWRlbnRpYWxzPSJvbWl0IixkKz0iJmdhcC51Y2ZiPTEiKX1jKGQsZSl9O3ZhciBxdT1uZXcgcHUoNDUpLHJ1PW5ldyBwdSg0NSxbXSksc3U9bmV3IHB1KDQ2LFtdKSx0dT1mdW5jdGlvbigpe3B1LmNhbGwodGhpcyw2OSl9O3dhKHR1LHB1KTt0dS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oYSl7dmFyIGI9TSg0NzQpJiYoISFSKGEsIl9nc2lkIil8fCEhUShhLEguSi5YZykpLGM9UihhLEYuRC5IZCkhPT0iMSImJighIVIoYSwiZ2NsaWQiKXx8CiEhUihhLCJkY2xpZCIpfHwhIVIoYSwiZ2Nsc3JjIil8fCEhUihhLCJhdWlkIikpO3JldHVybiBifHxjfTt0dS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1KGEpLGQ9bHAoYSxjKXx8e307T2JqZWN0LmtleXMoZCkubGVuZ3RoPjAmJihiLm1ldGhvZCBpbnN0YW5jZW9mIGt1P2QuZm10PSI4IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGp1P2QuZm10PSI1IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGl1JiYoZC5mbXQ9IjMiKSk7cmV0dXJuIGR9O3ZhciB1dT1uZXcgdHUsdnU9ZnVuY3Rpb24oKXtwdS5jYWxsKHRoaXMsNDUpfTt3YSh2dSxwdSk7dnUucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2cvZC9jY20vY29sbGVjdCJ9O3Z1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9cHUucHJvdG90eXBlLk4uY2FsbCh0aGlzLGEsYik7Y1siZ2FwLjFwZmIiXT0iMSI7cmV0dXJuIGN9O3ZhciB3dT1mdW5jdGlvbihhKXtwdS5jYWxsKHRoaXMsYSxbImFkX3N0b3JhZ2UiLAoiYWRfdXNlcl9kYXRhIl0pfTt3YSh3dSxwdSk7d3UucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1wdS5wcm90b3R5cGUuTi5jYWxsKHRoaXMsYSxiKTtyZXR1cm4gaHAoYyl9O3ZhciB4dT1uZXcgd3UoNTgpLHl1PW5ldyB3dSg1NyksenU9ZnVuY3Rpb24oKXt9O3dhKHp1LG91KTt6dS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1xdS5LKGEpLGM9Yj9xdTpzdSxkPVt7ZW5kcG9pbnQ6YyxtZXRob2Q6bmQoKT9udTptdX0se2VuZHBvaW50OmMsbWV0aG9kOmx1fV07Yj9NKDUxNykmJklmKDQ3KSYmZC5wdXNoKHtlbmRwb2ludDpuZXcgdnUsbWV0aG9kOm51fSk6TSg2MDApJiZkLnB1c2goe2VuZHBvaW50OnJ1LG1ldGhvZDpudX0pO3JldHVybiBkfTt6dS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPSEhUShhLEguSi52ZCksZD1SKGEsRi5ELlBkKT09PSIxIixlPVIoYSxGLkQuSGQpPT09IjEiLGY9cXUuSyhhKSxnPWMmJmQmJiFlJiZmO2lmKGcpe3ZhciBoPQpRYygpfHxPYygpP3h1Onl1O2IucHVzaChbe2VuZHBvaW50OmgsbWV0aG9kOm51fSx7ZW5kcG9pbnQ6aCxtZXRob2Q6bHV9XSl9ZiYmKGd8fFEoYSxILkouaGQpKSYmYi5wdXNoKFt7ZW5kcG9pbnQ6dXUsbWV0aG9kOm5kKCk/bnU6bHV9XSk7cmV0dXJuIGJ9O3ZhciBBdT1uZXcgenU7dmFyIFQ9e1c6e0prOjEsbmo6MixGazozLG1sOjQsR2s6NSx5ZDo2LGtsOjcsTXE6OCxxbjo5LEhrOjEwLElrOjExLEZoOjEyLERtOjEzLEFtOjE0LENtOjE1LHptOjE2LEJtOjE3LHltOjE4LFRvOjE5LHhxOjIwLHlxOjIxLGZqOjIyLHVuOjI0LE9tOjI1LFNrOjI2LFRrOjI3LFJrOjI4LFVrOjI5LHJqOjMwLE9rOjMxLFpvOjMyfX07VC5XW1QuVy5Ka109IkFMTE9XX0lOVEVSRVNUX0dST1VQUyI7VC5XW1QuVy5ual09IlNFUlZFUl9DT05UQUlORVJfVVJMIjtULldbVC5XLkZrXT0iQURTX0RBVEFfUkVEQUNUSU9OIjtULldbVC5XLm1sXT0iQ1VTVE9NRVJfTElGRVRJTUVfVkFMVUUiO1QuV1tULlcuR2tdPSJBTExPV19DVVNUT01fU0NSSVBUUyI7VC5XW1QuVy55ZF09IkFOWV9DT09LSUVfUEFSQU1TIjtULldbVC5XLmtsXT0iQ09PS0lFX0VYUElSRVMiO1QuV1tULlcuTXFdPSJMRUdBQ1lfRU5IQU5DRURfQ09OVkVSU0lPTl9KU19WQVJJQUJMRSI7VC5XW1QuVy5xbl09IlJFU1RSSUNURURfREFUQV9QUk9DRVNTSU5HIjsKVC5XW1QuVy5Ia109IkFMTE9XX0RJU1BMQVlfRkVBVFVSRVMiO1QuV1tULlcuSWtdPSJBTExPV19HT09HTEVfU0lHTkFMUyI7VC5XW1QuVy5GaF09IkdFTkVSQVRFRF9UUkFOU0FDVElPTl9JRCI7VC5XW1QuVy5EbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOS05PV04iO1QuV1tULlcuQW1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9TVEFOREFSRCI7VC5XW1QuVy5DbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOSVFVRSI7VC5XW1QuVy56bV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1BFUl9TRVNTSU9OIjtULldbVC5XLkJtXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfVFJBTlNBQ1RJT05TIjtULldbVC5XLnltXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfSVRFTVNfU09MRCI7VC5XW1QuVy5Ub109IkFEU19PR1RfVjFfVVNBR0UiO1QuV1tULlcueHFdPSJGT1JNX0lOVEVSQUNUSU9OX1BFUk1JU1NJT05fREVOSUVEIjsKVC5XW1QuVy55cV09IkZPUk1fU1VCTUlUX1BFUk1JU1NJT05fREVOSUVEIjtULldbVC5XLmZqXT0iTUlDUk9UQVNLX05PVF9TVVBQT1JURUQiO1QuV1tULlcudW5dPSJTRVRfRU5DUllQVEVEX0RBVEFfVE9fQ0FDSEUiO1QuV1tULlcuT21dPSJHRVRfRU5DUllQVEVEX0RBVEFfRlJPTV9DQUNIRSI7VC5XW1QuVy5Ta109IkNPTkZJR19ERVRFQ1RFRF9XSVRIX05PX1BBUkFNIjtULldbVC5XLlRrXT0iQ09ORklHX0RFVEVDVEVEX1dJVEhfUEFSQU0iO1QuV1tULlcuUmtdPSJDT05GSUdfQ09OU0VOVF9TRVRfQkVGT1JFIjtULldbVC5XLlVrXT0iQ09ORklHX1NFVF9VU0VEX0JFRk9SRSI7VC5XW1QuVy5yal09IlNIQURPV19ET01fQVVUT19QSUkiO1QuV1tULlcuT2tdPSJDQ0RfVVNFUl9EQVRBX1dFQl9PTl9DT05GSUciO1QuV1tULlcuWm9dPSJCTEVOREVEX1VTRVJfREFUQSI7dmFyIEJ1PXt9LEN1PShCdVtGLkQudWldPVQuVy5KayxCdVtGLkQuZGRdPVQuVy5uaixCdVtGLkQueWNdPVQuVy5uaixCdVtGLkQubWJdPVQuVy5GayxCdVtGLkQuR2VdPVQuVy5tbCxCdVtGLkQucmldPVQuVy5HayxCdVtGLkQuSmRdPVQuVy55ZCxCdVtGLkQubmJdPVQuVy55ZCxCdVtGLkQuTGJdPVQuVy55ZCxCdVtGLkQuSWRdPVQuVy55ZCxCdVtGLkQudmNdPVQuVy55ZCxCdVtGLkQuVGJdPVQuVy55ZCxCdVtGLkQuQ2JdPVQuVy5rbCxCdVtGLkQuV2JdPVQuVy5xbixCdVtGLkQuaGhdPVQuVy5IayxCdVtGLkQuU2NdPVQuVy5JayxCdSksRHU9e30sRXU9KER1LnVua25vd249VC5XLkRtLER1LnN0YW5kYXJkPVQuVy5BbSxEdS51bmlxdWU9VC5XLkNtLER1LnBlcl9zZXNzaW9uPVQuVy56bSxEdS50cmFuc2FjdGlvbnM9VC5XLkJtLER1Lml0ZW1zX3NvbGQ9VC5XLnltLER1KTt2YXIgRnU9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsYik7YyYmKGEuSFtiXT0hMCl9LHZiPW5ldyBmdW5jdGlvbigpe3RoaXMuSD1bXX07ZnVuY3Rpb24gR3UoYSl7RnUodmIsYSwhMSl9ZnVuY3Rpb24gSHUoYSxiKXt2YXIgYz1iPT09dm9pZCAwPyExOmIsZD12YjtjPWM9PT12b2lkIDA/ITE6Yztmb3IodmFyIGU9T2JqZWN0LmtleXMoYSksZj1tKE9iamVjdC5rZXlzKEN1KSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5pbmNsdWRlcyhoKSYmRnUoZCxDdVtoXSxjKX19O2Z1bmN0aW9uIEl1KGEsYil7YT9hLnRoZW4oYik6Yih2b2lkIDApfWZ1bmN0aW9uIEp1KGEpe3JldHVybiBQcm9taXNlLmFsbFNldHRsZWQoYSkudGhlbihmdW5jdGlvbihiKXtyZXR1cm4gYi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMuc3RhdHVzPT09ImZ1bGZpbGxlZCJ9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGMudmFsdWV9KX0pfWZ1bmN0aW9uIEt1KCl7dmFyIGEsYjtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2E9YztiPWR9KSxyZXNvbHZlOmEscmVqZWN0OmJ9fTtmdW5jdGlvbiBMdShhLGIsYyxkLGUsZil7dmFyIGc9Yy5zbGljZSgpLGg7ZD09bnVsbHx8KGg9ZC51dik9PW51bGx8fGguY2FsbChkLGEsYixjLGUpO3ZhciBsPUt1KCksbj1sLnByb21pc2UscD1sLnJlc29sdmUscT1bXSxyPWZ1bmN0aW9uKCl7cChxKTt2YXIgdTtkPT1udWxsfHwodT1kLlJzKT09bnVsbHx8dS5jYWxsKGQsYSxiLGMsZSxxKX0sdD1mdW5jdGlvbigpe3ZhciB1PWcuc2hpZnQoKTt1P3UubWV0aG9kLmlzU3VwcG9ydGVkKCk/TXUoYSxiLHUuZW5kcG9pbnQsZCxxLHUubWV0aG9kLGUsZix0LHIpOnQoKTpyKCl9O3QoKTtyZXR1cm4gbn0KZnVuY3Rpb24gTXUoYSxiLGMsZCxlLGYsZyxoLGwsbil7dmFyIHA9Yy5SKGEpLHE9e3RrOmIsZW5kcG9pbnQ6Yyxpc1ByaW1hcnk6ZyxzYjp2b2lkIDAscGs6ZixqdDp7fX0scj0hMSx0PWZ1bmN0aW9uKHosQyl7aWYocilQKDE4Nyk7ZWxzZSBpZihyPSEwLCF1KXt2YXIgRD1DfHx7fSxJPUQuYm9keSxHPUQuR2IsTj1ELmFmO0M9T2JqZWN0LmZyZWV6ZShuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LEk/e2JvZHk6SX06e30sRz97R2I6R306e30sTj97YWY6Tn06e30pKTtpZihJJiYhZi5IKCkpeCgpLGwoKTtlbHNle3ZhciBTPU51KHopLFc9cFswXT09PSIvIj8iIitwK1M6Imh0dHBzOi8vIitwK1M7cS5zYj1XO3EuanQ9Qzt2YXIgZWE7ZD09bnVsbHx8KGVhPWQuU3MpPT1udWxsfHxlYS5jYWxsKGQsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHEpKTt2YXIgamE9e2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLmVuZHBvaW50LApldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9O2YuUj09PXZvaWQgMHx8Yy5mYSE9PTImJihjLmZhIT09MXx8ZS5sZW5ndGgpfHxrbi5yZWdpc3RlcihqYSxmLlIsVyk7dmFyIGZhPWZ1bmN0aW9uKGRhLG1hKXt4KCk7aWYocS5zdGF0dXMhPT12b2lkIDApcmV0dXJuIFAoMTkyKSwhMTtxLnN0YXR1cz1kYTtlLnB1c2gocSk7dmFyIFBhO2Q9PW51bGx8fChQYT1kLnVvKT09bnVsbHx8UGEuY2FsbChkLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxxKSxtYSk7cmV0dXJuITB9LHNhPXtGbzpqYSxyZDpmdW5jdGlvbigpe2ZhKDIpJiZsKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2ZhKDMpJiZsKCl9LHBlOmZ1bmN0aW9uKGRhKXtmYShkYS5zdGF0dXM9PT0wPzE6ZGEub2s/MDozLGRhKSYmbigpfSxqZjpmdW5jdGlvbigpe2ZhKDEpJiZuKCl9fTtPdShjLGEsVyxTLEkpO2Yuc2VuZFJlcXVlc3Qoc2EsVyxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LAp7fSxJJiZ7Ym9keTpJfSxHJiZ7R2I6R30sTiYme2FmOk59KSl9fX0sdT0hMSx2LHg9ZnVuY3Rpb24oKXt2IT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQodiksdj12b2lkIDApfTtNKDU3NCkmJih2PUEuc2V0VGltZW91dChmdW5jdGlvbigpe3Y9dm9pZCAwO3U9ITA7aWYocS5zdGF0dXM9PT12b2lkIDApe3Euc3RhdHVzPTQ7cS5zYj09PXZvaWQgMCYmKHEuc2I9IltmYWlsZWQgdG8gYnVpbGRdICIrcCk7ZS5wdXNoKHEpO3ZhciB6O2Q9PW51bGx8fCh6PWQudW8pPT1udWxsfHx6LmNhbGwoZCxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scSksdm9pZCAwKTtsKCl9fSw1RTMpKTt2YXIgeT17SWM6cCxtZXRob2Q6Zix5djplLGlzUHJpbWFyeTpnLEN0Omh9O3RyeXtjLkgoYSx5LHQpfWNhdGNoKHope3goKSxQKDE4OCksbCgpfX0KZnVuY3Rpb24gT3UoYSxiLGMsZCxlKXtpZihhLmphKXt2YXIgZj1iLnRhcmdldC5kZXN0aW5hdGlvbklkLGc9YS5lbmRwb2ludDtpZihnPT09NDV8fGc9PT00Nnx8Zz09PTY5fHxnPT09NTh8fGc9PT01Nyl7dmFyIGg9L1s/Jl10aWRzPShbXiZdKykvLmV4ZWMoZCk7Zj1oP2RlY29kZVVSSUNvbXBvbmVudChoWzFdKS5zcGxpdCgifiIpOltmXX1NbCh7dGFyZ2V0SWQ6ZixyZXF1ZXN0Om5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se3VybDpjLHBhcmFtZXRlckVuY29kaW5nOmEucGFyYW1ldGVyRW5jb2RpbmcsZW5kcG9pbnQ6YS5lbmRwb2ludH0sZT97cG9zdEJvZHk6ZX06e30pLHFiOntldmVudElkOmIuTS5ldmVudElkLHByaW9yaXR5SWQ6Yi5NLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fQpmdW5jdGlvbiBOdShhKXtyZXR1cm4gYSYmYSE9PSI/Ij9hWzBdIT09Ij8iPyI/Ii5jb25jYXQoYSk6YToiIn07ZnVuY3Rpb24gUHUoYSxiLGMsZCxlKXt2YXIgZjtlPT1udWxsfHwoZj1lLnZ2KT09bnVsbHx8Zi5jYWxsKGUsYSxiKTtpZighYy5sZW5ndGgpe3ZhciBnO2U9PW51bGx8fChnPWUuVHMpPT1udWxsfHxnLmNhbGwoZSxhLGIsW10pO3JldHVybiBQcm9taXNlLnJlc29sdmUoW10pfXZhciBoPVtdLGw9e3RrOmIsbWs6YyxqazpkfTtoLnB1c2goTHUoYSxiLGMsZSwhMCxsKSk7Zm9yKHZhciBuPW0oZCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpaC5wdXNoKEx1KGEsYixwLnZhbHVlLGUsITEsbCkpO3JldHVybiBKdShoKS50aGVuKGZ1bmN0aW9uKHEpe2Zvcih2YXIgcj1bXSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpci5wdXNoLmFwcGx5KHIsdyh1LnZhbHVlKSk7dmFyIHY7ZT09bnVsbHx8KHY9ZS5Ucyk9PW51bGx8fHYuY2FsbChlLGEsYixyKTtyZXR1cm4gcn0pfTtmdW5jdGlvbiBRdShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2I9PW51bGx8fChkPWIud3YpPT1udWxsfHxkLmNhbGwoYixhLGMpO2Zvcih2YXIgZT1bXSxmPW0oYyksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpZS5wdXNoKFJ1KGEsZy52YWx1ZSkpO2Zvcih2YXIgaD1bXSxsPW0oZSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aC5wdXNoKFB1KGEscC50ayxwLm1rLHAuamssYikpfUp1KGgpLnRoZW4oZnVuY3Rpb24ocSl7Zm9yKHZhciByPVtdLHQ9bShxKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSlyLnB1c2guYXBwbHkocix3KHUudmFsdWUpKTt2YXIgdjtiPT1udWxsfHwodj1iLlFzKT09bnVsbHx8di5jYWxsKGIsYSxjLHIpfSl9CmZ1bmN0aW9uIFJ1KGEsYil7dmFyIGM9ZnVuY3Rpb24oZil7cmV0dXJuIGYubWV0aG9kLmlzU3VwcG9ydGVkKCkmJmYuZW5kcG9pbnQuaXNTdXBwb3J0ZWQoYSkmJmYuZW5kcG9pbnQuSyhhKX0sZD0oYi5IKGEpfHxbXSkuZmlsdGVyKGMpLGU9W107ZC5sZW5ndGgmJihlPShiLksoYSl8fFtdKS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuZmlsdGVyKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmLmxlbmd0aD4wfSkpO3JldHVybnt0azpiLG1rOmQsams6ZX19Owp2YXIgU3U9ZnVuY3Rpb24oYSxiKXtpZihNKDUxNykmJklmKDQ3KSYmYT09PTQ1KXJldHVybiBYaigpKyIvZy9kL2NjbS9jb2xsZWN0PyIrYi5zcGxpdCgiPyIpWzFdKyImZ2FwLjFwZmI9MSJ9LFd1PWZ1bmN0aW9uKCl7dmFyIGE9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGEubGVuZ3RoKXtmb3IodmFyIGI9e30sYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9VHUoZS5rZSwiYXB2YyIpLGc9VHUoZS5rZSwidGZ0IiksaD1UdShlLmtlLCJ0ZmQiKSxsPVR1KGUua2UsInRpZCIpLG49Tm0oZS5lbmRwb2ludCxlLmtlKSxwPWJbbl09YltuXXx8e3hrOltdLFpoOltdfTtwLlpoLnB1c2goZSk7bD8ocC54ay5wdXNoKGwpLHAudWR8fChwLnVkPWwpKTpwLnhrLnB1c2goIiIpO2Y9PT0iMSImJihwLlFuPSEwKTtpZihnfHxoKXAuTm49ITB9YS5sZW5ndGg9MDtmb3IodmFyIHE9bShPYmplY3Qua2V5cyhiKSkscj1xLm5leHQoKSx0PXt9OyFyLmRvbmU7dD0Ke3lrOnZvaWQgMH0scj1xLm5leHQoKSl7dmFyIHU9ci52YWx1ZSx2PWJbdV07dC55az12LnhrO3ZhciB4PXQueWsuZmlsdGVyKGZ1bmN0aW9uKEQpe3JldHVybiBmdW5jdGlvbihJLEcpe3JldHVybiBELnlrLmluZGV4T2YoSSk9PT1HfX0odCkpLmZpbHRlcihmdW5jdGlvbihEKXtyZXR1cm4hIUR9KTtpZihNKDQyNykpe3ZhciB5PVV1KHYseCk7UXUoeSx2b2lkIDAsQXUpfWVsc2V7dmFyIHo9dSsiJmFwdmM9Iisodi5Rbj8iMSI6IjAiKTt4Lmxlbmd0aCYmKHorPSImdGlkcz0iK3guam9pbigifiIpKTt2LnVkJiYoeis9IiZ0aWQ9Iit2LnVkKTtpZih2Lk5uKXt6Kz0iJnRmdD0iK1N0cmluZyhOYigpKTt2YXIgQz1wZCgpO0MhPT12b2lkIDAmJih6Kz0iJnRmZD0iK1N0cmluZyhNYXRoLnJvdW5kKEMpKSl9VnUodi5aaFswXS5ldmVudCx6LHYuWmhbMF0uZW5kcG9pbnQseC5sZW5ndGg/eDpbIiJdKX19fX0sVHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hW2JdO2lmKGMhPT12b2lkIDApcmV0dXJuIGRlbGV0ZSBhW2JdLApjfSxWdT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxmPWZ1bmN0aW9uKGwsbil7dmFyIHA9YitYdShsKTtUbChwLGEsYyxkKTtyZXR1cm4gbihwKX07aWYobmQoKSl7dmFyIGc9ZnVuY3Rpb24oKXt9LGg9U3UoYyxiKTtoIT09dm9pZCAwJiYoZz1mdW5jdGlvbigpe1luKGUsaCtYdSg4KSx2b2lkIDAse1FnOiEwfSl9KTtmKDgsZnVuY3Rpb24obCl7WW4oZSxsLHZvaWQgMCx7UWc6ITB9LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbigpe1pjKGIrWHUoMyksZnVuY3Rpb24oKXt9LGcpfSl9KX1lbHNlIGYoNSxmdW5jdGlvbihsKXtyZXR1cm4gV24oZSxsKX0pfHxaYyhiK1h1KDMpKX0sVXU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLlpoWzBdLGQ9eyJfJmFwdmMiOmEuUW4/IjEiOiIwIn07Yi5sZW5ndGg+MCYmKGRbIl8mdGlkcyJdPQpiLmpvaW4oIn4iKSk7aWYoYS5Obil7ZFsiXyZ0ZnQiXT1TdHJpbmcoTmIoKSk7dmFyIGU9cGQoKTtlIT09dm9pZCAwJiYoZFsiXyZ0ZmQiXT1TdHJpbmcoTWF0aC5yb3VuZChlKSkpfXJldHVybiBZdShjLmV2ZW50LGEudWR8fCIiLGQpfSxZdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLnRhcmdldCx7ZGVzdGluYXRpb25JZDpifSksZT1adShhLHt0YXJnZXQ6ZH0pO2J8fFUoZSxGLkQuUWUpO2Zvcih2YXIgZj1tKE9iamVjdC5rZXlzKGMpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtVKGUsaCxjW2hdKX1yZXR1cm4gZX0sWHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgODpjYXNlIDM6Y2FzZSA1OnJldHVybiImZm10PSIrYTtkZWZhdWx0OnJldHVybiIifX0sJHU9ZnVuY3Rpb24oYSxiKXthPVp1KGEpO1YoYSxILkouRGssWG8oZnApKTtUdCgpJiZVKGEsIl8mZ2NzIixVdCgpKTsKVShhLCJfJmdjZCIsWXQoYS5NKSk7dmFyIGM9WG8oZnApPzQ1OjQ2LGQ9ZnVuY3Rpb24oKXt2YXIgZj1iLnRpZDtpZihNKDQyNykpe3ZhciBnPVl1KGEsZixiKTtRdShnLHZvaWQgMCxBdSl9ZWxzZXt2YXIgaD1ObShjLGIpO1Z1KGEsaCxjLFtmXSl9fTtpZih5YihBLnF1ZXVlTWljcm90YXNrKSl7dmFyIGU9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGUubGVuZ3RoPT09MCl0cnl7QS5xdWV1ZU1pY3JvdGFzayhXdSl9Y2F0Y2goZil7R3UoVC5XLmZqKTtkKCk7cmV0dXJufWI9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxiKTtlLnB1c2goe2V2ZW50OmEsa2U6YixlbmRwb2ludDpjfSl9ZWxzZSBHdShULlcuZmopLGQoKX07dmFyIGF2PWZ1bmN0aW9uKGEsYixjLGQpe2d1LmNhbGwodGhpcyxhLGIsYz09PXZvaWQgMD8xOmMsZD09PXZvaWQgMD8hMTpkLDMsdm9pZCAwKX07d2EoYXYsZ3UpO2F2LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPVIoYSxGLkQueWkpO3JldHVybiBiKyIvIitjKyIvIn07YXYucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMueWEoYSxndS5wcm90b3R5cGUuUi5jYWxsKHRoaXMsYSkpfTt2YXIgWD17Vjp7TWs6ImNhbGxfY29udmVyc2lvbiIsemQ6ImNjbV9jb252ZXJzaW9uIixRazoiY29tbW9uX2F3Iix4YToiY29udmVyc2lvbiIsd3E6ImZsb29kbGlnaHQiLFlkOiJnYV9jb252ZXJzaW9uIixaZDoiZ2NwX3JlbWFya2V0aW5nIixLYToicGFnZV92aWV3Iix1YjoicmVtYXJrZXRpbmciLE9iOiJ1c2VyX2RhdGFfbGVhZCIsRmI6InVzZXJfZGF0YV93ZWIifX07ZnVuY3Rpb24gYnYoYSxiKXtiJiZHYihiLGZ1bmN0aW9uKGMsZCl7dHlwZW9mIGQhPT0ib2JqZWN0IiYmZCE9PXZvaWQgMCYmKGFbIjFwLiIrY109U3RyaW5nKGQpKX0pfTsKdmFyIGN2PWZ1bmN0aW9uKGEsYil7dmFyIGM9UihhLEYuRC5zaCk7aWYoYylmb3IodmFyIGQ9bShPYmplY3Qua2V5cyhjKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1jW2ZdO2chPW51bGwmJihiWyJndG1kLiIrZl09U3RyaW5nKGcpKX19LGd2PWZ1bmN0aW9uKGEpe3ZhciBiPWR2KGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1ldihhKS5WbixkPWZ2KGMpfHwiIjtyZXR1cm4gYi5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9ZnYoZSk7cmV0dXJuIiIrZCsoZCYmZj8iOyI6IiIpK2Z9KX19LGR2PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1odihhKSxjPXt9LGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZSxnPXZvaWQgMDtpZihmLmhhc093blByb3BlcnR5KCJnb29nbGVfYnVzaW5lc3NfdmVydGljYWwiKSl7Zz1mLmdvb2dsZV9idXNpbmVzc192ZXJ0aWNhbDt2YXIgaD17fTtjW2ddPWNbZ118fChoLmdvb2dsZV9idXNpbmVzc192ZXJ0aWNhbD0KZyxoKX1lbHNlIGc9IiIsYy5oYXNPd25Qcm9wZXJ0eShnKXx8KGNbZ109e30pO3ZhciBsPWNbZ10sbjtmb3IobiBpbiBmKW4hPT0iZ29vZ2xlX2J1c2luZXNzX3ZlcnRpY2FsIiYmKG4gaW4gbHx8KGxbbl09W10pLGxbbl0ucHVzaChmW25dKSl9cmV0dXJuIE9iamVjdC5rZXlzKGMpLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gY1twXX0pfSxodj1mdW5jdGlvbihhKXt2YXIgYj1SKGEsRi5ELkhhKTtyZXR1cm4gYiYmYi5sZW5ndGg/Yi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuISFjfSkubWFwKGZ1bmN0aW9uKGMpe3ZhciBkPXt9O3JldHVybiBkLmlkPWlpKGMpLGQub3JpZ2luPWMub3JpZ2luLGQuZGVzdGluYXRpb249Yy5kZXN0aW5hdGlvbixkLnN0YXJ0X2RhdGU9Yy5zdGFydF9kYXRlLGQuZW5kX2RhdGU9Yy5lbmRfZGF0ZSxkLmxvY2F0aW9uX2lkPWMubG9jYXRpb25faWQsZC5nb29nbGVfYnVzaW5lc3NfdmVydGljYWw9Yy5nb29nbGVfYnVzaW5lc3NfdmVydGljYWwsZH0pOltdfSwKaWk9ZnVuY3Rpb24oYSl7YS5pdGVtX2lkIT1udWxsJiYoYS5pZCE9bnVsbD8oUCgxMzgpLGEuaWQhPT1hLml0ZW1faWQmJlAoMTQ4KSk6UCgxNTMpKTtyZXR1cm4gamkoYSl9LGZ2PWZ1bmN0aW9uKGEpe2lmKGEmJnR5cGVvZiBhPT09Im9iamVjdCImJiFBcnJheS5pc0FycmF5KGEpKXJldHVybiBPYmplY3Qua2V5cyhhKS5tYXAoZnVuY3Rpb24oYil7dmFyIGM9aXYoYik7aWYoYyl7dmFyIGQ9YVtiXSxlPUFycmF5LmlzQXJyYXkoZCk/anYoZCk6aXYoZCk7aWYoZSE9PXZvaWQgMClyZXR1cm4gYysiPSIrZX19KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIhPT12b2lkIDB9KS5qb2luKCI7Iil9LGp2PWZ1bmN0aW9uKGEpe3ZhciBiPWEubWFwKGl2KS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMhPT12b2lkIDB9KTtyZXR1cm4gYi5sZW5ndGg/Yi5qb2luKCIsIik6dm9pZCAwfSxpdj1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj10eXBlb2YgYTtpZihiIT09Im9iamVjdCImJgpiIT09ImZ1bmN0aW9uIilyZXR1cm4gU3RyaW5nKGEpLnJlcGxhY2UoLywvZywiXFwsIikucmVwbGFjZSgvOy9nLCJcXDsiKS5yZXBsYWNlKC89L2csIlxcPSIpfX0sa3Y9ZnVuY3Rpb24oYSl7cmV0dXJuIE9iamVjdC5rZXlzKGEpLm1hcChmdW5jdGlvbihiKXt2YXIgYz1hW2JdO2lmKGMhPW51bGwmJihjIT09IiJ8fHlnW2JdKSlyZXR1cm4gYz09PSEwfHxjPT09ITE/YisiPSIrKGM/MTowKTpiKyI9IitlbmNvZGVVUklDb21wb25lbnQoYyl9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuISFifSkuam9pbigiJiIpfSxsdj1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKSxjPXt9LGQ9UShhLEguSi5FYik7aWYoYj09PVguVi54YXx8Yj09PVguVi51Ynx8Yj09PVguVi5ZZHx8Yj09PVguVi56ZHx8Yj09PVguVi5aZCljLnJhbmRvbT0iIitkO2I9PT1YLlYueGF8fGI9PT1YLlYudWJ8fGI9PT1YLlYuemR8fGI9PT1YLlYuWmQ/KGMuY3Y9IjExIixjLmZzdD0iIitkLGMuZm10PSIzIiwKYy5iZz0iZmZmZmZmIixjLmd1aWQ9Ik9OIixjLmFzeW5jPSIxIixjLmVuPWEuZXZlbnROYW1lKTpiPT09WC5WLllkJiYoYy5jdj0iMTEiLGMudGlkPWEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsYy5mc3Q9IiIrZCxjLmZtdD0iOCIsYy5lbj1hLmV2ZW50TmFtZSk7dmFyIGU9QnMoWyJhdyIsImRjIl0pO2UhPW51bGwmJihjLmdhZF9zb3VyY2U9ZSk7Yy5ndG09ZHUoe21jOlEoYSxILkouTmIpLFRnOmEuTS5pc0d0bUV2ZW50LGVmOlEoYSxILkouQ2MpfSk7YiE9PVguVi51YiYmVHQoKSYmKGMuZ2NzPVV0KCkpO2MuZ2NkPVl0KGEuTSk7YXUoKSYmKGMuZG1hX2Nwcz1adCgpKTtjLmRtYT0kdCgpO3Z0KEV0KCkpJiYoYy50Y2ZkPWJ1KCkpO3ZhciBmPUNwKGEpO2YmJihjLnRhZ19leHA9Zik7Zm8uSFtjby5pYS5jYl0hPT1iby5NYS5VZXx8Zm8uS1tjby5pYS5jYl0uaXNDb25zZW50R3JhbnRlZCgpfHwoYy5saW1pdGVkX2Fkcz0iMSIpO1IoYSxGLkQuYmQpJiZmaShSKGEsRi5ELmJkKSxjKTtpZihSKGEsCkYuRC50Yikpe3ZhciBnPVIoYSxGLkQudGIpO2cmJihnLmxlbmd0aD09PTI/Z2koYywiaGwiLGcpOmcubGVuZ3RoPT09NSYmKGdpKGMsImhsIixnLnN1YnN0cmluZygwLDIpKSxnaShjLCJnbCIsZy5zdWJzdHJpbmcoMyw1KSkpKX12YXIgaD1RKGEsSC5KLlllKSxsPWZ1bmN0aW9uKEksRyl7dmFyIE49UihhLEcpO04mJihjW0ldPWg/WnMoTik6Til9O2woInVybCIsRi5ELnphKTtsKCJyZWYiLEYuRC5VYSk7bCgidG9wIixGLkQuUGUpO3ZhciBuPWd0KGEsRi5ELkJkLEYuRC5DZCk7biYmKGMuZ2NsYXdfc3JjPW4pO3ZhciBwPWd0KGEsRi5ELmZoLEYuRC5naCk7cCYmKGMuZ2NsZ2Jfc3JjPXApO3ZhciBxPWZ1bmN0aW9uKEksRyl7Zm9yKHZhciBOPW0oT2JqZWN0LmtleXMoSSkpLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlO2VpW1ddJiZ0eXBlb2YgSVtXXT09PSJzdHJpbmciJiYoR1siZXh0LiIrZWlbV11dPUlbV10pfX0scj1SKGEsRi5ELldjKTtyJiYKcShyLGMpO3ZhciB0PWV2KGEpLHU9dC5WbjtuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGMsdC5rZSk7YnYoYyxSKGEsRi5ELmVkKSk7dmFyIHY9UihhLEYuRC5OZSk7diE9PXZvaWQgMCYmdiE9PSIiJiYoYy52ZG5jPVN0cmluZyh2KSk7dmFyIHg9UihhLEYuRC5MZCk7eCE9PXZvaWQgMCYmKGMuc2hmPXgpO3ZhciB5PVIoYSxGLkQuVGMpO3khPT12b2lkIDAmJihjLmRlbGM9eSk7aWYoYiE9PVguVi5ZZCl7dmFyIHo9ZnYodSk7eiYmKGMuZGF0YT16KX12YXIgQz1SKGEsRi5ELkhhKTtpZihDJiYoYj09PVguVi54YXx8Yj09PVguVi5ZZHx8Yj09PVguVi5aZHx8Yj09PVguVi56ZCkpe3ZhciBEPW5pKEMpO0QhPT12b2lkIDAmJihjLmllZGVsZD1EKTtjLml0ZW09aGkoQyl9aHQoYSxjKTtjdihhLGMpO1EoYSxILkouSWgpJiYoYy5hZWNzPSIxIik7YiE9PVguVi54YXx8UShhLEguSi5FYyl8fFEoYSxILkoub2IpfHwoYy5jYXRlZ29yeT0iYWNyY3BfdjFfNTEyIik7cmV0dXJuIGN9LApldj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz17fSxkPVEoYSxILkouZGEpLGU9bShldShhKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1SKGEsZyk7aWYoaCE9PXZvaWQgMClpZihTYihnLCJfJiIpKWJbZy5zdWJzdHJpbmcoMildPWg7ZWxzZSBpZihlaS5oYXNPd25Qcm9wZXJ0eShnKSl7aWYoZyE9PUYuRC5FaXx8ZD09PVguVi54YSYmIVEoYSxILkouRWMpKXt2YXIgbD1laVtnXTtsJiYoZyE9PUYuRC5OZCYmZyE9PUYuRC5NZHx8TSg1MDQpP2JbbF09aDpjW2ddPWgpfX1lbHNlIGNbZ109aH1yZXR1cm57a2U6YixWbjpjfX07dmFyIG12PXtOZzoidmFsdWUiLHBiOiJjb252ZXJzaW9uQ291bnQiLE9nOjF9LG52PXtOZzoidGltZW91dHMiLHBiOiJ0aW1lb3V0cyIsT2c6MH0sb3Y9e05nOiJlb3BDb3VudCIscGI6ImVuZE9mUGFnZUNvdW50IixPZzowfSxwdj17Tmc6ImVycm9ycyIscGI6ImVycm9ycyIsT2c6MH0scXY9W212LG52LHB2LG92XTtmdW5jdGlvbiBydihhLGIpe2I9Yj09PXZvaWQgMD8xOmI7aWYoIXN2KGEpKXJldHVybnt9O3ZhciBjPXR2KHF2KSxkPWNbYS5wYl07aWYoZD09PXZvaWQgMHx8ZD09PS0xKXJldHVybiBjO3ZhciBlPXt9LGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLChlW2EucGJdPWQrYixlKSk7cmV0dXJuIHV2KGYpP2Y6Y30KZnVuY3Rpb24gdHYoYSl7dmFyIGI7YTp7dmFyIGM9bnIoImdjbF9jdHIiKTtpZihjLmVycm9yPT09MCYmYy52YWx1ZSYmdHlwZW9mIGMudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGQ9Yy52YWx1ZTt0cnl7Yj0idmFsdWUiaW4gZCYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Ij9kLnZhbHVlOnZvaWQgMDticmVhayBhfWNhdGNoKHApe319Yj12b2lkIDB9Zm9yKHZhciBlPWIsZj17fSxnPW0oYSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWU7aWYoZSYmc3YobCkpe3ZhciBuPWVbbC5OZ107bj09PXZvaWQgMHx8TnVtYmVyLmlzTmFOKG4pP2ZbbC5wYl09LTE6ZltsLnBiXT1OdW1iZXIobil9ZWxzZSBmW2wucGJdPS0xfXJldHVybiBmfQpmdW5jdGlvbiB1dihhLGIpe2I9Ynx8e307Zm9yKHZhciBjPU5iKCksZD11cShiLGMsITApLGU9e30sZj1tKHF2KSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZSxsPWFbaC5wYl07bCE9PXZvaWQgMCYmbCE9PS0xJiYoZVtoLk5nXT1sKX1lLmNyZWF0aW9uVGltZU1zPWM7cmV0dXJuIGtyKCJnY2xfY3RyIix7dmFsdWU6ZSxleHBpcmVzOk51bWJlcihkLmV4cGlyZXMpfSk9PT0wPyEwOiExfWZ1bmN0aW9uIHN2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuZnR8fFlmKGEuZnQpOiExfWZ1bmN0aW9uIHZ2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuQXN8fFlmKGEuQXMpOiExfTtmdW5jdGlvbiB3digpe2lmKHh2KCkpe3ZhciBhPW5yKCJsYXN0X2NvbnZzIik7aWYoYS5lcnJvcj09PTAmJmEudmFsdWUmJnR5cGVvZiBhLnZhbHVlPT09Im9iamVjdCIpe3ZhciBiPWEudmFsdWU7aWYoYi52YWx1ZSYmQXJyYXkuaXNBcnJheShiLnZhbHVlKSl7dmFyIGM9Yi52YWx1ZTtpZighKGMubGVuZ3RoPjEpKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKHR5cGVvZiBnIT09Im9iamVjdCJ8fGc9PT1udWxsfHx0eXBlb2YgZy5yYW5kb20hPT0ibnVtYmVyInx8dHlwZW9mIGcubGFiZWwhPT0ic3RyaW5nInx8Zy5sYWJlbC5sZW5ndGg+MjAwKXJldHVybjtkLnB1c2goe3JhbmRvbTpnLnJhbmRvbSxsYWJlbDpnLmxhYmVsfSl9cmV0dXJuIGR9fX19fQpmdW5jdGlvbiB5dihhLGIpeyF4digpfHxhLmxlbmd0aD4xfHxhLmxlbmd0aD09PTEmJmFbMF0ubGFiZWwubGVuZ3RoPjIwMHx8KGI9Ynx8e30sa3IoImxhc3RfY29udnMiLHt2YWx1ZTphLGV4cGlyZXM6TnVtYmVyKHVxKGIpLmV4cGlyZXMpfSkpfWZ1bmN0aW9uIHh2KCl7cmV0dXJuIEJsKFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSYmWWYoMTEpfTtmdW5jdGlvbiB6dihhKXt2YXIgYj1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0Nyk7cmV0dXJuIGE/U3RyaW5nKGJebmcoYSkmMjE0NzQ4MzY0Nyk6U3RyaW5nKGIpfWZ1bmN0aW9uIEF2KGEpe3JldHVyblt6dihhKSxNYXRoLnJvdW5kKE5iKCkvMUUzKV0uam9pbigiLiIpfWZ1bmN0aW9uIEJ2KGEsYixjLGQsZSl7dmFyIGY9cnEoYiksZztyZXR1cm4oZz1ncShhLGYsc3EoYyksZCxlKSk9PW51bGw/dm9pZCAwOmcuQ3J9O3ZhciBDdj1bIjEiXSxEdj17fSxFdj17fTtmdW5jdGlvbiBGdihhKXtyZXR1cm4gRXZbR3YoYSldfWZ1bmN0aW9uIEh2KGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9R3YoYS5wcmVmaXgpO2lmKER2W2NdKUl2KGEpLEp2KGEpO2Vsc2UgaWYoS3YoYyxhLnBhdGgsYS5kb21haW4pKXt2YXIgZD1GdihhLnByZWZpeCl8fHtpZDp2b2lkIDAsa2M6dm9pZCAwfTtiJiZMdihhLGQpO0l2KGEpO0p2KGEpfWVsc2V7dmFyIGU9VGooImF1aWRkYyIpO2lmKGUpc2IoIlRBR0dJTkciLDE3KSxEdltjXT1lO2Vsc2UgaWYoYil7dmFyIGY9R3YoYS5wcmVmaXgpLGc9QXYoKTtNdihmLGcsYSk7S3YoYyxhLnBhdGgsYS5kb21haW4pO0l2KGEsITApO0p2KGEsITApfX19CmZ1bmN0aW9uIEl2KGEsYil7KGI9PT12b2lkIDA/MDpiKSYmc3YobXYpJiZvcigiZ2NsX2N0ciIpO2lmKHZ2KG12KSYmdHYoW212XSlbbXYucGJdPT09LTEpe2Zvcih2YXIgYz17fSxkPShjW212LnBiXT0wLGMpLGU9bShxdiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyE9PW12JiZ2dihnKSYmKGRbZy5wYl09MCl9dXYoZCxhKX19ZnVuY3Rpb24gSnYoYSxiKXsoYj09PXZvaWQgMD8wOmIpJiZ4digpJiZvcigibGFzdF9jb252cyIpOyFCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSl8fCFZZigxMil8fHd2KCl8fHl2KFtdLGEpfQpmdW5jdGlvbiBMdihhLGIpe3ZhciBjPUd2KGEucHJlZml4KSxkPUR2W2NdO2lmKGQpe3ZhciBlPWQuc3BsaXQoIi4iKTtpZihlLmxlbmd0aD09PTIpe3ZhciBmPU51bWJlcihlWzFdKXx8MDtpZihmKXt2YXIgZz1kO1lmKDE5KSYmYi5maT9nPWQrIi4iKyhiLnNlc3Npb25JZHx8Ii0uLSIpKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSsiLiIrYi5maSsiLiIrKGIuTGM/Yi5MYzpNYXRoLmZsb29yKE5iKCkvMUUzKSk6Yi5zZXNzaW9uSWQmJihnPWQrIi4iK2Iuc2Vzc2lvbklkKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSk7TXYoYyxnLGEsZioxRTMpfX19fWZ1bmN0aW9uIE12KGEsYixjLGQpe3ZhciBlO2U9WyIxIix0cShjLmRvbWFpbixjLnBhdGgpLGJdLmpvaW4oIi4iKTt2YXIgZj11cShjLGQpO2YuTWM9TnYoKTtvcShhLGUsZil9CmZ1bmN0aW9uIEt2KGEsYixjKXt2YXIgZD1CdihhLGIsYyxDdixOdigpKTtpZighZClyZXR1cm4hMTtPdihhLGQpO3JldHVybiEwfWZ1bmN0aW9uIE92KGEsYil7dmFyIGM9Yi5zcGxpdCgiLiIpO2lmKGMubGVuZ3RoPT09MylFdlthXT17c2Vzc2lvbklkOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2Vsc2UgaWYoYy5sZW5ndGg+PTImJihEdlthXT1jWzBdKyIuIitjWzFdLGMuc2hpZnQoKSxjLnNoaWZ0KCksYy5sZW5ndGg+PTMpKXt2YXIgZD17c2Vzc2lvbklkOmNbMF09PT0iLSI/dm9pZCAwOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2lmKFlmKDE5KSYmYy5sZW5ndGg+PTYpe3ZhciBlPWNbM10rIi4iK2NbNF0sZj1OdW1iZXIoY1s1XSl8fDA7ZSYmZiE9PTAmJihkLmZpPWUsZC5MYz1mKX1FdlthXT1kfX1mdW5jdGlvbiBHdihhKXtyZXR1cm4oYXx8Il9nY2wiKSsiX2F1In0KZnVuY3Rpb24gUHYoYSl7ZnVuY3Rpb24gYigpe0JsKGMpJiZhKCl9dmFyIGM9TnYoKTtIbChmdW5jdGlvbigpe2IoKTtCbChjKXx8SWwoYixjKX0sYyl9ZnVuY3Rpb24gUXYoYSl7dmFyIGI9VXEoITApLGM9R3YoYS5wcmVmaXgpO1B2KGZ1bmN0aW9uKCl7dmFyIGQ9YltjXTtpZihkKXtPdihjLGQpO3ZhciBlPU51bWJlcihEdltjXS5zcGxpdCgiLiIpWzFdKSoxRTM7aWYoZSl7c2IoIlRBR0dJTkciLDE2KTt2YXIgZj11cShhLGUpO2YuTWM9TnYoKTt2YXIgZz1bIjEiLHRxKGEuZG9tYWluLGEucGF0aCksZF0uam9pbigiLiIpO29xKGMsZyxmKX19fSl9ZnVuY3Rpb24gUnYoYSxiLGMsZCxlKXtlPWV8fHt9O3ZhciBmPWZ1bmN0aW9uKCl7dmFyIGc9e30saD1CdihhLGUucGF0aCxlLmRvbWFpbixDdixOdigpKTtoJiYoZ1thXT1oKTtyZXR1cm4gZ307UHYoZnVuY3Rpb24oKXthcihmLGIsYyxkKX0pfQpmdW5jdGlvbiBOdigpe3JldHVyblsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdfTsKdmFyIFR2PWZ1bmN0aW9uKGEpe3JldHVybiBTdihhLHtPajohMH0pLlNofSxTdj1mdW5jdGlvbihhLGIpe2E9YXx8e307aWYoIVhvKEYuRC5rYSkpcmV0dXJue307dmFyIGM9VXYoYSksZD1jLlNoLGU9Yy5paztiLk9qJiYhZCYmKGQ9QXYoKSk7Yi5YaCYmIWUmJihlPUF2KCkpO3ZhciBmPXt9O2QmJihmLnNlc3Npb25JZD1kKTtlJiYoZi5maT1lKTt2YXIgZz1GdihIcihhLnByZWZpeCkpO2cmJihiLk9qJiYhYi5YaD9nLkxjJiYoZi5MYz1nLkxjKTpiLlhoJiYhYi5PaiYmZy5rYyYmKGYua2M9Zy5rYykpO2lmKGR8fGUpe3ZhciBoPWEsbD1HdihoLnByZWZpeCk7THYoaCxmKTtkZWxldGUgRHZbbF07ZGVsZXRlIEV2W2xdO0t2KGwsaC5wYXRoLGguZG9tYWluKX1yZXR1cm4gVXYoYSl9LFV2PWZ1bmN0aW9uKGEpe2lmKCFYbyhGLkQua2EpKXJldHVybnt9O2E9YXx8e307SHYoYSwhMSk7dmFyIGI9RnYoSHIoYS5wcmVmaXgpKTtpZighYilyZXR1cm57fTt2YXIgYz1OYigpLGQ9e307aWYoYy0KYi5rYyoxRTM8PShNKDQ1MCl8fE0oNDQzKT84NjRFNToxOEU1KSl7dmFyIGU9Yi5zZXNzaW9uSWQ7aWYoZSl7dmFyIGY9ZS5zcGxpdCgiLiIpO2YubGVuZ3RoPT09MiYmYy0oTnVtYmVyKGZbMV0pfHwwKSoxRTM8PTg2NEU1JiYoZC5TaD1lKX19aWYoYi5MYyYmYy1iLkxjKjFFMzw9ODY0RTUpe3ZhciBnPWIuZmk7aWYoZyl7dmFyIGg9Zy5zcGxpdCgiLiIpO2gubGVuZ3RoPT09MiYmYy0oTnVtYmVyKGhbMV0pfHwwKSoxRTM8PTg2NEU1JiYoZC5paz1nKX19cmV0dXJuIGR9O3ZhciBWdj0iZW1haWwgZW1haWxfYWRkcmVzcyBzaGEyNTZfZW1haWxfYWRkcmVzcyBwaG9uZV9udW1iZXIgc2hhMjU2X3Bob25lX251bWJlciBmaXJzdF9uYW1lIGxhc3RfbmFtZSIuc3BsaXQoIiAiKSxXdj0iZmlyc3RfbmFtZSBzaGEyNTZfZmlyc3RfbmFtZSBsYXN0X25hbWUgc2hhMjU2X2xhc3RfbmFtZSBzdHJlZXQgc2hhMjU2X3N0cmVldCBjaXR5IHJlZ2lvbiBjb3VudHJ5IHBvc3RhbF9jb2RlIi5zcGxpdCgiICIpO2Z1bmN0aW9uIFh2KGEsYil7aWYoIWIuX3RhZ19tZXRhZGF0YSl7Zm9yKHZhciBjPXt9LGQ9MCxlPTA7ZTxhLmxlbmd0aDtlKyspZCs9WXYoYVtlXSxiLGMpPzE6MDtkPjAmJihiLl90YWdfbWV0YWRhdGE9Yyl9fQpmdW5jdGlvbiBZdihhLGIsYyl7dmFyIGQ9YlthXTtpZihkPT09dm9pZCAwfHxkPT09bnVsbClyZXR1cm4hMTtjW2FdPUFycmF5LmlzQXJyYXkoZCk/ZC5tYXAoZnVuY3Rpb24oKXtyZXR1cm57bW9kZToiYyJ9fSk6e21vZGU6ImMifTtyZXR1cm4hMH1mdW5jdGlvbiBadihhKXtpZihNKDUyMykmJmEpe1h2KFZ2LGEpO2Zvcih2YXIgYj1CYihhLmFkZHJlc3MpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXTtkJiZYdihXdixkKX12YXIgZT1hLmhvbWVfYWRkcmVzcztlJiZYdihXdixlKX19CmZ1bmN0aW9uICR2KGEsYixjKXtmdW5jdGlvbiBkKGYsZyl7Zz1TdHJpbmcoZykuc3Vic3RyaW5nKDAsMTAwKTtlLnB1c2goIiIrZitlbmNvZGVVUklDb21wb25lbnQoZykpfWlmKCFjKXJldHVybiIiO3ZhciBlPVtdO2QoImkiLFN0cmluZyhhKSk7ZCgiZiIsYik7Yy5tb2RlJiZkKCJtIixjLm1vZGUpO2MuaXNQcmVIYXNoZWQmJmQoInAiLCIxIik7Yy5yYXdMZW5ndGgmJmQoInIiLFN0cmluZyhjLnJhd0xlbmd0aCkpO2Mubm9ybWFsaXplZExlbmd0aCYmZCgibiIsU3RyaW5nKGMubm9ybWFsaXplZExlbmd0aCkpO2MubG9jYXRpb24mJmQoImwiLGMubG9jYXRpb24pO2Muc2VsZWN0b3ImJmQoInMiLGMuc2VsZWN0b3IpO3JldHVybiBlLmpvaW4oIi4iKX07dmFyIGF3PXZvaWQgMDtmdW5jdGlvbiBidygpe2lmKCFhdyl7dmFyIGE9b20oam0uYmEub3AsbmV3IE1hcCk7YXc9bmV3IG9nKGEpfXJldHVybiBhd307CnZhciBjdz1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4gYTtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtlIT09ImFkZHJlc3MiJiZlIT09InBob25lX251bWJlciImJmUhPT0ic2hhMjU2X3Bob25lX251bWJlciImJihiW2VdPWFbZV0pfXJldHVybiBifSxmdz1mdW5jdGlvbihhKXt2YXIgYj1NKDUyMyksYz1bInR2LjEiXSxkPVsidHZkLjEiXSxlPWR3KGEpO2lmKGUpcmV0dXJuIGMucHVzaChlKSx7aGFzVXBkOiExLE9vOmMuam9pbigifiIpLFluOmMuam9pbigifiIpLGVuY3J5cHRpb25LZXlTdHJpbmc6dm9pZCAwLGlpOnt9LG1ldGFkYXRhUGFyYW06Yj9kLmpvaW4oIn4iKTp2b2lkIDB9O3ZhciBmPXt9LGc9MDt2YXIgaD0wLGw9ZXcoYSxmdW5jdGlvbihxLHIsdCl7aCsrO3ZhciB1PXEudmFsdWUsdjsKaWYodCl7dmFyIHg9cisiX18iK2crKzt2PSIke3VzZXJEYXRhLiIreCsifHNoYTI1Nn0iO2ZbeF09dX1lbHNlIHY9ZW5jb2RlVVJJQ29tcG9uZW50KGVuY29kZVVSSUNvbXBvbmVudCh1KSk7cS5pbmRleCE9PXZvaWQgMCYmKHIrPXEuaW5kZXgpO2MucHVzaChyKyIuIit2KTtpZihiKXt2YXIgeT0kdihoLHIscS5tZXRhZGF0YSk7eSYmZC5wdXNoKHkpfX0pLmhhc1VwZCxuPWQuam9pbigifiIpO3ZhciBwPWMuam9pbigifiIpO3JldHVybntoYXNVcGQ6bCxPbzpwLGlpOnt1c2VyRGF0YTpmfSxZbjoidHYuMX4keyIrKHArInwiKyhNKDU1NSk/ImVuY3J5cHRfd2l0aF9tZW1vIjoiZW5jcnlwdCIpKyJ9IiksZW5jcnlwdGlvbktleVN0cmluZzpFKDQzKSxtZXRhZGF0YVBhcmFtOmI/bjp2b2lkIDB9fSxodz1mdW5jdGlvbihhKXtpZighKGEhPW51bGwmJk9iamVjdC5rZXlzKGEpLmxlbmd0aD4wKSlyZXR1cm4hMTsKdmFyIGI9Z3coYSk7cmV0dXJuIGV3KGIsZnVuY3Rpb24oKXt9KS5oYXNVcGR9LGV3PWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP2Z1bmN0aW9uKCl7fTpiO2Zvcih2YXIgYz0hMSxkPSExLGU9bShhKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtpZihnLnZhbHVlKXt2YXIgaD1pd1tnLm5hbWVdO2lmKGgpe3ZhciBsPWp3KGcpO2wmJihjPSEwKTtkPSEwO2IoZyxoLGwpfX19cmV0dXJue2hhc1VwZDpkLGhhc1VwZFRvSGFzaDpjfX0sanc9ZnVuY3Rpb24oYSl7dmFyIGI9a3coYS5uYW1lKSxjPS9eZVxkKyQvLnRlc3QoYS52YWx1ZSksZDtpZihkPWImJiFjKXt2YXIgZT1hLnZhbHVlO2Q9IShsdy50ZXN0KGUpfHx5aS50ZXN0KGUpKX1yZXR1cm4gZH0sa3c9ZnVuY3Rpb24oYSl7cmV0dXJuIG13LmluZGV4T2YoYSkhPT0tMX0sc3c9ZnVuY3Rpb24oYSxiLGMpe2lmKHliKEEuUHJvbWlzZSkpdHJ5e3ZhciBkPSExO3ZhciBlPWd3KGEsZCksZj1udyhlKS50aGVuKGZ1bmN0aW9uKGgpe3ZhciBsPWgueWIsbj1sLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4hU2IocS5uYW1lLCJyYXciKX0pLHA9b3coe3liOm59KTtyZXR1cm57cmVzdWx0OntwYXJhbTpwLnBhcmFtLGhhc1VwZFRvSGFzaDpwLmhhc1VwZFRvSGFzaCxoYXNVcGQ6cC5oYXNVcGQsaGFkRXJyb3I6cC5oYWRFcnJvcixtZXRhZGF0YVBhcmFtOnAubWV0YWRhdGFQYXJhbX0seWI6bH19KTtyZXR1cm4gZi50aGVuKGZ1bmN0aW9uKGgpe3JldHVybiBoLnJlc3VsdH0pfWNhdGNoKGgpe319LHF3PWZ1bmN0aW9uKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gYn0sb3c9ZnVuY3Rpb24oYSl7dmFyIGI9TSg1MjMpLGM9YS55YixkPVsidHYuMSJdLGU9WyJ0dmQuMSJdLGY9ZHcoYyk7aWYoZilyZXR1cm4gZC5wdXNoKGYpLHtwYXJhbTpkLmpvaW4oIn4iKSxoYXNVcGRUb0hhc2g6ITEsaGFzVXBkOiExLGhhZEVycm9yOiEwLG1ldGFkYXRhUGFyYW06Yj9lLmpvaW4oIn4iKTp2b2lkIDB9O3ZhciBnPWMuZmlsdGVyKGZ1bmN0aW9uKHEpe3JldHVybiFqdyhxKX0pLGg9MCxsPWV3KGcsZnVuY3Rpb24ocSxyKXtoKys7dmFyIHQ9cS52YWx1ZSx1PXEuaW5kZXg7dSE9PXZvaWQgMCYmKHIrPXUpO2QucHVzaChyKyIuIit0KTtpZihiKXt2YXIgdj0kdihoLHIscS5tZXRhZGF0YSk7diYmZS5wdXNoKHYpfX0pLG49bC5oYXNVcGRUb0hhc2gscD1sLmhhc1VwZDtyZXR1cm57cGFyYW06ZW5jb2RlVVJJQ29tcG9uZW50KGQuam9pbigifiIpKSwKaGFzVXBkVG9IYXNoOm4saGFzVXBkOnAsaGFkRXJyb3I6ITEsbWV0YWRhdGFQYXJhbTpiP2Uuam9pbigifiIpOnZvaWQgMH19LGR3PWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPT09MSYmYVswXS5uYW1lPT09ImVycm9yX2NvZGUiKXJldHVybiBpdy5lcnJvcl9jb2RlKyIuIithWzBdLnZhbHVlfSxwdz1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTEmJmFbMF0ubmFtZT09PSJlcnJvcl9jb2RlIilyZXR1cm4hMTtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihpd1tkLm5hbWVdJiZkLnZhbHVlKXJldHVybiEwfXJldHVybiExfSxndz1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO2lmKEEubG9jYXRpb24ucHJvdG9jb2whPT0iaHR0cHM6IilyZXR1cm4gYy5wdXNoKHtuYW1lOiJlcnJvcl9jb2RlIix2YWx1ZToiZTMiLGluZGV4OnZvaWQgMH0pLGM7dmFyIGQ9Yy5wdXNoLGU9ZC5hcHBseSxmPVtdLApnPWYuY29uY2F0LGgsbD1hLl90YWdfbWV0YWRhdGF8fHt9O2g9W10uY29uY2F0KHcodHcoe25hbWU6ImVtYWlsIixyYXc6YS5lbWFpbCxTYTphLnNoYTI1Nl9lbWFpbF9hZGRyZXNzLGFiOmwuZW1haWwsbWQ6bC5zaGEyNTZfZW1haWxfYWRkcmVzc30sdXcpKSx3KHR3KHtuYW1lOiJwaG9uZV9udW1iZXIiLHJhdzphLnBob25lX251bWJlcixTYTphLnNoYTI1Nl9waG9uZV9udW1iZXIsYWI6bC5waG9uZV9udW1iZXIsbWQ6bC5zaGEyNTZfcGhvbmVfbnVtYmVyfSx2dykpKTt2YXIgbj13KGgpLHAscT1hLl90YWdfbWV0YWRhdGF8fHt9LHI9YS5ob21lX2FkZHJlc3N8fHt9LHQ9ci5fdGFnX21ldGFkYXRhfHx7fTtwPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJmaXJzdF9uYW1lIixyYXc6YS5maXJzdF9uYW1lLFNhOmEuc2hhMjU2X2ZpcnN0X25hbWUsYWI6cS5maXJzdF9uYW1lLG1kOnEuc2hhMjU2X2ZpcnN0X25hbWV9LHd3KHh3KSkpLHcodHcoe25hbWU6Imxhc3RfbmFtZSIscmF3OmEubGFzdF9uYW1lLApTYTphLnNoYTI1Nl9sYXN0X25hbWUsYWI6cS5sYXN0X25hbWUsbWQ6cS5zaGEyNTZfbGFzdF9uYW1lfSx3dyh4dykpKSx3KHR3KHtuYW1lOiJzdHJlZXQiLHJhdzpyLnN0cmVldCxTYTpyLnNoYTI1Nl9zdHJlZXQsYWI6dC5zdHJlZXQsbWQ6dC5zaGEyNTZfc3RyZWV0fSx3dyh5dykpKSx3KHR3KHtuYW1lOiJjaXR5IixyYXc6ci5jaXR5LGFiOnQuY2l0eX0sd3coeXcpKSksdyh0dyh7bmFtZToicG9zdGFsX2NvZGUiLHJhdzpyLnBvc3RhbF9jb2RlLGFiOnQucG9zdGFsX2NvZGV9LHd3KHp3KSkpLHcodHcoe25hbWU6InJlZ2lvbiIscmF3OnIucmVnaW9uLGFiOnQucmVnaW9ufSx3dyh5dykpKSx3KHR3KHtuYW1lOiJjb3VudHJ5IixyYXc6ci5jb3VudHJ5LGFiOnQuY291bnRyeX0sd3coencpKSkpO2Zvcih2YXIgdT13KHApLHY9W10seD1CYihhLmFkZHJlc3N8fHt9KSx5PTA7eTx4Lmxlbmd0aDt5Kyspe2Zvcih2YXIgej14W3ldLEM9ei5fdGFnX21ldGFkYXRhfHx7fSxEPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJmaXJzdF9uYW1lIiwKcmF3OnouZmlyc3RfbmFtZSxTYTp6LnNoYTI1Nl9maXJzdF9uYW1lLGFiOkMuZmlyc3RfbmFtZSxtZDpDLnNoYTI1Nl9maXJzdF9uYW1lfSx4dykpLHcodHcoe25hbWU6Imxhc3RfbmFtZSIscmF3OnoubGFzdF9uYW1lLFNhOnouc2hhMjU2X2xhc3RfbmFtZSxhYjpDLmxhc3RfbmFtZSxtZDpDLnNoYTI1Nl9sYXN0X25hbWV9LHh3KSksdyh0dyh7bmFtZToic3RyZWV0IixyYXc6ei5zdHJlZXQsU2E6ei5zaGEyNTZfc3RyZWV0LGFiOkMuc3RyZWV0LG1kOkMuc2hhMjU2X3N0cmVldH0seXcpKSx3KHR3KHtuYW1lOiJjaXR5IixyYXc6ei5jaXR5LGFiOkMuY2l0eX0seXcpKSx3KHR3KHtuYW1lOiJwb3N0YWxfY29kZSIscmF3OnoucG9zdGFsX2NvZGUsYWI6Qy5wb3N0YWxfY29kZX0sencpKSx3KHR3KHtuYW1lOiJyZWdpb24iLHJhdzp6LnJlZ2lvbixhYjpDLnJlZ2lvbn0seXcpKSx3KHR3KHtuYW1lOiJjb3VudHJ5IixyYXc6ei5jb3VudHJ5LGFiOkMuY291bnRyeX0sencpKSksST0wO0k8CkQubGVuZ3RoO0krKylEW0ldLmluZGV4PXk7di5wdXNoLmFwcGx5KHYsdyhEKSl9ZS5jYWxsKGQsYyxnLmNhbGwoZixuLHUsdyh2KSkpO2lmKGImJkJwKCkpe3ZhciBHPWMucHVzaCxOPUcuYXBwbHksUz1bXTtTLnB1c2guYXBwbHkoUyxbXS5jb25jYXQodyhBdyh7bmFtZToicmF3X2VtYWlsIixyYXc6YS5lbWFpbCxTYTphLnNoYTI1Nl9lbWFpbF9hZGRyZXNzfSkpLHcoQXcoe25hbWU6InJhd19waG9uZV9udW1iZXIiLHJhdzphLnBob25lX251bWJlcixTYTphLnNoYTI1Nl9waG9uZV9udW1iZXJ9KSkpKTtmb3IodmFyIFc9QmIoYS5hZGRyZXNzfHx7fSksZWE9MDtlYTxXLmxlbmd0aDtlYSsrKXt2YXIgamE9V1tlYV07Uy5wdXNoLmFwcGx5KFMsW10uY29uY2F0KHcoQXcoe25hbWU6InJhd19maXJzdF9uYW1lIixyYXc6amEuZmlyc3RfbmFtZSxTYTpqYS5zaGEyNTZfZmlyc3RfbmFtZX0sZWEpKSx3KEF3KHtuYW1lOiJyYXdfbGFzdF9uYW1lIixyYXc6amEubGFzdF9uYW1lLFNhOmphLnNoYTI1Nl9sYXN0X25hbWV9LAplYSkpLHcoQXcoe25hbWU6InJhd19zdHJlZXQiLHJhdzpqYS5zdHJlZXQsU2E6amEuc2hhMjU2X3N0cmVldH0sZWEpKSkpfWlmKGEuZmlyc3RfbmFtZXx8YS5ob21lX2FkZHJlc3Mpe1MucHVzaC5hcHBseShTLFtdLmNvbmNhdCh3KEF3KHtuYW1lOiJyYXdfZmlyc3RfbmFtZSIscmF3OmEuZmlyc3RfbmFtZSxTYTphLnNoYTI1Nl9maXJzdF9uYW1lfSkpLHcoQXcoe25hbWU6InJhd19sYXN0X25hbWUiLHJhdzphLmxhc3RfbmFtZSxTYTphLnNoYTI1Nl9sYXN0X25hbWV9KSkpKTt2YXIgZmE9YS5ob21lX2FkZHJlc3N8fHt9O1MucHVzaC5hcHBseShTLHcoQXcoe25hbWU6InJhd19zdHJlZXQiLHJhdzpmYS5zdHJlZXQsU2E6ZmEuc2hhMjU2X3N0cmVldH0pKSl9Ti5jYWxsKEcsYyx3KFMpKX1yZXR1cm4gY30sd3c9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe1AoNjQpO3JldHVybiBhKGIpfX0sQXc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtpZihhLlNhKXJldHVybiBjO2Zvcih2YXIgZD0KQmIoYS5yYXcpLGU9MDtlPGQubGVuZ3RoOysrZSl7dmFyIGY9QncoZFtlXSk7aWYoZiYmIXlpLnRlc3QoZikpaWYoL15lXGQrJC8udGVzdChmKSljLnB1c2goe25hbWU6YS5uYW1lLHZhbHVlOmYsaW5kZXg6Yn0pO2Vsc2V7dmFyIGc9YyxoPWcucHVzaCxsPWEubmFtZSxuO3ZhciBwPUE7dHJ5e249QmkoQXJyYXkuZnJvbShaYihmKSkscCl9Y2F0Y2gocSl7bj0iZTAifWguY2FsbChnLHtuYW1lOmwsdmFsdWU6bixpbmRleDpifSl9fXJldHVybiBjfSx0dz1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ9TSg1MjMpLGU9YS5yYXcsZj1kP2EuYWI6dm9pZCAwO0N3KGUsITEpO2EuU2EmJihlJiZQKDkwKSxlPWEuU2EsZj1kP2EubWQ6dm9pZCAwLEN3KGUsITApKTtmb3IodmFyIGc9QmIoZSksaD1CYihmKSxsPTA7bDxnLmxlbmd0aDsrK2wpe3ZhciBuO3ZhciBwPWEubmFtZSxxPWIscj1oW2xdLHQ9QncoZ1tsXSk7aWYodCE9PSIiKWlmKHlpLnRlc3QodCkpe3ImJihyLmlzUHJlSGFzaGVkPSEwKTsKdmFyIHU9e25hbWU6cCx2YWx1ZTp0LGluZGV4OnZvaWQgMH07ciYmKHUubWV0YWRhdGE9cik7bj11fWVsc2V7dmFyIHY9cSh0KSx4PXtuYW1lOnAsdmFsdWU6dixpbmRleDp2b2lkIDB9O3ImJih4Lm1ldGFkYXRhPXIsdiYmKHIucmF3TGVuZ3RoPVN0cmluZyh0KS5sZW5ndGgsci5ub3JtYWxpemVkTGVuZ3RoPXYubGVuZ3RoKSk7bj14fWVsc2Ugbj12b2lkIDA7dmFyIHk9bjt5JiZjLnB1c2goeSl9cmV0dXJuIGN9LEN3PWZ1bmN0aW9uKGEsYil7aWYoemIoYSl8fEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPUJiKGEpLGQ9MDtkPGMubGVuZ3RoOysrZCl7dmFyIGU9QncoY1tkXSksZj15aS50ZXN0KGUpO2ImJiFmJiZQKDg5KTshYiYmZiYmUCg4OCl9fSxEdz1mdW5jdGlvbihhKXt2YXIgYj1hP2d3KGEpOltdO3JldHVybiBvdyh7eWI6Yn0pfSxFdz1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYSE9bnVsbCYmT2JqZWN0LmtleXMoYSkubGVuZ3RoPjAmJnliKEEuUHJvbWlzZSk/Z3coYSkuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gYi52YWx1ZSYmCmt3KGIubmFtZSkmJiF5aS50ZXN0KGIudmFsdWUpfSk6ITF9LEJ3PWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsPyIiOnpiKGEpP0xiKFN0cmluZyhhKSk6ImUwIn0senc9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZShGdywiIil9LHh3PWZ1bmN0aW9uKGEpe3JldHVybiB5dyhhLnJlcGxhY2UoL1xzL2csIiIpKX0seXc9ZnVuY3Rpb24oYSl7cmV0dXJuIExiKGEucmVwbGFjZShHdywiIikudG9Mb3dlckNhc2UoKSl9LHZ3PWZ1bmN0aW9uKGEpe2E9YS5yZXBsYWNlKC9bXHMtKCkvLl0vZywiIik7YS5jaGFyQXQoMCkhPT0iKyImJihhPSIrIithKTtyZXR1cm4oTSg1OTcpP0h3Okl3KS50ZXN0KGEpP2E6ImUwIn0sdXc9ZnVuY3Rpb24oYSl7dmFyIGI9YS50b0xvd2VyQ2FzZSgpLnNwbGl0KCJAIik7aWYoYi5sZW5ndGg9PT0yKXt2YXIgYz1iWzBdOy9eKGdtYWlsfGdvb2dsZW1haWwpXC4vLnRlc3QoYlsxXSkmJihjPWMucmVwbGFjZSgvXC4vZywiIikpO2M9YysiQCIrYlsxXTtpZihKdy50ZXN0KGMpKXJldHVybiBjfXJldHVybiJlMCJ9LApLdz1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGEuZm9yRWFjaChmdW5jdGlvbihiKXtiLnZhbHVlJiZrdyhiLm5hbWUpJiYoYi52YWx1ZT1EaShiLnZhbHVlKSl9KSx7eWI6YX19Y2F0Y2goYil7cmV0dXJue3liOltdfX19LG53PWZ1bmN0aW9uKGEpe3JldHVybiBhLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIudmFsdWUmJmt3KGIubmFtZSl9KT95YihBLlByb21pc2UpP1Byb21pc2UuYWxsKGEubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLnZhbHVlJiZrdyhiLm5hbWUpP0FpKGIudmFsdWUpLnRoZW4oZnVuY3Rpb24oYyl7Yi52YWx1ZT1jfSk6UHJvbWlzZS5yZXNvbHZlKCl9KSkudGhlbihmdW5jdGlvbigpe3JldHVybnt5YjphfX0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue3liOltdfX0pOnt0aGVuOmZ1bmN0aW9uKGIpe2Ioe3liOltdfSl9fTpQcm9taXNlLnJlc29sdmUoe3liOmF9KX0sR3c9L1swLTlgfiFAIyQlXiYqKClfXC0rPTo7PD4sLj98L1xcW1xdXS9nLEp3PS9eXFMrQFxTK1wuXFMrJC8sCkl3PS9eXCtcZHsxMCwxNX0kLyxIdz0vXlwrXGR7NywxNX0kLyxGdz0vWy5+XS9nLGx3PS9eWzAtOUEtWmEtel8tXXs0M30kLyxMdz1bInJlbSIsInJwbiIsInJmbiIsInJsbiIsInJzYSJdLE13PXt9LGl3PShNdy5lbWFpbD0iZW0iLE13LnBob25lX251bWJlcj0icG4iLE13LmZpcnN0X25hbWU9ImZuIixNdy5sYXN0X25hbWU9ImxuIixNdy5zdHJlZXQ9InNhIixNdy5jaXR5PSJjdCIsTXcucmVnaW9uPSJyZyIsTXcuY291bnRyeT0iY28iLE13LnBvc3RhbF9jb2RlPSJwYyIsTXcuZXJyb3JfY29kZT0iZWMiLE13LnJhd19lbWFpbD0icmVtIixNdy5yYXdfcGhvbmVfbnVtYmVyPSJycG4iLE13LnJhd19maXJzdF9uYW1lPSJyZm4iLE13LnJhd19sYXN0X25hbWU9InJsbiIsTXcucmF3X3N0cmVldD0icnNhIixNdyk7dmFyIG13PU9iamVjdC5mcmVlemUoWyJlbWFpbCIsCiJwaG9uZV9udW1iZXIiLCJmaXJzdF9uYW1lIiwibGFzdF9uYW1lIiwic3RyZWV0Il0pOwp2YXIgUXc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1sdihhKSxkPWZ1bmN0aW9uKHApe3ZhciBxPUNwKGEpO3EmJihjLnRhZ19leHA9cSk7YihwKX0sZT1RKGEsSC5KLmRhKSxmPVEoYSxILkouWWEpLGc9WG8oW0YuRC5tYSxGLkQua2FdKSxoO2E6c3dpdGNoKGUpe2Nhc2UgWC5WLnhhOmNhc2UgWC5WLnpkOmNhc2UgWC5WLlpkOmNhc2UgWC5WLk9iOmNhc2UgWC5WLkZiOmg9ITA7YnJlYWsgYTtkZWZhdWx0Omg9ITF9aWYoaCYmZiYmZylpZihRKGEsSC5KLmZkKSlpZihOdyhhKSlkKGMpO2Vsc2V7dmFyIGw9c3coZiwhMCk7T3cobCxhLGMsZCl9ZWxzZXt2YXIgbjthOnt0cnl7bj1vdyhLdyhndyhmKSkpO2JyZWFrIGF9Y2F0Y2gocCl7fW49dm9pZCAwfWlmKG4pdHJ5e1B3KGMsYSkobil9Y2F0Y2gocCl7fWQoYyl9ZWxzZSBkZWxldGUgYy5lY19tb2RlLGQoYyl9LE53PWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouZGEpO3JldHVybiBiPT09WC5WLkZifHxiPT09WC5WLk9ifSxSdz1mdW5jdGlvbihhLApiKXtyZXR1cm4gYSE9PTF8fFEoYixILkouZGEpPT09WC5WLk9iJiYhTSg0NDUpPyExOiEhUShiLEguSi5mZCl9LFB3PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKGMpe1J3KGMuZW5jcnlwdGlvblJlc3VsdD8xOjAsYil8fChhLmVtPWMucGFyYW0pO2lmKGMuaGFzVXBkKXt2YXIgZD1TdyhiKTtkJiYoYS5lY3NpZD1kKX1NKDUyMykmJmMubWV0YWRhdGFQYXJhbSYmKGEuZW1kPWMubWV0YWRhdGFQYXJhbSk7fX0sU3c9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5kYSk9PT1YLlYuRmImJgohTSg0NDMpKXt2YXIgYj1RKGEsSC5KLkdhKTtyZXR1cm4gUShhLEguSi56ail8fFR2KGIpfX0sT3c9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYSl0cnl7YS50aGVuKFB3KGMsYikpLnRoZW4oZnVuY3Rpb24oKXtkKGMpfSk7cmV0dXJufWNhdGNoKGUpe31kKGMpfTt2YXIgVHc9T2JqZWN0LmZyZWV6ZSh7Z2NwOiIxIixzc2N0ZToiMSIsY3RfY29va2llX3ByZXNlbnQ6IjEifSk7CnZhciBVdz1mdW5jdGlvbihhLGIpe2F2LmNhbGwodGhpcyxhLGIsMSwhMSl9O3dhKFV3LGF2KTtVdy5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7UXcoYSxmdW5jdGlvbihkKXtRKGEsSC5KLmFqKSYmZGVsZXRlIGQuaXRlbTtRKGEsSC5KLm9iKSYmbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxkLFR3KTt2YXIgZT1nayhiLkljKTtlJiYoZC5fdWlwPWUpO3ZhciBmPSI/IitrdihkKTtjKGYpfSl9O3ZhciBWdz1uZXcgVXcoMjIsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLFd3PW5ldyBVdygyMyxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSksWHc9bmV3IFV3KDYwLFtdKSxZdz1mdW5jdGlvbigpe307d2EoWXcsb3UpO1l3LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe3JldHVybiBRKGEsSC5KLmRhKT09PVguVi56ZCYmUShhLEguSi5saik/W3tlbmRwb2ludDpYbyhmcCk/UShhLEguSi5vYik/V3c6Vnc6WHcsbWV0aG9kOmx1fV06W119O3ZhciBadz1uZXcgWXc7Cgp2YXIgJHc9ZnVuY3Rpb24oYSl7aWYoT3AoKT09PTIpcmV0dXJuITE7dmFyIGI9UShhLEguSi5kYSksYz1bWC5WLnhhLFguVi51Yl07TSg1OTMpJiZjLnB1c2goWC5WLllkKTtyZXR1cm4gYy5pbmNsdWRlcyhiKT8hMDohMX0sYXg9ZnVuY3Rpb24oYSl7cmV0dXJuIE0oNTAwKSYmT3AoKSE9PTImJlEoYSxILkouZGEpPT09WC5WLnhhfSxieD1mdW5jdGlvbihhKXt2YXIgYj1IcihhLnByZWZpeCk7Yj09PSJfZ2NsIiYmKGI9IiIpO3JldHVybiBifSxjeD1mdW5jdGlvbihhKXtpZihSKGEsRi5ELlNiKXx8UihhLEYuRC5KZSkpe3ZhciBiPVIoYSxGLkQuR2QpLGM9RWQoUShhLEguSi5HYSksbnVsbCksZD1IcihjLnByZWZpeCk7Yy5wcmVmaXg9ZD09PSJfZ2NsIj8iIjpkO2lmKFIoYSxGLkQuU2IpKXt2YXIgZT1YcyhiLGMsIVEoYSxILkouTm0pLGF4KGEpKTtWKGEsSC5KLk5tLCEwKTtlJiZVKGEsRi5ELnFtLGUpfWlmKFIoYSxGLkQuSmUpKXt2YXIgZj1QcyhiLGMpLlJyO2YmJlUoYSxGLkQuTWwsCmYpfX19LGl4PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBkeDtzd2l0Y2goUShhLEguSi5kYSkpe2Nhc2UgWC5WLnhhOlUoYSxGLkQuZm0sVXEoITEpLl9ncyk7ZXgoYSk7ZngoYSxiKTtneChhLGIpO2lmKCFiLmpvKCl8fE0oNDIxKSl7dmFyIGM9bm0oam0uYmEuVmUpLGQ9WG8oRi5ELmthKSYmWG8oRi5ELm1hKTtpZihjJiZjLmdjbGlkJiYhZCYmIVEoYSxILkouWGUpKXt2YXIgZT1TdHJpbmcoYy5nY2xpZCksZj1uZXcgZXI7ZnIoZiw2KTtiLkNqKHt2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLGdjbGlkOmUscWE6ZixvYTpbNF19KX19YnJlYWs7Y2FzZSBYLlYuT2I6Y2FzZSBYLlYuRmI6ZXgoYSk7ZngoYSxiKTticmVhaztjYXNlIFguVi51YjppZihNKDQ1OCkmJlhvKEYuRC5rYSkmJlEoYSxILkoud2YpKXt2YXIgZz1RKGEsSC5KLkdhKTtoeChhLGIsYngoZykpfWJyZWFrO2Nhc2UgWC5WLllkOmV4KGEpLGZ4KGEsYiksZ3goYSxiKX1iLk90KGEpfSxmeD1mdW5jdGlvbihhLGIpe2lmKFhvKEYuRC5rYSkmJgpRKGEsSC5KLndmKSl7dmFyIGM9UShhLEguSi5HYSksZD1ieChjKSxlPVJzKGQpO1UoYSxGLkQuQmUsZS5FZyk7VShhLEYuRC5EZSxlLldoKTtVKGEsRi5ELkNlLGUuVWgpO00oNDIxKT8oangoYSxiLGMsZCksaHgoYSxiLGQpKTpXcyhkKT9qeChhLGIsYyxkKTpoeChhLGIsZCl9fSxoeD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9JHcoYSk7VHMoYywiZ2NsaWQiLCJnY2xhdyIsZCkuZm9yRWFjaChmdW5jdGlvbihmKXtiLkNqKGYpfSk7Yi5MbygpO2lmKCFjKXt2YXIgZT1PcyhCcihBcigpKT9ScCgpOnt9LE1zKTtlJiZVKGEsRi5ELnJoLGUpfX0sang9ZnVuY3Rpb24oYSxiLGMsZCl7VHMoZCwiYnJhaWRzIiwiZ2NsZ2IiLGF4KGEpKS5mb3JFYWNoKGZ1bmN0aW9uKGcpe2IuanIoZyl9KTtpZighZCl7dmFyIGU9UihhLEYuRC5HZCk7Yz1FZChjLG51bGwpO2MucHJlZml4PWQ7dmFyIGY9UHMoZSxjLCEwKS5RcjtmJiZVKGEsRi5ELkplLGYpfX0sZXg9ZnVuY3Rpb24oYSl7aWYoTSgxNikpe3ZhciBiPQpPKGEuTSxGLkQuemEpO2J8fChiPU9wKCExKT09PTE/QS50b3AubG9jYXRpb24uaHJlZjpBLmxvY2F0aW9uLmhyZWYpO3ZhciBjLGQ9UmooYiksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpO2lmKCFlKXt2YXIgZj1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2U9ZXx8SWooZiwiZ2NsaWQiLCExKX0oYz1lP2UubGVuZ3RoOnZvaWQgMCkmJlUoYSxGLkQuemwsYyl9fSxneD1mdW5jdGlvbihhLGIpe3ZhciBjPVhvKEYuRC5rYSkmJlhvKEYuRC5tYSk7aWYoIWIuam8oKXx8TSg0MjEpKXt2YXIgZDt2YXIgZTtiOnt2YXIgZixnPUEsaD1bXTt0cnl7Zy5uYXZpZ2F0aW9uJiZnLm5hdmlnYXRpb24uZW50cmllcyYmKGg9Zy5uYXZpZ2F0aW9uLmVudHJpZXMoKSl9Y2F0Y2goQyl7fWY9aDt2YXIgbD17fTt0cnl7Zm9yKHZhciBuPWYubGVuZ3RoLTE7bj49MDtuLS0pe3ZhciBwPWZbbl0mJmZbbl0udXJsO2lmKHApe3ZhciBxPShuZXcgVVJMKHApKS5zZWFyY2hQYXJhbXMscj1xLmdldCgiZ2NsaWQiKXx8CnZvaWQgMCx0PXEuZ2V0KCJnY2xzcmMiKXx8dm9pZCAwO2lmKHIpe2wuZ2NsaWQ9cjt0JiYobC5WaD10KTtlPWw7YnJlYWsgYn19fX1jYXRjaChDKXt9ZT1sfXZhciB1PWUsdj11LmdjbGlkLHg9dS5WaCx5O2lmKHYmJih4PT09dm9pZCAwfHx4PT09ImF3Inx8eD09PSJhdy5kcyJ8fFlmKDgpJiZ4PT09ImF3LmR2IikpaWYodiE9PXZvaWQgMCl7dmFyIHo9bmV3IGVyO2ZyKHosMik7ZnIoeiwzKTt5PXt2ZXJzaW9uOiJHQ0wiLHRpbWVzdGFtcDowLGdjbGlkOnYscWE6eixvYTpbM119fWVsc2UgeT12b2lkIDA7ZWxzZSB5PXZvaWQgMDtkPXk7ZCYmKCFjJiZRKGEsSC5KLlhlKSYmKGQuZ2NsaWQ9IjAiKSxiLkNqKGQpLGIuTG8oKSl9fSxkeD1mdW5jdGlvbigpe3RoaXMuSD1bXTt0aGlzLks9W107dGhpcy5OPXZvaWQgMH07az1keC5wcm90b3R5cGU7ay5Daj1mdW5jdGlvbihhKXtRcih0aGlzLkgsYSl9O2suanI9ZnVuY3Rpb24oYSl7UXIodGhpcy5LLGEpfTtrLmpvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSy5sZW5ndGg+CjB9O2suTG89ZnVuY3Rpb24oKXt0aGlzLk4hPT0hMSYmKHRoaXMuTj0hMSl9O2sueW89ZnVuY3Rpb24oYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7aWYoYS5sZW5ndGgpe3ZhciBlPVtdLGY9W10sZz1bXTthLmZvckVhY2goZnVuY3Rpb24oaCl7ZS5wdXNoKGguZ2NsaWQpO3ZhciBsLG47Zi5wdXNoKChuPShsPWgucWEpPT1udWxsP3ZvaWQgMDpsLmdldCgpKSE9bnVsbD9uOjApO2cucHVzaChWcyhoLm9hfHxbMF0pKX0pO2UubGVuZ3RoJiZVKGIsYy5pZCxlLmpvaW4oIi4iKSk7ZHx8KGYubGVuZ3RoJiZVKGIsYy5xYSxmLmpvaW4oIi4iKSksZy5sZW5ndGgmJlUoYixjLm9hLGcuam9pbigiLiIpKSl9fTtrLk90PWZ1bmN0aW9uKGEpe3RoaXMuSC5sZW5ndGg+MCYmdGhpcy55byh0aGlzLkgsYSx7aWQ6Ri5ELmxiLHFhOkYuRC5CZCxvYTpGLkQuQ2R9LHRoaXMuTik7KHRoaXMuSC5sZW5ndGg9PT0wfHxNKDQyMSkpJiZ0aGlzLnlvKHRoaXMuSyxhLHtpZDpGLkQuU2IscWE6Ri5ELmZoLApvYTpGLkQuZ2h9KX07dmFyIGt4PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbmplY3RBZHNTY3JpcHQiKX07d2Eoa3gsaHUpO2t4LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtreC5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTtreC5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIsYyl7YW8oYS5GbyxBLEIsYixmdW5jdGlvbigpe3JldHVybiB2b2lkIGEuamYoKX0sZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLnJkKHZvaWQgMCl9LGM9PW51bGw/dm9pZCAwOmMuYWYpfHxYbihhLkZvLGIucmVwbGFjZSgiJmZtdD00JiIsIiZmbXQ9MyYiKSxmdW5jdGlvbigpe3JldHVybiB2b2lkIGEuamYoKX0sZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLnJkKHZvaWQgMCl9LGM9PW51bGw/dm9pZCAwOmMuYWYpfTt2YXIgbHg9bmV3IGt4O3ZhciBteD1PYmplY3QuZnJlZXplKHthdHRyaWJ1dGlvbnNyYzoiIn0pLG54PU9iamVjdC5mcmVlemUoe2V2ZW50U291cmNlRWxpZ2libGU6ITEsdHJpZ2dlckVsaWdpYmxlOiEwfSk7ZnVuY3Rpb24gb3goKXt2YXIgYT1YTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU7cmV0dXJuIGEmJnliKGEuc2V0QXR0cmlidXRpb25SZXBvcnRpbmcpfTt2YXIgcHg9T2JqZWN0LmZyZWV6ZSh7Y2FjaGU6Im5vLXN0b3JlIixjcmVkZW50aWFsczoiaW5jbHVkZSIsbWV0aG9kOiJHRVQiLGtlZXBhbGl2ZTohMCxyZWRpcmVjdDoiZm9sbG93In0pOwpmdW5jdGlvbiBxeChhLGIsYyxkLGUsZil7aWYoIXliKEEuZmV0Y2gpKXJldHVybiBmPT1udWxsfHxmKHZvaWQgMCx2b2lkIDApLCExO3ZhciBnPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scHgpO2ImJihnLmJvZHk9YixnLm1ldGhvZD0iUE9TVCIpO25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZyxkKTtBLmZldGNoKGEsZykudGhlbihmdW5jdGlvbihoKXtpZihoLm9rKXtpZihoLmJvZHkpe3ZhciBsPWguYm9keS5nZXRSZWFkZXIoKSxuPW5ldyBUZXh0RGVjb2RlcjtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocCl7ZnVuY3Rpb24gcSgpe2wucmVhZCgpLnRoZW4oZnVuY3Rpb24ocil7dmFyIHQ7dD1yLmRvbmU7dmFyIHU9bi5kZWNvZGUoci52YWx1ZSx7c3RyZWFtOiF0fSk7dT1jLlIrdTtmb3IodmFyIHY9dS5pbmRleE9mKCJcblxuIik7diE9PS0xOyl7dmFyIHg9WmcseTthOnt2YXIgej1tKHUuc3Vic3RyaW5nKDAsdikuc3BsaXQoIlxuIikpLEM9CnoubmV4dCgpLnZhbHVlLEQ9ei5uZXh0KCkudmFsdWU7aWYoU2IoQywiZXZlbnQ6IG1lc3NhZ2UiKSYmU2IoRCwiZGF0YTogIikpe3ZhciBJPUQuc3Vic3RyaW5nKDYpO3RyeXt5PUpTT04ucGFyc2UoSSk7YnJlYWsgYX1jYXRjaChHKXt9fXk9dm9pZCAwfXgoYyx5KTt1PXUuc3Vic3RyaW5nKHYrMik7dj11LmluZGV4T2YoIlxuXG4iKX1jLlI9dTt0PyhlPT1udWxsfHxlKGgpLHAoKSk6cSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtlPT1udWxsfHxlKGgpO3AoKX0pfXEoKX0pfWU9PW51bGx8fGUoaCl9ZWxzZSBmPT1udWxsfHxmKGgsdm9pZCAwKX0pLmNhdGNoKGZ1bmN0aW9uKGgpe2Y9PW51bGx8fGYodm9pZCAwLGgpfSk7cmV0dXJuITB9O3ZhciByeD1mdW5jdGlvbihhKXtodS5jYWxsKHRoaXMsIkZldGNoUmljaFJlc3BvbnNlIiwxKTt0aGlzLk49YX07d2EocngsaHUpO3J4LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07cngucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07cngucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe3F4KGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5LHRoaXMuTixjPT1udWxsP3ZvaWQgMDpjLkdiLGEucGUsZnVuY3Rpb24oZCxlKXthLm9uRmFpbHVyZShlKX0pfTsKdmFyIHN4PWZ1bmN0aW9uKGEsYil7dmFyIGM9dm9pZCAwO2EgaW5zdGFuY2VvZiBrdT9jPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sbGQpOmEgaW5zdGFuY2VvZiByeCYmKGM9e30sb3goKSYmKGMuYXR0cmlidXRpb25SZXBvcnRpbmc9bngpKTshYiYmYyYmKGMuY3JlZGVudGlhbHM9Im9taXQiLGMubW9kZT0iY29ycyIpO3JldHVybiBjfSx0eD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iLm1ldGhvZDtRdyhhLGZ1bmN0aW9uKGYpe3ZhciBnPVEoYSxILkoub2IpLGg9WG8oZnApLGw9ZSBpbnN0YW5jZW9mIGl1PzM6ZSBpbnN0YW5jZW9mIGt4P2M9PT01fHxjPT09OD8zOjQ6ZSBpbnN0YW5jZW9mIGt1PyFnJiZoPzM6ODplIGluc3RhbmNlb2Ygcng/NzotMTtlIGluc3RhbmNlb2Yga3gmJmw9PT0zPyhmLmZtdD00LGYucmZtdD0zKTpmLmZtdD1sO25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZixjPT09NjY/e2djcDoiNCJ9Omd8fGM9PT04fHxjPT09NjU/ClR3Ont9KTt2YXIgbj1laVtGLkQuZWhdO24mJihmW25dPWMpO2lmKE0oNTY5KSl7dmFyIHA9Yi5DdCxxPXAuamsuZmlsdGVyKGZ1bmN0aW9uKHYpe3JldHVybiB2WzBdIT09dm9pZCAwfSkubWFwKGZ1bmN0aW9uKHYpe3JldHVybiB2WzBdLmVuZHBvaW50LmVuZHBvaW50fSk7cS5sZW5ndGg+MCYmKHEucHVzaChwLm1rWzBdLmVuZHBvaW50LmVuZHBvaW50KSxmLmVwcD1xLnNvcnQoZnVuY3Rpb24odix4KXtyZXR1cm4gdi14fSkuam9pbigifiIpKX12YXIgcj0iPyIra3YoZiksdD1zeChlLGgpLHU7dT0oZSBpbnN0YW5jZW9mIGl1fHxlIGluc3RhbmNlb2Yga3gpJiZYbygiYWRfdXNlcl9kYXRhIik/bXg6dm9pZCAwO2Qocix7R2I6dCxhZjp1fSl9KX07dmFyIHV4PWZ1bmN0aW9uKGEsYil7YXYuY2FsbCh0aGlzLGEsYiwyKX07d2EodXgsYXYpO3V4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjKXt0eChhLGIsdGhpcy5lbmRwb2ludCxjKX07dmFyIHZ4PW5ldyB1eCg1LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSx3eD1uZXcgdXgoNixbXSkseHg9bmV3IHV4KDYzLFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSx5eD1uZXcgdXgoNjUsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLHp4PW5ldyB1eCg4LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSxBeD1uZXcgdXgoNjYsW10pLEJ4PW5ldyB1eCg3NCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk7dmFyIEN4PWZ1bmN0aW9uKCl7WWcuYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShDeCxZZyk7Q3gucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXtaYyhhLHZvaWQgMCwkZyh0aGlzLGIpLGIuYXR0cmlidXRpb25fcmVwb3J0aW5nJiZveCgpP214Ont9KX07Q3gucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmF0dHJpYnV0aW9uX3JlcG9ydGluZyYmb3goKT97YXR0cmlidXRpb25SZXBvcnRpbmc6bnh9Ont9LGQ9JGcodGhpcyxiKTtiLnByb2Nlc3NfcmVzcG9uc2U/cXgoYSx2b2lkIDAsdGhpcyxjLHZvaWQgMCxkKTptZChhLHZvaWQgMCxjLHZvaWQgMCxkKX07dmFyIER4PWZ1bmN0aW9uKCl7Q3guYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShEeCxDeCk7RHgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXtDeC5wcm90b3R5cGUuSC5jYWxsKHRoaXMsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGIse3Byb2Nlc3NfcmVzcG9uc2U6ITF9KSl9O3ZhciBFeD1mdW5jdGlvbigpe307d2EoRXgsb3UpO0V4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouZGEpIT09WC5WLnhhKXJldHVybltdO3ZhciBiPVhvKGZwKSxjPSEhUShhLEguSi5vYiksZD0hIVEoYSxILkouRWMpLGU9W3tlbmRwb2ludDpiP2Q/Yz95eDp4eDpjP3p4OnZ4Ond4LG1ldGhvZDpuZCgpP2I/TSg0OTApP2M/bnU6bmV3IHJ4KG5ldyBEeCk6bHg6bnU6bHV9XSxmPWI/Yz92b2lkIDA6eng6QXg7ZiYmZS5wdXNoKHtlbmRwb2ludDpmLG1ldGhvZDpudX0pO3JldHVybiBlfTtFeC5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXtyZXR1cm4gUShhLEguSi5kYSk9PT1YLlYueGEmJldqKCkmJiFRKGEsSC5KLkVjKSYmTSg1NjkpJiZYbyhmcCk/W1t7ZW5kcG9pbnQ6QngsbWV0aG9kOm51fV1dOltdfTt2YXIgRng9bmV3IEV4O3ZhciBHeD1mdW5jdGlvbihhLGIpe2d1LmNhbGwodGhpcyxhLGIsMSwhMSwzKX07d2EoR3gsZ3UpO0d4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1sdihhKSxlPSI/IitrdihkKTtjKGUse0diOmxkfSl9O3ZhciBIeD1uZXcgR3goNTQsWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0pLEl4PW5ldyBHeCg1NSxbXSksSng9ZnVuY3Rpb24oKXt9O3dhKEp4LG91KTtKeC5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXtyZXR1cm5be2VuZHBvaW50Okh4LksoYSk/SHg6SXgsbWV0aG9kOm51fV19O3ZhciBLeD1uZXcgSng7CnZhciBMeD1mdW5jdGlvbigpe2F2LmNhbGwodGhpcyw5LFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdLDEpfTt3YShMeCxhdik7THgucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKGEpe3JldHVybiBRKGEsSC5KLmRhKT09PVguVi5aZH07THgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7UXcoYSxmdW5jdGlvbihlKXt2YXIgZj1laVtGLkQuZWhdO2YmJihlW2ZdPWQuZW5kcG9pbnQpO2UuZ2NwPTE7ZS5jdF9jb29raWVfcHJlc2VudD0xO2UuZm10PWIubWV0aG9kIGluc3RhbmNlb2Yga3U/ODozO3ZhciBnPSI/IitrdihlKTtjKGcse0diOmxkfSl9KX07dmFyIE14PW5ldyBMeCxOeD1mdW5jdGlvbigpe307d2EoTngsb3UpO054LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuW3tlbmRwb2ludDpNeCxtZXRob2Q6bnV9LHtlbmRwb2ludDpNeCxtZXRob2Q6bHV9XX07dmFyIE94PW5ldyBOeDt2YXIgUHg9WzY4XTt2YXIgUXg9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YTt0aGlzLnRpbWVvdXRNcz1iO3RoaXMuUmI9dm9pZCAwfSxSeD1mdW5jdGlvbihhKXthLlJifHwoYS5SYj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5IKCk7YS5SYj12b2lkIDB9LGEudGltZW91dE1zKSl9LFRuPWZ1bmN0aW9uKGEpe2EuUmImJihjbGVhclRpbWVvdXQoYS5SYiksYS5SYj12b2lkIDApfTt2YXIgU3g9ZnVuY3Rpb24oKXt2YXIgYT1OZig2NiwwKTt0aGlzLks9W107dGhpcy5SPWE7dGhpcy5IPVlhKCl9LFV4PWZ1bmN0aW9uKGEpe3ZhciBiPVR4O2IuSy5wdXNoKGEpO2IuTnx8KGIuTj1mdW5jdGlvbigpe2Zvcih2YXIgYz1tKGIuSyksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7dHJ5e2UoKX1jYXRjaChsKXt9fWZvcih2YXIgZj1tKGIuSC52YWx1ZXMoKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPXZvaWQgMDsoaD1nLnZhbHVlLndlKT09bnVsbHx8VG4oaCl9Yi5ILmNsZWFyKCl9LCRjKEEsInBhZ2VoaWRlIixiLk4pKX0sVng9ZnVuY3Rpb24oYSl7dmFyIGI9YS5tYXRjaChNbilbM118fG51bGwsYz0oYj9kZWNvZGVVUkkoYik6Yil8fCIiLGQ9UG4oYSwibGFiZWwiKXx8IiIsZT1QbihhLCJyYW5kb20iKXx8IiI7cmV0dXJuIGMrIjoiK0xuKGQpKyI6IitMbihlKX0sV3g9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVR4LAplPVZ4KGEpO2lmKCEoZC5ILmhhcyhlKXx8ZC5ILnNpemU+PWQuUikpe3ZhciBmPXt9O2ImJmI+MCYmYyYmKGYud2U9bmV3IFF4KGMsYikpO2QuSC5zZXQoZSxmKTt2YXIgZzsoZz1mLndlKT09bnVsbHx8UngoZyl9fSxVbj1mdW5jdGlvbihhLGIpe3ZhciBjPVZ4KGIpLGQsZTsoZD1hLkguZ2V0KGMpKT09bnVsbHx8KGU9ZC53ZSk9PW51bGx8fFRuKGUpO2EuSC5kZWxldGUoYyl9O1N4LnByb3RvdHlwZS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSC5zaXplfTsKdmFyIFh4PWZ1bmN0aW9uKGEsYil7dmFyIGMsZD0oYz1RKGEsSC5KLmduKSk9PW51bGw/dm9pZCAwOmNbYi5wYl07cmV0dXJuIGQhPT12b2lkIDAmJmQ+PWIuT2d9LFl4PWZ1bmN0aW9uKGEsYil7aWYoUShhLEguSi5kYSk9PT1YLlYueGEmJiFRKGEsSC5KLkVjKSYmWHgoYSxudikmJiEoYjw9MCkpcmV0dXJuIG5ldyBReChmdW5jdGlvbigpe3J2KG52KX0sYil9LFp4PWZ1bmN0aW9uKGEsYixjKXtRKGIsSC5KLmRhKSE9PVguVi54YXx8UShiLEguSi5FYyl8fChUeHx8KFR4PW5ldyBTeCxYeChiLG92KSYmVXgoZnVuY3Rpb24oKXt2YXIgZDtydihvdiwoZD1UeCk9PW51bGw/dm9pZCAwOmQuZ2V0U2l6ZSgpKX0pKSxYeChiLG52KT9XeChhLGMsZnVuY3Rpb24oKXtydihudik7dmFyIGQ7KGQ9VHgpPT1udWxsfHxVbihkLGEpfSk6V3goYSkpfSxUeDsKdmFyICR4PWZ1bmN0aW9uKGEsYixjLGQsZSl7ZT1lPT09dm9pZCAwPzA6ZTtpZihkKXt2YXIgZj1RKGEsSC5KLkViKTtiPWIuTGEoe3JhbmRvbTpmK2UsZGF0YTpkfSl9cmV0dXJuW3tlbmRwb2ludDpiLG1ldGhvZDpjfSx7ZW5kcG9pbnQ6YixtZXRob2Q6bHV9XX0sYXk9ZnVuY3Rpb24oYSxiLGMsZCl7YXYuY2FsbCh0aGlzLGEsYiwxLGMpO3RoaXMuTj1kfTt3YShheSxhdik7YXkucHJvdG90eXBlLmlzU3VwcG9ydGVkPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVuZHBvaW50PT09NjgmJlEoYSxILkoub2IpPyExOiEwfTtheS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bHYoYSk7dGhpcy5OJiZuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGQsdGhpcy5OKTt2YXIgZT1laVtGLkQuZWhdO2UmJihkW2VdPXRoaXMuZW5kcG9pbnQpO3RoaXMuZW5kcG9pbnQhPT02OCYmKGRlbGV0ZSBkLmdjbGF3LGRlbGV0ZSBkLmdjbGF3X3NyYyk7dmFyIGY9dm9pZCAwO1EoYSwKSC5KLm9iKT8oZC5nY3A9MSxkLmN0X2Nvb2tpZV9wcmVzZW50PTEpOnRoaXMuZW5kcG9pbnQ9PT02OCYmKGQuZ2NwPTUsYi5tZXRob2QgaW5zdGFuY2VvZiBrdSYmKGQuZm10PTgsZj1sZCkpO3ZhciBnPSI/IitrdihkKTtjKGcsZj97R2I6Zn06e30pfTtheS5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBheSh0aGlzLmVuZHBvaW50LHRoaXMuWix0aGlzLmphLGEpfTt2YXIgYnk9bmV3IGF5KDksWyJhZF9zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIl0sITApLGN5PW5ldyBheSg2OCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSwhMSksZHk9ZnVuY3Rpb24oKXt9O3dhKGR5LG91KTtkeS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1ndihhKTtyZXR1cm4gJHgoYSxieSxRKGEsSC5KLm9iKT9udTpseCxiPT1udWxsP3ZvaWQgMDpiWzBdKX07ZHkucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9Z3YoYSksYz1bXTtNKDQ1OCkmJiFRKGEsSC5KLm9iKSYmCmMucHVzaCgkeChhLGN5LG51LGI9PW51bGw/dm9pZCAwOmJbMF0pKTtpZihiJiZiLmxlbmd0aD4xKWZvcih2YXIgZD1RKGEsSC5KLm9iKT9udTpseCxlPTE7ZTxiLmxlbmd0aDsrK2UpYy5wdXNoKCR4KGEsYnksZCxiW2VdLGUpKTtyZXR1cm4gY307dmFyIGV5PW5ldyBkeTsKdmFyIGd5PWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIodil7cmV0dXJuIHYuc3BsaXQoIn4iKS5maWx0ZXIoZnVuY3Rpb24oeCl7dmFyIHk9eC5zcGxpdCgiLiIpWzBdO3JldHVybiFMdy5zb21lKGZ1bmN0aW9uKHope3JldHVybiBTYih5LHopfSl9KS5qb2luKCJ+Iil9aWYoTncoYSkmJlEoYSxILkouZmQpKXt2YXIgYz1RKGEsSC5KLllhKSxkPUJwKCksZT1ndyhjLGQpLGY9ZS5zb21lKGZ1bmN0aW9uKHYpe3JldHVybiBTYih2Lm5hbWUsInJhdyIpfSksZz1mdyhlKSxoPWcuT28sbD1nLmlpLG49Zy5oYXNVcGQscD1nLlluLHE9Zy5lbmNyeXB0aW9uS2V5U3RyaW5nLHI9Zy5tZXRhZGF0YVBhcmFtLHQ9W107UncoMSxhKXx8dC5wdXNoKCImZW09IitiKGgpKTt0LnB1c2goIiZlbWU9IitwKTt2YXIgdTtyZXR1cm4gdT17aWk6bCxJdDp0LHN2OmUsWG46cixlbmNyeXB0aW9uS2V5U3RyaW5nOnEsVnI6ZnVuY3Rpb24odil7dmFyIHg9ZnkoYSx1KSx5PXN3KFEoYSxILkouWWEpLCEwLCEwKTtJdSh5LApmdW5jdGlvbih6KXtpZighUncoMSxhKSl7dmFyIEM9KHo9PW51bGw/dm9pZCAwOnoucGFyYW0pfHxvdyh7eWI6W119KS5wYXJhbTt4LmVtPUN9dih4KX0pfSxoYXNVcGQ6bixwZjp2b2lkIDAscmF3UGlpQWRkZWQ6Zn19fSxmeT1mdW5jdGlvbihhLGIpe3ZhciBjLGQ9KGM9Yi5wZikhPW51bGw/YzozLGU9e2d0bTpkdSh7bWM6UShhLEguSi5OYiksVGc6YS5NLmlzR3RtRXZlbnQsZWY6UShhLEguSi5DYykscGY6ZH0pfTtiLlhuJiYoZS5lbWQ9Yi5Ybik7aWYoYi5oYXNVcGQpe3ZhciBmPQpTdyhhKTtmJiYoZS5lY3NpZD1mKX1iLnJhd1BpaUFkZGVkJiYoZVsiZ2FwLnJwIl09IjEiKTtyZXR1cm4gZX07dmFyIGRnO2Z1bmN0aW9uIGh5KGEsYil7dmFyIGM7KGM9ZGcpPT1udWxsfHwkZihjLkgsYSxiKX07dmFyIGl5PUFhKFsiLyJdKSxqeT1mdW5jdGlvbihhKXt0aGlzLkg9YTt0aGlzLmZhaWx1cmVUeXBlPXZvaWQgMH07ankucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ILmFjdGl2ZTtkPyhkLnBvc3RNZXNzYWdlKHt0eXBlOjEsY29tbWFuZDphfSksYih7ZGF0YToiIn0pKTpjKHtmYWlsdXJlVHlwZToxMyxkYXRhOiIifSl9Y2F0Y2goZSl7Yyh7ZmFpbHVyZVR5cGU6MTEsZGF0YTplLm1lc3NhZ2V9KX19O3ZhciBreT1mdW5jdGlvbihhLGIpe3RoaXMuZmFpbHVyZVR5cGU9YTt0aGlzLkg9Yn07a3kucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXtjKHtmYWlsdXJlVHlwZTp0aGlzLmZhaWx1cmVUeXBlLGRhdGE6ImYiK3RoaXMuZmFpbHVyZVR5cGUrKCJ0IisoKG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5IKSl9KX07CnZhciBueT1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuaW5pdFRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dGhpcy5IPW5ldyBreSgxNSx0aGlzLmluaXRUaW1lKTt2YXIgYz1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlKCl9LDIwKX0pLGQ9bHkoYSkudGhlbihmdW5jdGlvbihlKXtiLkg9bmV3IGp5KGUpO215KGIsZSl9KS5jYXRjaChmdW5jdGlvbigpe2IuSD1uZXcga3koNCxiLmluaXRUaW1lKX0pO3RoaXMuSz1Qcm9taXNlLnJhY2UoW2MsZF0pfSxteT1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGQpe2QmJmQuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKCl7aWYoZC5zdGF0ZT09PSJyZWR1bmRhbnQiKXt2YXIgZT1iLmFjdGl2ZTtlJiZlLnN0YXRlIT09InJlZHVuZGFudCJ8fChhLkg9bmV3IGt5KDEwLGEuaW5pdFRpbWUpKX19KX07YyhiLmFjdGl2ZSk7YyhiLndhaXRpbmcpO2MoYi5pbnN0YWxsaW5nKTsKYi5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVmb3VuZCIsZnVuY3Rpb24oKXtjKGIuaW5zdGFsbGluZyl9KX07bnkucHJvdG90eXBlLmRlbGVnYXRlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSy50aGVuKGZ1bmN0aW9uKCl7ZC5ILmlvKGEsYixjKX0pfTtueS5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gMn07CnZhciBseT1mdW5jdGlvbihhKXt2YXIgYixjPUxmKDExKTtjPUxmKDEwKTtiPWM7dmFyIGQ9e3Njb3BlOihUYihhLmhyZWYsIi8iKT9hLmhyZWYuc2xpY2UoMCwtMSk6YS5ocmVmKSsiL18vc2VydmljZV93b3JrZXIifTtiJiYoZC51cGRhdGVWaWFDYWNoZT0iYWxsIik7dmFyIGUsZj1veShhLGIpLGc9bmV3IE1hcChbWyJwYXRoIixhLnBhdGhuYW1lXV0pLGg9SnAoa2MoZikudG9TdHJpbmcoKSk7ZT1McChoLnprLGgucGFyYW1zLGguZnJhZ21lbnQsZyk7dmFyIGw9SWMoKSxuPWtjKGUpO3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLGQpfWNhdGNoKHApe3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLnRvU3RyaW5nKCksZCl9Y2F0Y2gocSl7cmV0dXJuIFByb21pc2UucmVqZWN0KHEpfX19OwpmdW5jdGlvbiBveShhLGIpe2Zvcih2YXIgYz1LcChpeSksZD1hLnBhdGhuYW1lLnNwbGl0KCIvIikuZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBoLmxlbmd0aD4wfSksZT1bXS5jb25jYXQodyhkKSxbIl8iLCJzZXJ2aWNlX3dvcmtlciIsYiwic3cuanMiXSksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWM9TXAoYyxnLnZhbHVlKTtyZXR1cm4gY307ZnVuY3Rpb24gcHkoYSl7dmFyIGI9bm0oam0uYmEuT2gpLGM9Yj09bnVsbD92b2lkIDA6YlthXTtjfHxhIT09ImxpdGUifHwoYz1iPT1udWxsP3ZvaWQgMDpiLmZ1bGwpO3JldHVybiBjfXZhciBxeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cHkoImZ1bGwiKTtkP2QuZGVsZWdhdGUoYSxiLGMpOmMoe2ZhaWx1cmVUeXBlOjE2fSl9O2Z1bmN0aW9uIHJ5KGEsYixjLGQsZSl7cXkoe2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6MSx0ZW1wbGF0ZXM6Yixib2R5OiIiLHByb2Nlc3NSZXNwb25zZTohMSxlbmNyeXB0aW9uS2V5U3RyaW5nOmUsc29SZWZlcnJlcjpBLmxvY2F0aW9uLmhyZWZ9fSxjLGZ1bmN0aW9uKGYpe2QoZi5mYWlsdXJlVHlwZSxmLmRhdGEpfSl9O3ZhciBzeT1mdW5jdGlvbihhKXtodS5jYWxsKHRoaXMsIlNlcnZpY2VXb3JrZXJGcmFtZWxlc3MiKTt0aGlzLk49YX07d2Eoc3ksaHUpO3N5LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtzeS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTtzeS5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXM7cnkoYix0aGlzLk4uaWksZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKGQpe2MuTi5wZj1kO2EucmQodm9pZCAwKX0sdGhpcy5OLmVuY3J5cHRpb25LZXlTdHJpbmcpfTsKdmFyIHR5PWZ1bmN0aW9uKGEpe2F2LmNhbGwodGhpcyxhLFsiYWRfdXNlcl9kYXRhIiwiYWRfc3RvcmFnZSJdLDEsITEpfTt3YSh0eSxhdik7dHkucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXM7UXcoYSxmdW5jdGlvbihlKXt2YXIgZj1RKGEsSC5KLnBqKSxnPWZ1bmN0aW9uKCl7dmFyIG49a3YoZSk7ZiYmYi5tZXRob2QgaW5zdGFuY2VvZiBzeSYmKG4rPWYuSXQuam9pbigiIikpO2Mobix7R2I6bGR9KX07aWYoZC5lbmRwb2ludD09PTIxfHxkLmVuZHBvaW50PT09NzMpe3ZhciBoPWdrKGIuSWMpO2gmJihlLl91aXA9aCl9aWYoZiYmKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxmeShhLGYpKSwhKGIubWV0aG9kIGluc3RhbmNlb2Ygc3kpKSl7dmFyIGw7Zi5wZj0obD1mLnBmKSE9bnVsbD9sOjE3O2YuVnIoZnVuY3Rpb24obil7bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxlLG4pO2coKX0pO3JldHVybn1nKCl9KX07dHkucHJvdG90eXBlLlI9CmZ1bmN0aW9uKGEpe3JldHVybiBhdi5wcm90b3R5cGUuUi5jYWxsKHRoaXMsYSkuc2xpY2UoMCwtMSl9O3ZhciB1eT1uZXcgdHkoMTEpLHZ5PW5ldyB0eSg3Miksd3k9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTt0aGlzLlI9Yn07d2Eod3ksb3UpO3d5LnByb3RvdHlwZS5mYT1mdW5jdGlvbigpe3JldHVybiBNKDU2Myk/W3RoaXMuWix0aGlzLlJdOk0oMTQxKT9bdGhpcy5aXTpbdGhpcy5SXX07d3kucHJvdG90eXBlLmphPWZ1bmN0aW9uKCl7cmV0dXJuIG51LmlzU3VwcG9ydGVkKCk/W251XTpbbXUsbHVdfTt3eS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9dGhpcy5mYSgpLGQ9Yy5mbGF0TWFwKGZ1bmN0aW9uKGYpe3JldHVybiBiLmphKCkubWFwKGZ1bmN0aW9uKGcpe3JldHVybntlbmRwb2ludDpmLG1ldGhvZDpnfX0pfSk7aWYodGhpcy5OKCkpe3ZhciBlPVEoYSxILkoucGopO2UmJmUuaGFzVXBkJiZkLnVuc2hpZnQoe2VuZHBvaW50OmNbMF0sbWV0aG9kOm5ldyBzeShlKX0pfXJldHVybiBkfTsKdmFyIHh5PWZ1bmN0aW9uKCl7d3kuY2FsbCh0aGlzLHV5LHZ5KX07d2EoeHksd3kpO3h5LnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuITB9O3ZhciB5eT1uZXcgeHksenk9bmV3IHR5KDIxKSxBeT1uZXcgdHkoNzMpLEJ5PWZ1bmN0aW9uKCl7d3kuY2FsbCh0aGlzLHp5LEF5KX07d2EoQnksd3kpO0J5LnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7cmV0dXJuIE0oNTg3KX07dmFyIEN5PW5ldyBCeTt2YXIgRHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0wO3RoaXMuSz0hMTtNKDQ2MikmJlVtKCJmcyIsZnVuY3Rpb24oKXtyZXR1cm4gYS5IPjAmJmEuSDw1P1N0cmluZyhhLkgpOnZvaWQgMH0sITEpfSxFeTtmdW5jdGlvbiBGeShhLGIpe0V5fHwoRXk9bmV3IER5KTt2YXIgYz1FeTtNKDQ2MikmJmZuLksmJihiPT09Imd0bS5mb3JtU3VibWl0Inx8Yj09PSJmb3JtX3N1Ym1pdCImJklmKDQ1KSkmJihhPT09MXx8Yy5LKSYmKGMuSz0hMCxjLkg9YSxhIT09NT9WbSgiZnMiKTpRbS5ILmZzPSExKX07dmFyIEd5PWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouZGEpPT09WC5WLkthKXt2YXIgYj1mdShhKTtpZighTSg0MjcpJiYoanAoYSxiKXx8UShhLEguSi5oZCkpJiZYbyhmcCkpe3ZhciBjPWxwKGEsYik7aWYoYyl7dmFyIGQ9Tm0oNjksYyk7VGwoZCxhLDY5KTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OjY5LGV2ZW50SWQ6YS5NLmV2ZW50SWQscHJpb3JpdHlJZDphLk0ucHJpb3JpdHlJZH0sZCl9fXZhciBlPXliKGEuTS5vblN1Y2Nlc3MpP2EuTS5vblN1Y2Nlc3M6eGI7JHUoYSxiKTtlKCl9fTt2YXIgSHk9e1g6e1dxOjAsRWs6MSxaZzoyLFhrOjMsbWk6NCxWazo1LFdrOjYsWWs6NyxuaTo4LHRtOjksc206MTAsVGk6MTEsdm06MTIsQmg6MTMsRW06MTQsaWo6MTUsU3E6MTYsamQ6MTcsdWo6MTgsdmo6MTksd2o6MjAsQ246MjEseGo6MjJ9fTtIeS5YW0h5LlguV3FdPSJSRVNFUlZFRF9aRVJPIjtIeS5YW0h5LlguRWtdPSJBRFNfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5aZ109IkNPTlRBSU5FUl9FWEVDVVRFX1NUQVJUIjtIeS5YW0h5LlguWGtdPSJDT05UQUlORVJfU0VUVVBfRU5EIjtIeS5YW0h5LlgubWldPSJDT05UQUlORVJfU0VUVVBfU1RBUlQiO0h5LlhbSHkuWC5Wa109IkNPTlRBSU5FUl9CTE9DS0lOR19FTkQiO0h5LlhbSHkuWC5Xa109IkNPTlRBSU5FUl9FWEVDVVRFX0VORCI7SHkuWFtIeS5YLllrXT0iQ09OVEFJTkVSX1lJRUxEX0VORCI7SHkuWFtIeS5YLm5pXT0iQ09OVEFJTkVSX1lJRUxEX1NUQVJUIjtIeS5YW0h5LlgudG1dPSJFVkVOVF9FWEVDVVRFX0VORCI7Ckh5LlhbSHkuWC5zbV09IkVWRU5UX0VWQUxVQVRJT05fRU5EIjtIeS5YW0h5LlguVGldPSJFVkVOVF9FVkFMVUFUSU9OX1NUQVJUIjtIeS5YW0h5Llgudm1dPSJFVkVOVF9TRVRVUF9FTkQiO0h5LlhbSHkuWC5CaF09IkVWRU5UX1NFVFVQX1NUQVJUIjtIeS5YW0h5LlguRW1dPSJHQTRfQ09OVkVSU0lPTl9ISVQiO0h5LlhbSHkuWC5pal09IlBBR0VfTE9BRCI7SHkuWFtIeS5YLlNxXT0iUEFHRVZJRVciO0h5LlhbSHkuWC5qZF09IlNOSVBQRVRfTE9BRCI7SHkuWFtIeS5YLnVqXT0iVEFHX0NBTExCQUNLX0VSUk9SIjtIeS5YW0h5LlgudmpdPSJUQUdfQ0FMTEJBQ0tfRkFJTFVSRSI7SHkuWFtIeS5YLndqXT0iVEFHX0NBTExCQUNLX1NVQ0NFU1MiO0h5LlhbSHkuWC5Dbl09IlRBR19FWEVDVVRFX0VORCI7SHkuWFtIeS5YLnhqXT0iVEFHX0VYRUNVVEVfU1RBUlQiO3ZhciBJeT17fTtJeS5YPUh5Llg7dmFyIEp5PXtSdToiTCIsWHE6IlMiLGt2OiJZIixSdDoiQiIsbnU6IkUiLE51OiJJIixmdjoiVEMiLHZ1OiJIVEMiLG91OiJGIixNdToiQyJ9LEt5PXtYcToiUyIsbHU6IlYiLGF1OiJFIixkdjoidGFnIn0sTHk9e30sTXk9KEx5W0l5LlgudmpdPSI2IixMeVtJeS5YLndqXT0iNSIsTHlbSXkuWC51al09IjciLEx5KTtmdW5jdGlvbiBOeShhKXt2YXIgYj1FKDUpLGM9TnVtYmVyKGEuZXZlbnRJZCksZD1OdW1iZXIoYS50YWdJZCk7cmV0dXJuKFNiKGIsIkdUTS0iKT9iOiJHVE0tIitiKSsiOiIrKEFiKGMpP2MrIjoiOiIiKSsoQWIoZCk/ZCsiOiI6IiIpK2Euc3RhZ2V9O2Z1bmN0aW9uIE95KCl7dmFyIGE9cmQoKTtyZXR1cm4hIShhJiZhLm1hcmsgaW5zdGFuY2VvZiBGdW5jdGlvbiYmYS5tZWFzdXJlIGluc3RhbmNlb2YgRnVuY3Rpb24mJmEuY2xlYXJNZWFzdXJlcyBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZhLmNsZWFyTWFya3MgaW5zdGFuY2VvZiBGdW5jdGlvbil9O3ZhciBQeT1mdW5jdGlvbigpe3RoaXMuSD17fX0sUXk7ZnVuY3Rpb24gUnkoKXtReXx8KFF5PW5ldyBQeSk7cmV0dXJuIFF5fWZ1bmN0aW9uIFN5KGEpe3ZhciBiPVJ5KCksYz1OeShhKTtyZXR1cm4gYi5IW2NdfWZ1bmN0aW9uIFR5KGEsYil7dmFyIGM7YTp7dmFyIGQ9UnkoKTtpZihPeSgpKXt2YXIgZT1OeShhKSxmLGc7aWYoZj0oZz1yZCgpKT09bnVsbD92b2lkIDA6Zy5tYXJrKGUsYikpe2M9ZC5IW2VdPWY7YnJlYWsgYX19Yz12b2lkIDB9cmV0dXJuIGN9O2Z1bmN0aW9uIFV5KGEsYil7aWYoT3koKSl7YS5lbnRyeT1OeShhKTt2YXIgYz1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEpO2Muc3RhZ2U9YjtkZWxldGUgYy5zZW50O3ZhciBkPVN5KGI9PT1JeS5YLmpkP3tzdGFnZTpJeS5YLmpkfTpjKSxlPVN5KGEpO2lmKGQmJmUmJiEoZC5zdGFydFRpbWU+ZS5zdGFydFRpbWUpKXtjLnN0YWdlPWIrIjoiK2Euc3RhZ2U7dmFyIGY9TnkoYyksZz17c3RhcnQ6ZC5uYW1lLGVuZDplLm5hbWV9LGgsbDtyZXR1cm4obD0oaD1yZCgpKT09bnVsbD92b2lkIDA6aC5tZWFzdXJlKGYsZykpPT1udWxsP3ZvaWQgMDpsLmR1cmF0aW9ufX19O3ZhciBXeT1mdW5jdGlvbigpe3ZhciBhPTU7VnkuUm8+MCYmKGE9VnkuUm8pO3RoaXMuSz1hO3RoaXMuSD0wO3RoaXMuTj1bXX0sWHk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuSDxhLks/ITE6TmIoKS1hLk5bYS5IJWEuS108MUUzfSxZeT1mdW5jdGlvbihhKXt2YXIgYj1hLkgrKyVhLks7YS5OW2JdPU5iKCl9O3ZhciBWeT17Um86TmYoMywwKX0sJHk9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMueWE9W107dGhpcy5IPXZvaWQgMDt0aGlzLlo9e307dGhpcy5LPXZvaWQgMDt0aGlzLmphPW5ldyBXeTt0aGlzLkxhPTFFMzt0aGlzLlI9dGhpcy5OPSExO3RoaXMuZmE9RGIoKTtaeSh0aGlzLGZ1bmN0aW9uKCl7dmFyIGI9W1sidiIsIjMiXSxbInQiLCJ0Il0sWyJwaWQiLFN0cmluZyhhLmZhKV1dLGM9ZHUoKTtjJiZiLnB1c2goWyJndG0iLGNdKTtyZXR1cm4gYn0pO2NkKGZ1bmN0aW9uKCl7YS5mYT1EYigpfSw4NjRFNSl9LFp5PWZ1bmN0aW9uKGEsYil7YS55YS5wdXNoKGIpfSxhej1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5IO2lmKGQ9PT12b2lkIDApaWYoYylkPXJqKCk7ZWxzZSByZXR1cm4iIjtmb3IodmFyIGU9W2ZrKCJodHRwczovLyIrRSgyMSkpLCIvYSIsIj9pZD0iK0UoNSldLGY9bShhLnlhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSlmb3IodmFyIGg9Zy52YWx1ZSxsPQpoKHtldmVudElkOmQsdGY6ISFifSksbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1tKHAudmFsdWUpLHI9cS5uZXh0KCkudmFsdWUsdD1xLm5leHQoKS52YWx1ZTtlLnB1c2goIiYiK3IrIj0iK3QpfWUucHVzaCgiJno9MCIpO3JldHVybiBlLmpvaW4oIiIpfSxiej1mdW5jdGlvbihhKXtpZigkaygyNikmJihhLksmJihBLmNsZWFyVGltZW91dChhLkspLGEuSz12b2lkIDApLGEuSCE9PXZvaWQgMCYmYS5SKSl7dmFyIGI9bG8oY28uaWEuWmIpO2lmKGdvKGIpKWEuTnx8KGEuTj0hMCxpbyhiLGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYnooYSl9KSk7ZWxzZSBpZihhLlpbYS5IXXx8WHkoYS5qYSl8fGEuTGEtLTw9MClQKDEpLGEuWlthLkhdPSEwO2Vsc2V7WXkoYS5qYSk7dmFyIGM9YXooYSwhMCk7WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmEuSH0sYyk7YS5SPSExO2EuTj0hMX19fSxjej1mdW5jdGlvbihhKXthLkt8fChhLks9CkEuc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiB2b2lkIGJ6KGEpfSw1MDApKX0sZXo9ZnVuY3Rpb24oYSl7dmFyIGI9ZHo7Yi5aW2FdfHwoYSE9PWIuSCYmKGJ6KGIpLGIuSD1hKSxiLlI9ITAsY3ooYiksYXooYikubGVuZ3RoPj0yMDIyJiZieihiKSl9LGR6O2Z1bmN0aW9uIGZ6KGEpe2d6KCk7WnkoZHosYSl9ZnVuY3Rpb24gaHooKXt2YXIgYTthPWE9PT12b2lkIDA/ITE6YTtneigpO3ZhciBiPWEsYz1kejtiPWI9PT12b2lkIDA/ITE6YjtpZihmbi5OJiYkaygyNikpe3ZhciBkPWF6KGMsITAsITApO2I/Vm4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCk6WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1NixldmVudElkOmMuSH0sZCl9fWZ1bmN0aW9uIGd6KCl7ZHp8fChkej1uZXcgJHkpfTtmdW5jdGlvbiBpeigpe2Z1bmN0aW9uIGEoYyxkKXt2YXIgZT13YihyYltkXXx8W10pO2UmJmIucHVzaChbYyxlXSl9dmFyIGI9W107YSgidSIsIkdUTSIpO2EoInV0IiwiVEFHR0lORyIpO2EoImgiLCJIRUFMVEgiKTtyZXR1cm4gYn07dmFyIGp6PSJodHRwczovLyIrRSgyMSksa3o9ZnVuY3Rpb24oKXt0aGlzLk49ITE7dGhpcy5SPVtdO3RoaXMuWj1bXTt0aGlzLkg9e1RDOjAsSFRDOjB9O3RoaXMuSz17fX0sbHo9ZnVuY3Rpb24oYSxiLGMsZCl7YS5LW2JdfHwoYS5LW2JdPXt9KTthLktbYl1bY109ZH0sb3o9ZnVuY3Rpb24oYSl7dmFyIGI9IiIsYz0iIixkPW16KCk7QWIoZCkmJihhLkguST1NYXRoLmZsb29yKGQpKTtjPW56KGEuSCxKeSkudG9TdHJpbmcoKTtmb3IodmFyIGU9bShPYmplY3Qua2V5cyhhLkspKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWEuS1tnXS5uYW1lLGw9IiIsbj1ueihhLktbZ10sS3kpO24mJihsPWgrIi4iK24udG9TdHJpbmcoKSxiKz0ifiIrbCl9dmFyIHA9In5BV0NUIithLlIuam9pbigiLiIpLHE9In5HQSIrYS5aLmpvaW4oIi4iKSxyPSImY2NpZD0iK3ZrKCkudG9TdHJpbmcoKSsiJmNpZD0iK0UoNSkudG9TdHJpbmcoKSsiJmw9IitjK2IrKGEuUi5sZW5ndGg/CnA6IiIpKyhhLloubGVuZ3RoP3E6IiIpO2lmKE0oMjE0KSl7dmFyIHQsdT0odD1yZCgpKT09bnVsbD92b2lkIDA6dC5nZXRFbnRyaWVzQnlOYW1lKEtjKS5tYXAoZnVuY3Rpb24odil7cmV0dXJuIFN0cmluZyh2LmR1cmF0aW9uKX0pLmpvaW4oIi4iKTt1JiYocis9In5TUyIrdSl9cmV0dXJuIHJ9LHB6PWZ1bmN0aW9uKGEsYil7aWYoIWIuc3RhZ2V8fGEuTnx8IU95KCl8fFN5KGIpKXJldHVybiExO3ZhciBjLGQ9KGM9cmQoKSk9PW51bGw/dm9pZCAwOmMudGltZU9yaWdpbjtpZighQWIoZCkpYS5OPSEwO2Vsc2UgaWYoQWIoJGsoMjUpKSYmIVN5KHtzdGFnZTpJeS5YLmpkfSkmJiFhLk4mJk95KCkpdHJ5e3ZhciBlPU51bWJlcigkaygyNSkpO1R5KHtzdGFnZTpJeS5YLmpkfSx7c3RhcnRUaW1lOk1hdGgubWF4KGUtZCwwKX0pO1R5KHtzdGFnZTpJeS5YLmlqfSx7c3RhcnRUaW1lOjB9KTt2YXIgZj1VeSh7c3RhZ2U6SXkuWC5qZH0sSXkuWC5paik7ZiYmKGEuSC5MPU1hdGguZmxvb3IoZikpfWNhdGNoKGcpe2EuTj0KITB9aWYoYS5OKXJldHVybiExO3RyeXtpZighVHkoYikpcmV0dXJuITF9Y2F0Y2goZyl7cmV0dXJuIGEuTj0hMCwhMX1yZXR1cm4hMH0scXo9ZnVuY3Rpb24oYSxiLGMpe2lmKHB6KGEsYikpdHJ5e3ZhciBkPVV5KGIsYyk7aWYoZClyZXR1cm4gTWF0aC5mbG9vcihkKX1jYXRjaChlKXthLk49ITB9fSxzej1mdW5jdGlvbigpe3ZhciBhPXJ6KCk7cHooYSx7c3RhZ2U6SXkuWC5taX0pfSx0ej1mdW5jdGlvbigpe3ZhciBhPXJ6KCksYj1xeihhLHtzdGFnZTpJeS5YLlhrfSxJeS5YLm1pKTtiIT09dm9pZCAwJiYoYS5ILlM9Yil9LHV6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKTtweihhLHtzdGFnZTpJeS5YLm5pfSl9LHZ6PWZ1bmN0aW9uKGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLkJoLGV2ZW50SWQ6YX0pO2MuS1thXSYmYy5LW2FdLm5hbWV8fGx6KGMsYSwibmFtZSIsU2IoYiwiZ3RtLiIpP2I6IioiKX0sd3o9ZnVuY3Rpb24oYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5Llgudm0sCmV2ZW50SWQ6YX0sSXkuWC5CaCk7YyE9PXZvaWQgMCYmbHooYixhLCJTIixjKX0seXo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yeigpLGQ9cXooYyx7c3RhZ2U6SXkuWC50bSxldmVudElkOmF9LEl5LlguQmgpO2QhPT12b2lkIDAmJmx6KGMsYSwiRSIsZCk7aWYoYj09PSJndG0ubG9hZCIpe3ZhciBlPXF6KGMse3N0YWdlOkl5LlguV2t9LEl5LlguWmcpO2UhPT12b2lkIDAmJihjLkguRT1lKTtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtpZighYy5OJiZPeSgpJiZFKDUpKXt2YXIgZj14eigpO2YhPT12b2lkIDAmJihjLkguRj1NYXRoLmZsb29yKGYpKTt0cnl7Zm9yKHZhciBnPWl6KHtldmVudElkOjAsdGY6ITF9KSxoPVtdLGw9bShnKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bShuLnZhbHVlKSxxPXAubmV4dCgpLnZhbHVlLHI9cC5uZXh0KCkudmFsdWU7aC5wdXNoKCImIitxKyI9IityKX12YXIgdD1DcCgpLHU9W1tmayhqeiksIi9hP3Y9MyZ0PWwiLCImcGlkPSIrCkRiKCkudG9TdHJpbmcoKSwiJnJ2PSIrRSgxNCksdD8iJnRhZ19leHA9Iit0OiIiLGguam9pbigiIildLmpvaW4oIiIpLCImZ3RtPSIsZHUoKSxveihjKV0uam9pbigiIik7aWYodS5sZW5ndGg+MjAyMil7dmFyIHY9TWF0aC5tYXgodS5sYXN0SW5kZXhPZigiLlRTIiwyMDIyKSx1Lmxhc3RJbmRleE9mKCJ+IiwyMDIyKSk7dT11LnNsaWNlKDAsdil9WG4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDo1Nn0sdSl9Y2F0Y2goeCl7fX19KX19LHp6O2Z1bmN0aW9uIHJ6KCl7enp8fCh6ej1uZXcga3opO3JldHVybiB6en1mdW5jdGlvbiBteigpe3RyeXt2YXIgYTtyZXR1cm4oKGE9cmQoKSk9PW51bGw/dm9pZCAwOmEuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpWzBdKS5kb21JbnRlcmFjdGl2ZX1jYXRjaChiKXt9fQpmdW5jdGlvbiBueihhLGIpe3JldHVybiBPYmplY3Qua2V5cyhiKS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGJbY119KS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGFbY10hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuKCIiKyhjPT09InRhZyI/IiI6YykpLmNvbmNhdChhW2NdLnRvU3RyaW5nKCkpfSkuam9pbigiLiIpfWZ1bmN0aW9uIEF6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLkVtLGV2ZW50SWQ6YX0sSXkuWC5qZCk7YyE9PXZvaWQgMCYmYi5aLnB1c2goYyl9ZnVuY3Rpb24gQnooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5LlguRWssZXZlbnRJZDphfSxJeS5YLmpkKTtjIT09dm9pZCAwJiZiLlIucHVzaChjKX1mdW5jdGlvbiBDeihhKXt2YXIgYj1yeigpO3B6KGIse3N0YWdlOkl5LlguVGksZXZlbnRJZDphfSl9CmZ1bmN0aW9uIER6KGEpe3ZhciBiPXJ6KCksYz1xeihiLHtzdGFnZTpJeS5YLnNtLGV2ZW50SWQ6YX0sSXkuWC5UaSk7YyE9PXZvaWQgMCYmbHooYixhLCJWIixjKX1mdW5jdGlvbiB4eigpe3RyeXt2YXIgYSxiO3JldHVybihiPShhPXJkKCkpPT1udWxsP3ZvaWQgMDphLmdldEVudHJpZXNCeVR5cGUoInBhaW50IikuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5uYW1lPT09ImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQifSkpPT1udWxsP3ZvaWQgMDpiLnN0YXJ0VGltZX1jYXRjaChjKXt9fWZ1bmN0aW9uIEV6KGEsYil7dmFyIGM9cnooKTtweihjLHtzdGFnZTpJeS5YLnhqLGV2ZW50SWQ6YS5pZCx0YWdJZDpOdW1iZXIoYltHZi55al0pfSl9CmZ1bmN0aW9uIEZ6KGEsYixjKXt2YXIgZD1yeigpLGU9ZG4oYiksZj1OdW1iZXIoYltHZi55al0pLGc9cXooZCx7c3RhZ2U6YyxldmVudElkOmEuaWQsdGFnSWQ6Zn0sSXkuWC54aik7aWYoZyE9PXZvaWQgMCYmZC5LW2EuaWRdKXt2YXIgaD1kLktbYS5pZF0udGFnfHwiIixsLG49KGw9TXlbY10pIT1udWxsP2w6IjEiLHA9bmV3IFJlZ0V4cCgiVFNcXGQiK2UrIi5USSIrZikscT0iVFMiK24rZSsiLlRJIitmKyIuVEUiK2c7aC5zZWFyY2gocCk+PTA/biE9PSIxIiYmbHooZCxhLmlkLCJ0YWciLGgucmVwbGFjZShwLHEucmVwbGFjZSgiLlRFIitnLCIiKSkpOihseihkLGEuaWQsInRhZyIsKGg/aCsiLiI6IiIpK3EpLGU9PT0iaHRtbCImJihkLkguSFRDKz0xKSxkLkguVEMrPTEpfX07CnZhciBHej1mdW5jdGlvbihhKXtRKGEsSC5KLmRhKT09PVguVi54YSYmIVEoYSxILkouRWMpJiZYeChhLHB2KSYmcnYocHYpfSxJej1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKTtpZihiPT09WC5WLkthKUd5KGEpO2Vsc2V7dmFyIGM9SHpbYl07aWYoYylmbi5IJiZiPT09WC5WLnhhJiZCeihhLk0uZXZlbnRJZCksUXcoYSxmdW5jdGlvbihkKXt2YXIgZT1neShhKTtWKGEsSC5KLnBqLGUpO2UmJm5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZCxmeShhLGUpKTtGeSgzLGEuZXZlbnROYW1lKTt2YXIgZj17fSxnPXt9O1F1KGEse1FzOmZ1bmN0aW9uKGgsbCxuKXtpZihuLmZpbmQoZnVuY3Rpb24ocCl7cmV0dXJuIHAuaXNQcmltYXJ5JiYocC5zdGF0dXM9PT0wfHxwLnN0YXR1cz09PTEpfSkpaC5NLm9uU3VjY2VzcygpO2Vsc2UgR3ooaCksaC5NLm9uRmFpbHVyZSgpfSxTczpmdW5jdGlvbihoLGwpe3ZhciBuO3ZhciBwPWwuc2IscT1sLmVuZHBvaW50LmVuZHBvaW50LApyO3N3aXRjaChsLnBrIGluc3RhbmNlb2Yga3g/MjpsLnBrIGluc3RhbmNlb2Ygcng/NDpsLnBrIGluc3RhbmNlb2Yga3U/MzoxKXtjYXNlIDI6cj0yMTticmVhaztjYXNlIDM6UShoLEguSi5kYSk9PT1YLlYueGEmJlEoaCxILkoub2IpJiZxIT09OSYmKHI9MjApO2JyZWFrO2Nhc2UgNDpyPTIwfWlmKHIpe3ZhciB0O3ZhciB1PU5mKHIsLTEpO1h4KGgsb3YpPyhaeChwLGgsdSksdD17TXQ6VHh9KTp0PXt3ZTpZeChoLHUpfTt2YXIgdj10LHg9di53ZSx5PXYuTXQ7eD09bnVsbHx8UngoeCk7bj17d2U6eCxrdDp5fX1lbHNlIG49e307dmFyIHo9bixDPXoud2UsRD16Lmt0O0MmJihmW2wuc2JdPUMpO0QmJihnW2wuc2JdPUQpfSx1bzpmdW5jdGlvbihoLGwpe2ZbbC5zYl0mJihUbihmW2wuc2JdKSxkZWxldGUgZltsLnNiXSk7Z1tsLnNiXSYmKFVuKGdbbC5zYl0sbC5zYiksZGVsZXRlIGdbbC5zYl0pfSxSczpmdW5jdGlvbihoLGwsbixwLHEpe2lmKHEubGVuZ3RoJiZiIT09WC5WLnViKXt2YXIgcj0KcVtxLmxlbmd0aC0xXSx0PXIuc2IsdT1yLmVuZHBvaW50LmVuZHBvaW50O2lmKCFQeC5pbmNsdWRlcyh1KSl7dmFyIHY9aC5NO01sKHt0YXJnZXRJZDpoLnRhcmdldC5kZXN0aW5hdGlvbklkLHJlcXVlc3Q6e3VybDp0LHBhcmFtZXRlckVuY29kaW5nOjMsZW5kcG9pbnQ6dX0scWI6e2V2ZW50SWQ6di5ldmVudElkLHByaW9yaXR5SWQ6di5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGgsSC5KLnVmKSxwcmlvcml0eUlkOlEoaCxILkoudmYpfX0pO1EoaCxILkouZGEpfX19fSxjKX0pO2Vsc2UgYS5NLm9uRmFpbHVyZSgpfX0sSno9e30sSHo9KEp6W1guVi56ZF09WncsSnpbWC5WLnhhXT1GeCxKeltYLlYuWWRdPUt4LEp6W1guVi5aZF09T3gsSnpbWC5WLnViXT1leSxKeltYLlYuT2JdPXl5LEp6W1guVi5GYl09Q3ksSnopO3ZhciBLej17Z2o6e2JwOiIxIix1cToiMiIsVnE6IjMifX07CnZhciBMej17fSxNej1PYmplY3QuZnJlZXplKChMeltGLkQuZmhdPTEsTHpbRi5ELmdoXT0xLEx6W0YuRC5CZF09MSxMeltGLkQuQ2RdPTEsTHpbRi5ELlJjXT0xLEx6W0YuRC5zaV09MSxMeltGLkQudWldPTEsTHpbRi5ELkNsXT0xLEx6W0YuRC5paF09MSxMeltGLkQuQ2ZdPTEsTHpbRi5ELkRmXT0xLEx6W0YuRC5FZl09MSxMeltGLkQuSGFdPTEsTHpbRi5ELkZmXT0xLEx6W0YuRC5GZF09MSxMeltGLkQudWNdPTEsTHpbRi5ELkhkXT0xLEx6W0YuRC5MYl09MSxMeltGLkQuQ2JdPTEsTHpbRi5ELlRiXT0xLEx6W0YuRC5uYl09MSxMeltGLkQuZWJdPTEsTHpbRi5ELkdlXT0xLEx6W0YuRC5raF09MSxMeltGLkQuT2FdPTEsTHpbRi5ELk9wXT0xLEx6W0YuRC5TcF09MSxMeltGLkQuSWVdPTEsTHpbRi5ELkdpXT0xLEx6W0YuRC5RZl09MSxMeltGLkQuVGFdPTEsTHpbRi5ELlljXT0xLEx6W0YuRC5aY109MSxMeltGLkQudGJdPTEsTHpbRi5ELlFkXT0xLEx6W0YuRC5SZF09MSxMeltGLkQuU2RdPQoxLEx6W0YuRC5OZV09MSxMeltGLkQuemFdPTEsTHpbRi5ELlVhXT0xLEx6W0YuRC5XbF09MSxMeltGLkQuWGxdPTEsTHpbRi5ELllsXT0xLEx6W0YuRC5abF09MSxMeltGLkQuV2JdPTEsTHpbRi5ELlRkXT0xLEx6W0YuRC5YYl09MSxMeltGLkQuZGRdPTEsTHpbRi5ELlVkXT0xLEx6W0YuRC5RZV09MSxMeltGLkQuUGFdPTEsTHpbRi5ELnljXT0xLEx6W0YuRC5WZF09MSxMeltGLkQuemNdPTEsTHpbRi5ELkFjXT0xLEx6W0YuRC5mYl09MSxMeltGLkQuUWFdPTEsTHopKSxOej17fSxPej0oTnpbRi5ELlVjXT0xLE56W0YuRC5QcF09MSxOeltGLkQuSGVdPTEsTnpbRi5ELnJpXT0xLE56Lm9yZWY9MSxOeik7dmFyIFB6LFF6OwpmdW5jdGlvbiBSeihhLGIpe3ZhciBjPWFbR2YuWWJdLGQ9YiYmYi5ldmVudDtpZighYyl0aHJvdyBFcnJvcigiRXJyb3I6IE5vIGZ1bmN0aW9uIG5hbWUgZ2l2ZW4gZm9yIGZ1bmN0aW9uIGNhbGwuIik7dmFyIGU9UXpbY10sZj17fSxnO2ZvcihnIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShnKSYmKFNiKGcsInZ0cF8iKT9mW2UhPT12b2lkIDA/ZzpnLnN1YnN0cmluZyg0KV09YVtnXTpnPT09R2YuRnEudG9TdHJpbmcoKSYmKGZbZSE9PXZvaWQgMD8idnRwX2d0bUdlbmVyYXRlZFRhZ2dpbmdNZXRhZGF0YSI6Z109YVtnXSkpO0lmKDYxKSYmZSYmKGYudnRwX2V4dHJhRXhwZXJpbWVudElkcz0hMCk7ZSYmZCYmZC5jYWNoZWRNb2RlbFZhbHVlcyYmKGYudnRwX2d0bUNhY2hlZFZhbHVlcz1kLmNhY2hlZE1vZGVsVmFsdWVzKTtiJiZlJiYoZi52dHBfZ3RtRW50aXR5SW5kZXg9Yi5pbmRleCxmLnZ0cF9ndG1FbnRpdHlOYW1lPWIubmFtZSk7cmV0dXJuIGUhPT12b2lkIDA/ZShmKTpQeihjLGYsCmIpfXZhciBUej1mdW5jdGlvbigpe3ZhciBhPVN6O2lmKE0oNTg1KSYmZm4uSyl7dmFyIGI9RSg1KS5pbmRleE9mKCJHVE0tIik9PT0wJiZJZig2MiksYyxkPSgoYz1GaygpKT09bnVsbD92b2lkIDA6Yy5zb3VyY2UpPT09MTtiJiYhZHx8YS5IfHwoYS5IPSEwLFVtKCJhYmwiLCIxIiksdG8oKSl9fSxTej1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O3ZhciBVej1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLkg9YTt0aGlzLmluZGV4PWI7dGhpcy50YWdzPWM7dGhpcy5tYWNyb3M9ZDt0aGlzLm5hbWU9U3RyaW5nKHRoaXMuSFtHZi5SbV18fCIiKX07ClV6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe2lmKCFiW3RoaXMuaW5kZXhdJiYhYS5pc0Jsb2NrZWQodGhpcy5IKSl7Ylt0aGlzLmluZGV4XT0hMDt0aGlzLkhbR2YucGwudG9TdHJpbmcoKV0mJlR6KCk7dmFyIGM9dGhpcy5uYW1lLGQ7dHJ5e3ZhciBlPXt9LGY7Zm9yKGYgaW4gdGhpcy5IKXRoaXMuSC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ZWwodGhpcy5IW2ZdLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLGIpKTtlLnZ0cF9ndG1FdmVudElkPWEuaWQ7YS5wcmlvcml0eUlkJiYoZS52dHBfZ3RtUHJpb3JpdHlJZD1hLnByaW9yaXR5SWQpO3ZhciBnPWQ9UnooZSx7ZXZlbnQ6YSxpbmRleDp0aGlzLmluZGV4LHR5cGU6MixuYW1lOmN9KTtlW0dmLlprXSYmdHlwZW9mIGc9PT0ic3RyaW5nIiYmKGc9ZVtHZi5aa109PT0xP2cudG9Mb3dlckNhc2UoKTpnLnRvVXBwZXJDYXNlKCkpO2UuaGFzT3duUHJvcGVydHkoR2YuYWgpJiYoZz1ZZigxOCk/ZVtHZi5haF09PT0xPwpWZihnLCJQRVJJT0QiKTplW0dmLmFoXT09PTI/VmYoZywiQ09NTUEiKTpWZihnLCJBVVRPTUFUSUMiKTplW0dmLmFoXT09PTE/VmYoZywiUEVSSU9EIik6VmYoZywiQ09NTUEiKSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5ibCkmJmc9PT1udWxsJiYoZz1lW0dmLmJsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5pbCkmJmc9PT12b2lkIDAmJihnPWVbR2YuaWxdKTtlLmhhc093blByb3BlcnR5KEdmLmVwKSYmKGc9SmIoZykpO2UuaGFzT3duUHJvcGVydHkoR2YuZmwpJiZnPT09ITAmJihnPWVbR2YuZmxdKTtlLmhhc093blByb3BlcnR5KEdmLmFsKSYmZz09PSExJiYoZz1lW0dmLmFsXSk7ZD1nfWNhdGNoKGgpe2EubG9nTWFjcm9FcnJvciYmYS5sb2dNYWNyb0Vycm9yKGgsTnVtYmVyKHRoaXMuaW5kZXgpLGMpLGQ9ITF9Ylt0aGlzLmluZGV4XT0hMTtyZXR1cm4gZH19O1V6LnByb3RvdHlwZS5GZz1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHRoaXMuSCl9O3ZhciBWej1mdW5jdGlvbihhLGIsYyl7dGhpcy5IPWE7dGhpcy50YWdzPWI7dGhpcy5tYWNyb3M9Y307VnoucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYil7dHJ5e2Zvcih2YXIgYz17fSxkPW0oT2JqZWN0LmtleXModGhpcy5IKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Y1tmXT1mPT09ImZ1bmN0aW9uIj90aGlzLkhbZl06ZWwodGhpcy5IW2ZdLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLGIpfXJldHVybiBjbChjKX1jYXRjaChnKXtKU09OLnN0cmluZ2lmeSh0aGlzLkgpfXJldHVybiAyfTtWei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLkgpfTt2YXIgV3o9ZnVuY3Rpb24oYSxiKXt0aGlzLmluZGV4PWI7dGhpcy5OPVtdO3RoaXMuUj1bXTt0aGlzLks9W107dGhpcy5IPVtdO3RoaXMubmFtZT0iIjtmb3IodmFyIGM9bShhKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9bShkLnZhbHVlKSxmPWUubmV4dCgpLnZhbHVlLGc9eWEoZSksaD1mLGw9ZztoPT09ImlmIj90aGlzLk49bDpoPT09InVubGVzcyI/dGhpcy5SPWw6aD09PSJhZGQiP3RoaXMuSz1sOmg9PT0iYmxvY2siP3RoaXMuSD1sOmg9PT0icnVsZU5hbWUiJiYodGhpcy5uYW1lPWxbMF0pfX07Cld6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe3ZhciBjPVh6KHRoaXMsYiksZD1bXSxlPVtdO2M/KGQucHVzaC5hcHBseShkLHcodGhpcy5LKSksZS5wdXNoLmFwcGx5KGUsdyh0aGlzLkgpKSk6Yz09PW51bGwmJmUucHVzaC5hcHBseShlLHcodGhpcy5IKSk7cmV0dXJue2ZpcmluZ1RhZ3M6ZCxibG9ja2luZ1RhZ3M6ZX19Owp2YXIgWHo9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9bShhLk4pLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1iKGQudmFsdWUpO2lmKGU9PT0wKXJldHVybiExO2lmKGU9PT0yKXJldHVybiBudWxsfWZvcih2YXIgZj1tKGEuUiksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWIoZy52YWx1ZSk7aWYoaD09PTIpcmV0dXJuIG51bGw7aWYoaD09PTEpcmV0dXJuITF9cmV0dXJuITB9O1d6LnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZX07dmFyIFl6PWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSWE9YTt0aGlzLmluZGV4PWI7dGhpcy50YWdzPWM7dGhpcy5tYWNyb3M9ZDt0aGlzLk89U3RyaW5nKHRoaXMuSWFbR2YuWWJdKTt0aGlzLm5hbWU9U3RyaW5nKHRoaXMuSWFbR2YuUm1dfHwiIik7dGhpcy50YWdJZD1OdW1iZXIodGhpcy5JYVtHZi55al0pfTsKWXoucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/e306Yzt2YXIgZCxlPWM7ZT1lPT09dm9pZCAwP3t9OmU7dmFyIGY9e30sZztmb3IoZyBpbiB0aGlzLklhKXRoaXMuSWEuaGFzT3duUHJvcGVydHkoZykmJihmW2ddPWVsKHRoaXMuSWFbZ10sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsW10pKTtkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZixlKTtkLnZ0cF9ndG1UYWdJZD10aGlzLnRhZ0lkO3RoaXMuSWFbR2YucGwudG9TdHJpbmcoKV0mJlR6KCk7UnooZCx7ZXZlbnQ6YSxpbmRleDp0aGlzLmluZGV4LHR5cGU6MSxuYW1lOnRoaXMubmFtZX0pfTtZei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLklhKX07CnZhciBaej1mdW5jdGlvbihhLGIpe2lmKGEuSWFbR2YudG5dKXJldHVybiBlbChhLklhW0dmLnRuXSxiLGEudGFncyxhLm1hY3JvcyxbXSl9LCR6PWZ1bmN0aW9uKGEsYil7aWYoYS5JYVtHZi5Ebl0pcmV0dXJuIGVsKGEuSWFbR2YuRG5dLGIsYS50YWdzLGEubWFjcm9zLFtdKX0sYUE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLklhW0dmLmNwXTtpZihjKXJldHVybiBlbChjLGIsYS50YWdzLGEubWFjcm9zLFtdKX07WXoucHJvdG90eXBlLmdldE1ldGFkYXRhPWZ1bmN0aW9uKGEpe3JldHVybiBlbCh0aGlzLklhW0dmLk1FVEFEQVRBXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxbXSl9O1l6LnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZX07dmFyIGJBPWZ1bmN0aW9uKCl7dGhpcy5tYWNyb3M9W107dGhpcy5ydWxlcz1bXTt0aGlzLnByZWRpY2F0ZXM9W107dGhpcy50YWdzPVtdO3RoaXMudms9W119O2JBLnByb3RvdHlwZS5nZXRSdWxlcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJ1bGVzfTt2YXIgY0E9bmV3IGJBO2Z1bmN0aW9uIGRBKGEsYixjLGQpe3ZhciBlPVdjKCksZjtpZihlPT09MSlhOnt2YXIgZz1FKDMpO2c9Zy50b0xvd2VyQ2FzZSgpO2Zvcih2YXIgaD0iaHR0cHM6Ly8iK2csbD0iaHR0cDovLyIrZyxuPTEscD1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxxPTA7cTxwLmxlbmd0aCYmcTwxMDA7cSsrKXt2YXIgcj1wW3FdLnNyYztpZihyKXtyPXIudG9Mb3dlckNhc2UoKTtpZihyLmluZGV4T2YobCk9PT0wKXtmPTM7YnJlYWsgYX1uPT09MSYmci5pbmRleE9mKGgpPT09MCYmKG49Mil9fWY9bn1lbHNlIGY9ZTtyZXR1cm4oZj09PTJ8fGR8fCJodHRwOiIhPT1BLmxvY2F0aW9uLnByb3RvY29sP2E6YikrY307dmFyIGVBPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLks9e307dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5LKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLkssZCkmJmMucHVzaChkKyJ+IithLktbZF0pO3ZhciBlPVtdLGY7Zm9yKGYgaW4gYS5IKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLkgsZikmJmUucHVzaChmKyJ+IithLkhbZl0pO2IudGYmJihhLks9e30sYS5IPXt9KTt2YXIgZz1bXTtjLmxlbmd0aD4wJiZnLnB1c2goWyJiY3MiLGMuam9pbigiLiIpXSk7ZS5sZW5ndGg+MCYmZy5wdXNoKFsiYmV0IixlLmpvaW4oIi4iKV0pO3JldHVybiBnfSl9LGZBO2Z1bmN0aW9uIGdBKCl7ZkF8fChmQT1uZXcgZUEpfTtmdW5jdGlvbiBoQShhLGIsYyxkLGUpe2lmKCFFayhhKSl7ZC5sb2FkRXhwZXJpbWVudHM9eWooKTtIayhhLGQsZSk7dmFyIGY9aUEoYSksZz1mdW5jdGlvbigpe29rKCkuY29udGFpbmVyW2FdJiYob2soKS5jb250YWluZXJbYV0uc3RhdGU9Myk7akEoKX0saD17ZGVzdGluYXRpb25JZDphLGVuZHBvaW50OjB9O2lmKFdqKCkpe3ZhciBsPVhqKCksbj1sKyIvIitrQShmLGEpO1puKGgsbix2b2lkIDAsZnVuY3Rpb24oKXtsQShhLG4sbCsiLyIrZixoLGcpfSl9ZWxzZXt2YXIgcD1TYihhLCJHVE0tIikscT1kaygpLHI9Yz8iL2d0YWcvanMiOiIvZ3RtLmpzIix0PW1BKGIscitmLGEpO2lmKCF0KXt2YXIgdT1FKDMpK3I7cSYmS2MmJnAmJih1PUtjLnJlcGxhY2UoL14oPzpodHRwcz86XC9cLyk/L2ksIiIpLnNwbGl0KC9bPyNdLylbMF0pO3Q9ZEEoImh0dHBzOi8vIiwiaHR0cDovLyIsdStmKX1abihoLHQsdm9pZCAwLGcpfX19CmZ1bmN0aW9uIGpBKCl7S2soKXx8R2IoTGsoKSxmdW5jdGlvbihhLGIpe25BKGEsYi50cmFuc3BvcnRVcmwsYi5jb250ZXh0KTtQKDkyKX0pfWZ1bmN0aW9uIG5BKGEsYixjLGQpe2lmKCFHayhhKSlpZihjLmxvYWRFeHBlcmltZW50c3x8KGMubG9hZEV4cGVyaW1lbnRzPXlqKCkpLEtrKCkpSmsoYSxiLGMsZCk7ZWxzZXtJayhhLGMsZCk7dmFyIGU9e2Rlc3RpbmF0aW9uSWQ6YSxlbmRwb2ludDowfTtpZihXaigpKXt2YXIgZj1YaigpLGc9Imd0ZCIraUEoYSwhMCksaD1mKyIvIitrQShnLGEpO1puKGUsaCx2b2lkIDAsZnVuY3Rpb24oKXtsQShhLGgsZisiLyIrZyxlKX0pfWVsc2V7dmFyIGw9Ii9ndGFnL2Rlc3RpbmF0aW9uIitpQShhLCEwKSxuPW1BKGIsbCxhKTtufHwobj1kQSgiaHR0cHM6Ly8iLCJodHRwOi8vIixFKDMpK2wpKTtabihlLG4pfX19CmZ1bmN0aW9uIGxBKGEsYixjLGQsZSl7aWYoTSg0MTMpKXtnQSgpO3ZhciBmPWZBO2lmKGZuLk4pe3ZhciBnPUEucGVyZm9ybWFuY2UsaD0tMTtpZihnJiZnLmdldEVudHJpZXNCeVR5cGUpe3ZhciBsPVJqKGIpLmhyZWYsbj1nLmdldEVudHJpZXNCeU5hbWUobCkucG9wKCk7aWYoIW4pZm9yKHZhciBwPWcuZ2V0RW50cmllc0J5VHlwZSgicmVzb3VyY2UiKSxxPTA7cTxwLmxlbmd0aDtxKyspe3ZhciByPXBbcV07aWYoci5uYW1lJiZyLm5hbWUuaW5kZXhPZihiKSE9PS0xKXtuPXI7YnJlYWt9fW4mJm4ucmVzcG9uc2VTdGF0dXMhPT12b2lkIDAmJihoPW4ucmVzcG9uc2VTdGF0dXMpfWYuS1thXT1ofVAoMTkwKTt2YXIgdD1ubShqbS5iYS5rail8fHt9O3RbYV09ITA7bW0oam0uYmEua2osdCk7dmFyIHU9YysoYy5pbmRleE9mKCI/Iik9PT0tMT8iP2Y9MSI6IiZmPTEiKTtlP1puKGQsdSx2b2lkIDAsZSk6Wm4oZCx1KX1lbHNlIGUmJmUoKX0KZnVuY3Rpb24gaUEoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iP2lkPSIrZW5jb2RlVVJJQ29tcG9uZW50KGEpLGQ9RSgxOSk7ZCE9PSJkYXRhTGF5ZXIiJiYoYys9IiZsPSIrZCk7dmFyIGU9U2IoYSwiR1RNLSIpO2lmKCFlfHxiKWMrPSImY3g9YyI7ZSYmSWYoNjIpJiYoYys9IiZnb29nbGVfb25seT10cnVlIik7dmFyIGY9YyxnLGg9e0RvOkpmKDE1KSxJbzpFKDE0KX07Zz1DZihoKTtjPWYrKCImZ3RtPSIrZyk7ZGsoKSYmKGMrPSImc2lnbj0iK0FqLnFqKTt2YXIgbD1jLG49SmYoNTQpO2lmKG49PT0xKXtsKz0iJmZwcz1mYyI7dmFyIHA9RSg2MCk7cCYmKGwrPSImZ2Rldj0iK3ApfWVsc2Ugbj09PTImJihsKz0iJmZwcz1mZSIpO3JldHVybiBsfQpmdW5jdGlvbiBrQShhLGIpe2lmKCFNKDQxMyl8fCFYaigpKXJldHVybiBhO3ZhciBjPUUoNTgpO2lmKCFjKXJldHVybiBQKDE4MiksYTt0cnl7dmFyIGQ9TmIoKSxlPUVmKGEsYyksZj1OYigpLWQ7Z0EoKTt2YXIgZz1mQTtmbi5OJiYoZy5IW2JdPWYpO3JldHVybiBlfWNhdGNoKGgpe3JldHVybiBQKDE4MyksYX19ZnVuY3Rpb24gbUEoYSxiLGMpe2lmKGFrKCkmJmEpe3ZhciBkPUUoNTgpLGU9WGooKTtpZihkJiZlKXRyeXt2YXIgZj1OYigpO2I9ZSsiLyIrRWYoYixkKTt2YXIgZz1OYigpLWY7Z0EoKTt2YXIgaD1mQTtmbi5OJiYoaC5IW2NdPWcpfWNhdGNoKGwpe1AoMTgzKX1yZXR1cm4gWWooYSxiKX19O3ZhciBwQT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5LPW5ldyBGYjt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuUj17bmFtZTpFKDE5KSxzZXQ6ZnVuY3Rpb24oYixjKXtFZChWYihiLGMpLGEuSCk7b0EoYSl9LGdldDpmdW5jdGlvbihiKXtyZXR1cm4gYS5nZXQoYiwyKX0scmVzZXQ6ZnVuY3Rpb24oKXthLks9bmV3IEZiO2EuSD17fTtvQShhKX19fTtwQS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGIhPTI/dGhpcy5LLmdldChhKTpxQSh0aGlzLGEpfTt2YXIgcUE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWIuc3BsaXQoIi4iKTtjPWN8fFtdO2Zvcih2YXIgZT1hLkgsZj0wO2Y8ZC5sZW5ndGg7ZisrKXtpZihlPT09bnVsbClyZXR1cm4hMTtpZihlPT09dm9pZCAwKWJyZWFrO2U9ZVtkW2ZdXTtpZihjLmluZGV4T2YoZSkhPT0tMSlyZXR1cm59cmV0dXJuIGV9OwpwQS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OLmhhc093blByb3BlcnR5KGEpfHwodGhpcy5LLnNldChhLGIpLEVkKFZiKGEsYiksdGhpcy5IKSxvQSh0aGlzKSl9O3ZhciBzQT1mdW5jdGlvbigpe2Zvcih2YXIgYT1bImd0bS5hbGxvd2xpc3QiLCJndG0uYmxvY2tsaXN0IiwiZ3RtLndoaXRlbGlzdCIsImd0bS5ibGFja2xpc3QiLCJ0YWdUeXBlQmxhY2tsaXN0Il0sYj1yQSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1iLmdldChkLDEpO2lmKEFycmF5LmlzQXJyYXkoZSl8fENkKGUpKWU9RWQoZSxudWxsKTtiLk5bZF09ZX19LG9BPWZ1bmN0aW9uKGEsYil7R2IoYS5OLGZ1bmN0aW9uKGMsZCl7YS5LLnNldChjLGQpO0VkKFZiKGMpLGEuSCk7RWQoVmIoYyxkKSxhLkgpO2ImJmRlbGV0ZSBhLk5bY119KX0sckE9bmV3IHBBLHRBPXJBLlI7ZnVuY3Rpb24gdUEoYSxiKXtyZXR1cm4gckEuZ2V0KGEsYil9CmZ1bmN0aW9uIHZBKGEsYil7dmFyIGM9Yj09PXZvaWQgMD8yOmIsZD1yQSxlLGY9KGM9PT12b2lkIDA/MjpjKSE9PTE/cUEoZCxhKTpkLksuZ2V0KGEpO0FkKGYpPT09ImFycmF5Inx8QWQoZik9PT0ib2JqZWN0Ij9lPUVkKGYsbnVsbCk6ZT1mO3JldHVybiBlfTt2YXIgd0E9bmV3IFJlZ0V4cCgvXiguKlwuKT8oZ29vZ2xlfHlvdXR1YmV8YmxvZ2dlcnx3aXRoZ29vZ2xlKShcLmNvbT8pPyhcLlthLXpdezJ9KT9cLj8kLykseEE9e2NsOlsiZWNsIl0sY3VzdG9tUGl4ZWxzOlsibm9uR29vZ2xlUGl4ZWxzIl0sZWNsOlsiY2wiXSxlaGw6WyJobCJdLGdhYXdjOlsiZ29vZ3RhZyJdLGhsOlsiZWhsIl0saHRtbDpbImN1c3RvbVNjcmlwdHMiLCJjdXN0b21QaXhlbHMiLCJub25Hb29nbGVQaXhlbHMiLCJub25Hb29nbGVTY3JpcHRzIiwibm9uR29vZ2xlSWZyYW1lcyJdLGN1c3RvbVNjcmlwdHM6WyJodG1sIiwiY3VzdG9tUGl4ZWxzIiwibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxub25Hb29nbGVQaXhlbHM6W10sbm9uR29vZ2xlU2NyaXB0czpbIm5vbkdvb2dsZVBpeGVscyJdLG5vbkdvb2dsZUlmcmFtZXM6WyJub25Hb29nbGVQaXhlbHMiXX0seUE9e2NsOlsiZWNsIl0sY3VzdG9tUGl4ZWxzOlsiY3VzdG9tU2NyaXB0cyIsCiJodG1sIl0sZWNsOlsiY2wiXSxlaGw6WyJobCJdLGdhYXdjOlsiZ29vZ3RhZyJdLGhsOlsiZWhsIl0saHRtbDpbImN1c3RvbVNjcmlwdHMiXSxjdXN0b21TY3JpcHRzOlsiaHRtbCJdLG5vbkdvb2dsZVBpeGVsczpbImN1c3RvbVBpeGVscyIsImN1c3RvbVNjcmlwdHMiLCJodG1sIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxub25Hb29nbGVTY3JpcHRzOlsiY3VzdG9tU2NyaXB0cyIsImh0bWwiXSxub25Hb29nbGVJZnJhbWVzOlsiY3VzdG9tU2NyaXB0cyIsImh0bWwiLCJub25Hb29nbGVTY3JpcHRzIl19LHpBPSJnb29nbGUgY3VzdG9tUGl4ZWxzIGN1c3RvbVNjcmlwdHMgaHRtbCBub25Hb29nbGVQaXhlbHMgbm9uR29vZ2xlU2NyaXB0cyBub25Hb29nbGVJZnJhbWVzIi5zcGxpdCgiICIpOwpmdW5jdGlvbiBBQSgpe3ZhciBhPXVBKCJndG0uYWxsb3dsaXN0Iil8fHVBKCJndG0ud2hpdGVsaXN0Iik7YSYmUCg5KTtJZig2MikmJihhPXZvaWQgMCk7QkEoKSYmKElmKDYyKT9QKDExNik6KFAoMTE3KSxJZig0OCkmJihhPVtdLHdpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cmJndpbmRvdy5jb25zb2xlLmxvZygiR1RNIGJsb2NrZWQuIFNlZSBnby8xMzY4NzcyOC4iKSkpKTt2YXIgYj1hJiZSYihLYihhKSx4QSksYz11QSgiZ3RtLmJsb2NrbGlzdCIpfHx1QSgiZ3RtLmJsYWNrbGlzdCIpO2N8fChjPXVBKCJ0YWdUeXBlQmxhY2tsaXN0IikpJiZQKDMpO2M/UCg4KTpjPVtdO0JBKCkmJihjPUtiKGMpLGMucHVzaCgibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsInNhbmRib3hlZFNjcmlwdHMiKSk7S2IoYykuaW5kZXhPZigiZ29vZ2xlIik+PTAmJlAoMik7dmFyIGQ9YyYmUmIoS2IoYykseUEpLGU9e307cmV0dXJuIGZ1bmN0aW9uKGYpe3ZhciBnPWYmJgpmW0dmLlliXTtpZighZ3x8dHlwZW9mIGchPT0ic3RyaW5nIilyZXR1cm4hMDtnPWcucmVwbGFjZSgvXl8qLywiIik7aWYoZVtnXSE9PXZvaWQgMClyZXR1cm4gZVtnXTt2YXIgaD1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSlbZ118fFtdLGw9ITA7YSYmKGw9bCYmQ0EoZyxoLGIpKTt2YXIgbj0hMTtjJiYobj1EQShnLGgsZCkpO3ZhciBwPSFsfHxuOyFwJiYoaC5pbmRleE9mKCJzYW5kYm94ZWRTY3JpcHRzIik9PT0tMXx8YiYmYi5pbmRleE9mKCJzYW5kYm94ZWRTY3JpcHRzIikhPT0tMT8wOkViKGQsekEpKSYmKHA9ITApO3JldHVybiBlW2ddPXB9fWZ1bmN0aW9uIENBKGEsYixjKXtpZihjLmluZGV4T2YoYSk8MClpZihiJiZiLmxlbmd0aD4wKWZvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXtpZihjLmluZGV4T2YoYltkXSk8MClyZXR1cm4gUCgxMSksITF9ZWxzZSByZXR1cm4hMTtyZXR1cm4hMH0KZnVuY3Rpb24gREEoYSxiLGMpe3ZhciBkPWMuaW5kZXhPZihhKT49MDtpZihkKXJldHVybiBkO3ZhciBlPUViKGMsYnx8W10pO2UmJlAoMTApO3JldHVybiBlfWZ1bmN0aW9uIEJBKCl7cmV0dXJuIHdBLnRlc3QoQS5sb2NhdGlvbiYmQS5sb2NhdGlvbi5ob3N0bmFtZSl9O2Z1bmN0aW9uIEVBKGEpe2Zvcih2YXIgYj1bXSxjPVtdLGQ9RkEoYSksZT1tKGNBLmdldFJ1bGVzKCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZS5ldmFsdWF0ZShhLGQpLGg9Zy5maXJpbmdUYWdzLGw9Zy5ibG9ja2luZ1RhZ3Msbj0wO248aC5sZW5ndGg7bisrKWJbaFtuXV09ITA7Zm9yKHZhciBwPTA7cDxsLmxlbmd0aDtwKyspY1tsW3BdXT0hMH1mb3IodmFyIHE9W10scj0wO3I8Y0EudGFncy5sZW5ndGg7cisrKWJbcl0mJiFjW3JdJiYocVtyXT0hMCk7cmV0dXJuIHF9ZnVuY3Rpb24gRkEoYSl7dmFyIGI9W107cmV0dXJuIGZ1bmN0aW9uKGMpe2JbY109PT12b2lkIDAmJihiW2NdPWNBLnByZWRpY2F0ZXNbY10uZXZhbHVhdGUoYSxbXSkpO3JldHVybiBiW2NdfX07dmFyIEdBPWZ1bmN0aW9uKCl7dGhpcy5LPTA7dGhpcy5IPXt9fTtHQS5wcm90b3R5cGUuYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSsrdGhpcy5LO3RoaXMuSFthXT10aGlzLkhbYV18fHt9O3RoaXMuSFthXVtTdHJpbmcoZCldPXtsaXN0ZW5lcjpiLHJmOmN9O3JldHVybiBkfTtHQS5wcm90b3R5cGUucmVtb3ZlTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLkhbYV0sZD1TdHJpbmcoYik7aWYoIWN8fCFjW2RdKXJldHVybiExO2RlbGV0ZSBjW2RdO3JldHVybiEwfTt2YXIgSUE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtHYihIQS5IW2FdLGZ1bmN0aW9uKGQsZSl7Yy5pbmRleE9mKGUubGlzdGVuZXIpPDAmJihlLnJmPT09dm9pZCAwfHxiLmluZGV4T2YoZS5yZik+PTApJiZjLnB1c2goZS5saXN0ZW5lcil9KTtyZXR1cm4gY307ZnVuY3Rpb24gSkEoYSxiLGMpe3JldHVybntlbnRpdHlUeXBlOmEsaW5kZXhJbk9yaWdpbkNvbnRhaW5lcjpiLG5hbWVJbk9yaWdpbkNvbnRhaW5lcjpjLG9yaWdpbkNvbnRhaW5lcklkOkUoNSksb3JpZ2luQ0lkOnZrKCl9fTtmdW5jdGlvbiBLQShhLGIpe2lmKGRhdGEuZW50aXRpZXMpe3ZhciBjPWRhdGEuZW50aXRpZXNbYV07aWYoYylyZXR1cm4gY1tiXX19O3ZhciBNQT1mdW5jdGlvbihhLGIpe3RoaXMuSD0hMTt0aGlzLlI9W107dGhpcy5ldmVudERhdGE9e3RhZ3M6W119O3RoaXMuWj0hMTt0aGlzLks9dGhpcy5OPTA7TEEodGhpcyxhLGIpfSxOQT1mdW5jdGlvbihhLGIsYyxkKXtpZihDai5oYXNPd25Qcm9wZXJ0eShiKXx8Yj09PSJfX3pvbmUiKXJldHVybi0xO3ZhciBlPXt9O0NkKGQpJiYoZT1FZChkLGUpKTtlLmlkPWM7ZS5zdGF0dXM9InRpbWVvdXQiO3JldHVybiBhLmV2ZW50RGF0YS50YWdzLnB1c2goZSktMX0sT0E9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5ldmVudERhdGEudGFnc1tiXTtlJiYoZS5zdGF0dXM9YyxlLmV4ZWN1dGlvblRpbWU9ZCl9LFBBPWZ1bmN0aW9uKGEpe2lmKCFhLkgpe2Zvcih2YXIgYj1hLlIsYz0wO2M8Yi5sZW5ndGg7YysrKWJbY10oKTthLkg9ITA7YS5SLmxlbmd0aD0wfX0sTEE9ZnVuY3Rpb24oYSxiLGMpe2IhPT12b2lkIDAmJmEud2coYik7YyYmQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7UEEoYSl9LApOdW1iZXIoYykpfTtNQS5wcm90b3R5cGUud2c9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPVBiKGZ1bmN0aW9uKCl7YmQoZnVuY3Rpb24oKXthKEUoNSksYi5ldmVudERhdGEpfSl9KTt0aGlzLkg/YygpOnRoaXMuUi5wdXNoKGMpfTt2YXIgUUE9ZnVuY3Rpb24oYSl7YS5OKys7cmV0dXJuIFBiKGZ1bmN0aW9uKCl7YS5LKys7YS5aJiZhLks+PWEuTiYmUEEoYSl9KX0sUkE9ZnVuY3Rpb24oYSl7YS5aPSEwO2EuSz49YS5OJiZQQShhKX07ZnVuY3Rpb24gU0EoKXtyZXR1cm4gQVtUQSgpXX0KZnVuY3Rpb24gVEEoKXtyZXR1cm4gQS5Hb29nbGVBbmFseXRpY3NPYmplY3R8fCJnYSJ9dmFyIFdBPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fX07ZnVuY3Rpb24gWEEoKXthOnt2YXIgYT1FKDUpO319CmZ1bmN0aW9uIFlBKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9U0EoKSxkPWMmJmMuZ2V0QnlOYW1lJiZjLmdldEJ5TmFtZShhKTtpZihkKXt2YXIgZT1kLmdldCgic2VuZEhpdFRhc2siKTtkLnNldCgic2VuZEhpdFRhc2siLGZ1bmN0aW9uKGYpe3ZhciBnPWYuZ2V0KCJoaXRQYXlsb2FkIiksaD1mLmdldCgiaGl0Q2FsbGJhY2siKSxsPWcuaW5kZXhPZigiJnRpZD0iK2IpPDA7bCYmKGYuc2V0KCJoaXRQYXlsb2FkIixnLnJlcGxhY2UoLyZ0aWQ9VUEtWzAtOV0rLVswLTldKy8sIiZ0aWQ9IitiKSwhMCksZi5zZXQoImhpdENhbGxiYWNrIix2b2lkIDAsITApKTtlKGYpO2wmJihmLnNldCgiaGl0UGF5bG9hZCIsZywhMCksZi5zZXQoImhpdENhbGxiYWNrIixoLCEwKSxmLnNldCgiX3hfMTkiLHZvaWQgMCwhMCksZShmKSl9KX19fTt2YXIgYUI9WyJlcyIsIjEiXSxiQj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5ldmVudERhdGE9e307dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjO3ZhciBkPWIuZXZlbnRJZCxlPWIudGY7aWYoYS5ldmVudERhdGFbZF0pe3ZhciBmPVtdO2EuSFtkXXx8Zi5wdXNoKGFCKTtmLnB1c2guYXBwbHkoZix3KGEuZXZlbnREYXRhW2RdKSk7ZSYmKGEuSFtkXT0hMCk7Yz1mfWVsc2UgYz1bXTtyZXR1cm4gY30pfSxjQjtmdW5jdGlvbiBkQihhLGIpe3ZhciBjO2lmKChjPWNCKSE9bnVsbCYmZm4uTil7dmFyIGQ9Yy5ldmVudERhdGEsZTtlPWIubWF0Y2goL14oZ3RtfGd0YWcpXC4vKT9lbmNvZGVVUklDb21wb25lbnQoYik6IioiO2RbYV09W1siZSIsZV0sWyJlaWQiLFN0cmluZyhhKV1dO2d6KCk7ZXooYSl9fTt2YXIgZUI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD17fTt0aGlzLks9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsidHIiLGYuam9pbigiLiIpXSk7dmFyIGc9YS5LW2NdfHxbXTtnLmxlbmd0aCYmZS5wdXNoKFsidGkiLGcuam9pbigiLiIpXSk7ZCYmKGRlbGV0ZSBhLkhbY10sZGVsZXRlIGEuS1tjXSk7cmV0dXJuIGV9KX0sZkI7CmZ1bmN0aW9uIGdCKGEsYixjKXtmQnx8KGZCPW5ldyBlQik7dmFyIGQ9ZkI7aWYoZm4uTiYmYil7dmFyIGU9ZG4oYik7ZC5IW2FdPWQuSFthXXx8W107ZC5IW2FdLnB1c2goYytlKTt2YXIgZj1iW0dmLlliXTtpZighZil0aHJvdyBFcnJvcigiRXJyb3I6IE5vIGZ1bmN0aW9uIG5hbWUgZ2l2ZW4gZm9yIGZ1bmN0aW9uIGNhbGwuIik7dmFyIGc9KFF6W2ZdPyIxIjoiMiIpK2U7ZC5LW2FdPWQuS1thXXx8W107ZC5LW2FdLnB1c2goZyk7Z3ooKTtleihhKX19O2Z1bmN0aW9uIGhCKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6YztpQigpLmFkZFJlc3RyaWN0aW9uKDAsYSxiLGMpfWZ1bmN0aW9uIGpCKCl7dmFyIGE9dmsoKTtyZXR1cm4gaUIoKS5nZXRSZXN0cmljdGlvbnMoMCxhKX1mdW5jdGlvbiBrQihhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aUIoKS5hZGRSZXN0cmljdGlvbigxLGEsYixjKX1mdW5jdGlvbiBsQigpe3ZhciBhPXZrKCk7cmV0dXJuIGlCKCkuZ2V0UmVzdHJpY3Rpb25zKDEsYSl9dmFyIG1CPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5IPXt9fSxuQj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuY29udGFpbmVyW2JdO2N8fChjPXtfZW50aXR5OntpbnRlcm5hbDpbXSxleHRlcm5hbDpbXX0sX2V2ZW50OntpbnRlcm5hbDpbXSxleHRlcm5hbDpbXX19LGEuY29udGFpbmVyW2JdPWMpO3JldHVybiBjfTsKbUIucHJvdG90eXBlLmFkZFJlc3RyaWN0aW9uPWZ1bmN0aW9uKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKCFkfHwhdGhpcy5IW2JdKXt2YXIgZT1uQih0aGlzLGIpO2E9PT0wP2Q/ZS5fZW50aXR5LmV4dGVybmFsLnB1c2goYyk6ZS5fZW50aXR5LmludGVybmFsLnB1c2goYyk6YT09PTEmJihkP2UuX2V2ZW50LmV4dGVybmFsLnB1c2goYyk6ZS5fZXZlbnQuaW50ZXJuYWwucHVzaChjKSl9fTsKbUIucHJvdG90eXBlLmdldFJlc3RyaWN0aW9ucz1mdW5jdGlvbihhLGIpe3ZhciBjPW5CKHRoaXMsYik7aWYoYT09PTApe3ZhciBkLGU7cmV0dXJuW10uY29uY2F0KHcoKGM9PW51bGw/dm9pZCAwOihkPWMuX2VudGl0eSk9PW51bGw/dm9pZCAwOmQuaW50ZXJuYWwpfHxbXSksdygoYz09bnVsbD92b2lkIDA6KGU9Yy5fZW50aXR5KT09bnVsbD92b2lkIDA6ZS5leHRlcm5hbCl8fFtdKSl9aWYoYT09PTEpe3ZhciBmLGc7cmV0dXJuW10uY29uY2F0KHcoKGM9PW51bGw/dm9pZCAwOihmPWMuX2V2ZW50KT09bnVsbD92b2lkIDA6Zi5pbnRlcm5hbCl8fFtdKSx3KChjPT1udWxsP3ZvaWQgMDooZz1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmcuZXh0ZXJuYWwpfHxbXSkpfXJldHVybltdfTsKbUIucHJvdG90eXBlLmdldEV4dGVybmFsUmVzdHJpY3Rpb25zPWZ1bmN0aW9uKGEsYil7dmFyIGM9bkIodGhpcyxiKSxkLGU7cmV0dXJuIGE9PT0wPyhjPT1udWxsP3ZvaWQgMDooZD1jLl9lbnRpdHkpPT1udWxsP3ZvaWQgMDpkLmV4dGVybmFsKXx8W106KGM9PW51bGw/dm9pZCAwOihlPWMuX2V2ZW50KT09bnVsbD92b2lkIDA6ZS5leHRlcm5hbCl8fFtdfTttQi5wcm90b3R5cGUucmVtb3ZlRXh0ZXJuYWxSZXN0cmljdGlvbnM9ZnVuY3Rpb24oYSl7dmFyIGI9bkIodGhpcyxhKTtiLl9ldmVudCYmKGIuX2V2ZW50LmV4dGVybmFsPVtdKTtiLl9lbnRpdHkmJihiLl9lbnRpdHkuZXh0ZXJuYWw9W10pO3RoaXMuSFthXT0hMH07ZnVuY3Rpb24gaUIoKXtyZXR1cm4ga2ooInIiLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBtQn0pfTtmdW5jdGlvbiBvQihhLGIsYyxkKXt2YXIgZT1jQS50YWdzW2FdLGY9cEIoYSxiLGMsZCk7aWYoIWYpcmV0dXJuIG51bGw7dmFyIGc9WnooZSxjKTtpZihnJiZnLmxlbmd0aCl7dmFyIGg9Z1swXTtmPW9CKGguaW5kZXgse29uU3VjY2VzczpmLG9uRmFpbHVyZTpoLmJvPT09MT9iLnRlcm1pbmF0ZTpmLHRlcm1pbmF0ZTpiLnRlcm1pbmF0ZX0sYyxkKX1yZXR1cm4gZn0KZnVuY3Rpb24gcEIoYSxiLGMsZCl7ZnVuY3Rpb24gZSgpe2Z1bmN0aW9uIHkoKXtpbSgzKTt2YXIgUz1OYigpLU47SkEoMSxhLGYuZ2V0TmFtZSgpKTtnQihjLmlkLGcsIjciKTtPQShjLmxkLEQsImV4Y2VwdGlvbiIsUyk7Zm4uSCYmRnooYyxnLEl5LlgudWopO0l8fChJPSEwLGwoKSl9aWYoZi5JYVtHZi5PcV0pbCgpO2Vsc2V7dmFyIHo9YUEoZixjKTtpZih6IT1udWxsKWZvcih2YXIgQz0wO0M8ei5sZW5ndGg7QysrKWlmKCFYbyh6W0NdKSl7bCgpO3JldHVybn12YXIgRD1OQShjLmxkLGYuTyxmLnRhZ0lkLGYuZ2V0TWV0YWRhdGEoYykpLEk9ITEsRz17dnRwX2d0bU9uU3VjY2VzczpmdW5jdGlvbigpe2lmKCFJKXtJPSEwO3ZhciBTPU5iKCktTjtnQihjLmlkLGcsIjUiKTtPQShjLmxkLEQsInN1Y2Nlc3MiLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLndqKTtoKCl9fSx2dHBfZ3RtT25GYWlsdXJlOmZ1bmN0aW9uKCl7aWYoIUkpe0k9ITA7dmFyIFM9TmIoKS1OO2dCKGMuaWQsZywiNiIpOwpPQShjLmxkLEQsImZhaWx1cmUiLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLnZqKTtsKCl9fX07Ry52dHBfZ3RtRXZlbnRJZD1jLmlkO2MucHJpb3JpdHlJZCYmKEcudnRwX2d0bVByaW9yaXR5SWQ9Yy5wcmlvcml0eUlkKTtnQihjLmlkLGcsIjEiKTtmbi5IJiZFeihjLGcpO3ZhciBOPU5iKCk7dHJ5e2YuZXZhbHVhdGUoYyxkLEcpfWNhdGNoKFMpe3koUyl9Zm4uSCYmRnooYyxnLEl5LlguQ24pfX12YXIgZj1jQS50YWdzW2FdLGc9Zi5GZygpLGg9Yi5vblN1Y2Nlc3MsbD1iLm9uRmFpbHVyZSxuPWIudGVybWluYXRlO2lmKGMuaXNCbG9ja2VkKGcpKXJldHVybiBudWxsO3ZhciBwPSR6KGYsYyk7aWYocCYmcC5sZW5ndGgpe3ZhciBxPXBbMF0scj1vQihxLmluZGV4LHtvblN1Y2Nlc3M6aCxvbkZhaWx1cmU6bCx0ZXJtaW5hdGU6bn0sYyxkKTtpZighcilyZXR1cm4gbnVsbDtoPXI7bD1xLmJvPT09Mj9uOnJ9aWYoZi5JYVtHZi5rbl18fGYuSWFbR2YuUXFdKXt2YXIgdD1mLklhW0dmLmtuXT8KY0Eudms6Yy52ayx1PWgsdj1sO2lmKCF0W2FdKXt2YXIgeD1xQihhLHQsUGIoZSkpO2g9eC5vblN1Y2Nlc3M7bD14Lm9uRmFpbHVyZX1yZXR1cm4gZnVuY3Rpb24oKXt0W2FdKHUsdil9fXJldHVybiBlfWZ1bmN0aW9uIHFCKGEsYixjKXt2YXIgZD1bXSxlPVtdO2JbYV09ckIoZCxlLGMpO3JldHVybntvblN1Y2Nlc3M6ZnVuY3Rpb24oKXtiW2FdPXNCO2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKWRbZl0oKX0sb25GYWlsdXJlOmZ1bmN0aW9uKCl7YlthXT10Qjtmb3IodmFyIGY9MDtmPGUubGVuZ3RoO2YrKyllW2ZdKCl9fX1mdW5jdGlvbiByQihhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQsZSl7YS5wdXNoKGQpO2IucHVzaChlKTtjKCl9fWZ1bmN0aW9uIHNCKGEpe2EoKX1mdW5jdGlvbiB0QihhLGIpe2IoKX07dmFyIHdCPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGNBLnRhZ3MubGVuZ3RoO2QrKylpZihhW2RdKXt2YXIgZT1jQS50YWdzW2RdO3ZhciBmPVFBKGIubGQpO3RyeXt2YXIgZz1vQihkLHtvblN1Y2Nlc3M6ZixvbkZhaWx1cmU6Zix0ZXJtaW5hdGU6Zn0sYixkKTtpZihnKXt2YXIgaD1ReltlLk9dO2MucHVzaCh7Tm86ZCxwcmlvcml0eU92ZXJyaWRlOihoP2gucHJpb3JpdHlPdmVycmlkZXx8MDowKXx8S0EoZS5PLDEpfHwwLGV4ZWN1dGU6Z30pfWVsc2UgdUIoZCxiKSxmKCl9Y2F0Y2gobil7ZigpfX1jLnNvcnQodkIpO2Zvcih2YXIgbD0wO2w8Yy5sZW5ndGg7bCsrKWNbbF0uZXhlY3V0ZSgpO3JldHVybiBjLmxlbmd0aD4wfTsKZnVuY3Rpb24geEIoYSxiKXtpZighSEEpcmV0dXJuITE7dmFyIGM9YVsiZ3RtLnRyaWdnZXJzIl0mJlN0cmluZyhhWyJndG0udHJpZ2dlcnMiXSksZD1JQShhLmV2ZW50LGM/U3RyaW5nKGMpLnNwbGl0KCIsIik6W10pO2lmKCFkLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIGU9MDtlPGQubGVuZ3RoOysrZSl7dmFyIGY9UUEoYik7dHJ5e2RbZV0oYSxmKX1jYXRjaChnKXtmKCl9fXJldHVybiEwfWZ1bmN0aW9uIHZCKGEsYil7dmFyIGMsZD1iLnByaW9yaXR5T3ZlcnJpZGUsZT1hLnByaW9yaXR5T3ZlcnJpZGU7Yz1kPmU/MTpkPGU/LTE6MDt2YXIgZjtpZihjIT09MClmPWM7ZWxzZXt2YXIgZz1hLk5vLGg9Yi5ObztmPWc+aD8xOmc8aD8tMTowfXJldHVybiBmfQpmdW5jdGlvbiB1QihhLGIpe2lmKGZuLk4pe3ZhciBjPWZ1bmN0aW9uKGQpe3ZhciBlPWIuaXNCbG9ja2VkKGNBLnRhZ3NbZF0uRmcoKSk/IjMiOiI0IixmPVp6KGNBLnRhZ3NbZF0sYik7ZiYmZi5sZW5ndGgmJmMoZlswXS5pbmRleCk7Z0IoYi5pZCxjQS50YWdzW2RdLkZnKCksZSk7dmFyIGc9JHooY0EudGFnc1tkXSxiKTtnJiZnLmxlbmd0aCYmYyhnWzBdLmluZGV4KX07YyhhKX19dmFyIEhBO2Z1bmN0aW9uIHlCKCl7SEF8fChIQT1uZXcgR0EpO3JldHVybiBIQX0KZnVuY3Rpb24gekIoYSl7dmFyIGI9YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSxjPWFbImd0bS5wcmlvcml0eUlkIl0sZD1hWyJndG0ucHJpb3JpdHlRdWV1ZSJdLGU9YS5ldmVudDtmbi5IJiZ2eihiLGUpO2lmKGU9PT0iZ3RtLmpzIil7aWYoJGsoMTMpKXJldHVybiExO1prKDEzLCEwKX12YXIgZj0hMSxnPWxCKCksaD1FZChhLG51bGwpO2lmKCFnLmV2ZXJ5KGZ1bmN0aW9uKHUpe3JldHVybiB1KHtvcmlnaW5hbEV2ZW50RGF0YTpofSl9KSl7aWYoZSE9PSJndG0uanMiJiZlIT09Imd0bS5pbml0IiYmZSE9PSJndG0uaW5pdF9jb25zZW50IilyZXR1cm4hMTtmPSEwfWRCKGIsZSk7dmFyIGw9YS5ldmVudENhbGxiYWNrLG49YS5ldmVudFRpbWVvdXQscD17aWQ6Yixwcmlvcml0eUlkOmMscHJpb3JpdHlRdWV1ZTpkLG5hbWU6ZSxpc0Jsb2NrZWQ6QUIoaCxmKSx2azpbXSxsb2dNYWNyb0Vycm9yOmZ1bmN0aW9uKHUsdix4KXtQKDYpO2ltKDQpO0pBKDIsdix4KX0sY2FjaGVkTW9kZWxWYWx1ZXM6QkIoKSwKbGQ6bmV3IE1BKGZ1bmN0aW9uKCl7Zm4uSCYmeXooYixlKTtGeSg1LGUpO2wmJmwuYXBwbHkobCxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfSxuKSxvcmlnaW5hbEV2ZW50RGF0YTpofTtmbi5IJiZDeihwLmlkKTt2YXIgcT1FQShwKTtmbi5IJiZEeihwLmlkKTtGeSgyLGUpO2NBLmdldFJ1bGVzKCk7ZiYmKHE9Q0IocSkpO2ZuLkgmJnd6KGIpO3ZhciByPXdCKHEscCk7ciYmRnkoNCxlKTt2YXIgdD14QihhLHAubGQpO1JBKHAubGQpO2UhPT0iZ3RtLmpzIiYmZSE9PSJndG0uc3luYyJ8fFhBKCk7cmV0dXJuIERCKHEscil8fHR9CmZ1bmN0aW9uIEJCKCl7dmFyIGE9e307YS5ldmVudD12QSgiZXZlbnQiLDEpO2EuZWNvbW1lcmNlPXZBKCJlY29tbWVyY2UiLDEpO2EuZ3RtPXZBKCJndG0iKTthLmV2ZW50TW9kZWw9dkEoImV2ZW50TW9kZWwiKTtyZXR1cm4gYX0KZnVuY3Rpb24gQUIoYSxiKXt2YXIgYz1BQSgpO3JldHVybiBmdW5jdGlvbihkKXt2YXIgZT1jKGQpO2lmKGUpcmV0dXJuITA7dmFyIGY9ZCYmZFtHZi5ZYl07aWYoIWZ8fHR5cGVvZiBmIT09InN0cmluZyIpcmV0dXJuITA7Zj1mLnJlcGxhY2UoL15fKi8sIiIpO3ZhciBnPWpCKCksaD1hO2ImJihoPUVkKGEsbnVsbCksaFsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUik7Zm9yKHZhciBsPSExLG49YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pW2ZdfHxbXSxwPW0oZykscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpe3ZhciByPXEudmFsdWU7dHJ5e3Ioe2VudGl0eUlkOmYsc2VjdXJpdHlHcm91cHM6bixvcmlnaW5hbEV2ZW50RGF0YTpofSl8fChsPSEwKX1jYXRjaCh0KXtsPSEwfX1yZXR1cm4gbHx8ZX19CmZ1bmN0aW9uIENCKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSl7dmFyIGQ9Y0EudGFnc1tjXS5PO2lmKEJqW2RdfHxjQS50YWdzW2NdLklhW0dmLlJxXSE9PXZvaWQgMHx8S0EoZCwyKSliW2NdPSEwfXJldHVybiBifWZ1bmN0aW9uIERCKGEsYil7aWYoIWIpcmV0dXJuIGI7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYVtjXSYmY0EudGFnc1tjXSYmIUNqW2NBLnRhZ3NbY10uT10pcmV0dXJuITA7cmV0dXJuITF9O3ZhciBFQj1OZig2MSwxRTMpLEZCPU5mKDY4LDJFMyksWm89WyJhZF9zdG9yYWdlIiwiYW5hbHl0aWNzX3N0b3JhZ2UiXTtmdW5jdGlvbiBHQihhLGIpe2lmKGEpe3ZhciBjPWtqKCJndGgiLGZ1bmN0aW9uKCl7cmV0dXJue319KSxkO2EhPT0yfHwoKGQ9SEIoKSk9PW51bGw/dm9pZCAwOmQuc3RhdHVzKSE9PTN8fGIhPT12b2lkIDAmJmI8PUZCfHwoYT0zLGMuZGw9Yj9NYXRoLmZsb29yKGIvMUUzKTp2b2lkIDApO2Mucz1hO0lCKGMpfX1mdW5jdGlvbiBJQihhKXtpZihhLnMpe3ZhciBiPWZ1bmN0aW9uKCl7dmFyIGM9e3N0YXR1czphLnMsZXhwaXJlczpEYXRlLm5vdygpKzg2NEU1fTthLmRsIT09dm9pZCAwJiYoYy5kZWxheT1hLmRsKTtrcigiZ3RnX2xvYWRfc3RhdHVzIixjKX07YnAoZnVuY3Rpb24oKXtpZihZbygpKWIoKTtlbHNlIGZvcih2YXIgYz1QYihiKSxkPW0oWm8pLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKUlsKGMsZS52YWx1ZSl9LFpvKX19CmZ1bmN0aW9uIEpCKCl7dmFyIGE9S0IoITApO3JldHVybiBhPyhMQihhLnN0YXR1cyxhLmRlbGF5KSwhMSk6ITB9ZnVuY3Rpb24gS0IoYSl7YT1hPT09dm9pZCAwPyExOmE7aWYoYWsoKSl7dmFyIGI9bnIoImd0Z19sb2FkX3N0YXR1cyIpLGM9Yi52YWx1ZSxkPWEmJkFiKGM9PW51bGw/dm9pZCAwOmMuZXhwaXJlcykmJihjPT1udWxsP3ZvaWQgMDpjLmV4cGlyZXMpPERhdGUubm93KCkrMzZFNTtpZihiLmVycm9yPT09MCYmQWIoYz09bnVsbD92b2lkIDA6Yy5zdGF0dXMpJiYhZCl7dmFyIGU9e3N0YXR1czpjLnN0YXR1c307KGM9PW51bGw/dm9pZCAwOmMuZGVsYXkpIT09dm9pZCAwJiYoZS5kZWxheT1jLmRlbGF5KTtyZXR1cm4gZX1yZXR1cm4gSEIoKX19ZnVuY3Rpb24gTEIoYSxiKXt2YXIgYz1raigiZ3RoIixmdW5jdGlvbigpe3JldHVybnt9fSk7Yy5zPWE7YiE9PXZvaWQgMCYmKGMuZGw9Yil9CmZ1bmN0aW9uIEhCKCl7dmFyIGE9bWooImd0aCIpO2lmKGEhPW51bGwmJmEucyl7dmFyIGI9e3N0YXR1czphLnN9O2EuZGwhPT12b2lkIDAmJihiLmRlbGF5PWEuZGwpO3JldHVybiBifX1mdW5jdGlvbiBNQigpe3ZhciBhOygoYT1IQigpKT09bnVsbD92b2lkIDA6YS5zdGF0dXMpPT09MSYmR0IoMyl9ZnVuY3Rpb24gTkIoKXtpZihKQigpKXt2YXIgYT1EYXRlLm5vdygpO25qKCJndGgiLHtsOmZ1bmN0aW9uKCl7R0IoMixEYXRlLm5vdygpLWEpfSxzOjF9KTt2YXIgYj1FKDUpLGM9U2IoYiwiR1RNLSIpPyIvZ3RtLmpzIjoiL2d0YWcvanMiLGQ9Imh0dHBzOi8vIitFKDMpK2MrIj9pZD0iK2IrIiZndGdfaGVhbHRoPTEiO1VjKGQsTUIsTUIpO0Euc2V0VGltZW91dChNQixFQil9fTtmdW5jdGlvbiBPQigpe3lCKCkuYWRkTGlzdGVuZXIoImd0bS5pbml0IixmdW5jdGlvbihhLGIpe1prKDI2LCEwKTtNKDU1NikmJmFrKCkmJiFJZig0NSkmJihmby5IW2NvLmlhLlpiXT1iby5NYS5MaCk7aWYoYWsoKSl7dmFyIGM7Yz1sbyhjby5pYS5aYik7Z28oYyk/aW8oYyxOQik6TkIoKX10byghMSwhMCk7YigpfSl9O2Z1bmN0aW9uIFBCKCl7aWYobWooInBzY2RsIikhPT12b2lkIDApbm0oam0uYmEub2kpPT09dm9pZCAwJiZtbShqbS5iYS5vaSxtaigicHNjZGwiKSk7ZWxzZXt2YXIgYT1mdW5jdGlvbihjKXtuaigicHNjZGwiLGMpO21tKGptLmJhLm9pLGMpfSxiPWZ1bmN0aW9uKCl7YSgiZXJyb3IiKX07dHJ5e0hjLmNvb2tpZURlcHJlY2F0aW9uTGFiZWw/KGEoInBlbmRpbmciKSxIYy5jb29raWVEZXByZWNhdGlvbkxhYmVsLmdldFZhbHVlKCkudGhlbihhKS5jYXRjaChiKSk6YSgibm9hcGkiKX1jYXRjaChjKXtiKGMpfX19O3ZhciBSQj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5yZWFkeT0hMTt0aGlzLks9MDt0aGlzLkg9W107dmFyIGI9QTtpZihCLnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUiJiYhQi5jcmVhdGVFdmVudE9iamVjdHx8Qi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil0aGlzLm9uUmVhZHkoKTtlbHNleyRjKEIsIkRPTUNvbnRlbnRMb2FkZWQiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pOyRjKEIsInJlYWR5c3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pO2lmKEIuY3JlYXRlRXZlbnRPYmplY3QmJkIuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsKXt2YXIgYz0hMDt0cnl7Yz0hYi5mcmFtZUVsZW1lbnR9Y2F0Y2goZCl7fWMmJlFCKHRoaXMpfSRjKGIsImxvYWQiLGZ1bmN0aW9uKGQpe3JldHVybiB2b2lkIGEub25SZWFkeShkKX0pfX07UkIucHJvdG90eXBlLmlzUmVhZHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yZWFkeX07ClJCLnByb3RvdHlwZS5vblJlYWR5PWZ1bmN0aW9uKGEpe2lmKCF0aGlzLnJlYWR5KXt2YXIgYj1CLmNyZWF0ZUV2ZW50T2JqZWN0LGM9Qi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIixkPUIucmVhZHlTdGF0ZT09PSJpbnRlcmFjdGl2ZSI7aWYoIWF8fGEudHlwZSE9PSJyZWFkeXN0YXRlY2hhbmdlInx8Y3x8IWImJmQpe3RoaXMucmVhZHk9ITA7Zm9yKHZhciBlPTA7ZTx0aGlzLkgubGVuZ3RoO2UrKyliZCh0aGlzLkhbZV0pfXRoaXMuSC5wdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxnPTA7ZzxmLmxlbmd0aDtnKyspYmQoZltnXSk7cmV0dXJuIDB9fX07CnZhciBRQj1mdW5jdGlvbihhKXtpZighYS5yZWFkeSYmYS5LPDE0MCl7YS5LKys7dHJ5e3ZhciBiLGM7KGM9KGI9Qi5kb2N1bWVudEVsZW1lbnQpLmRvU2Nyb2xsKT09bnVsbHx8Yy5jYWxsKGIsImxlZnQiKTthLm9uUmVhZHkoKX1jYXRjaChkKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBRQihhKX0sNTApfX19LFNCO2Z1bmN0aW9uIFRCKCl7U0J8fChTQj1uZXcgUkIpfWZ1bmN0aW9uIFVCKCl7VEIoKTt2YXIgYTtyZXR1cm4oYT1TQik9PW51bGw/dm9pZCAwOmEuaXNSZWFkeSgpfWZ1bmN0aW9uIFZCKGEpe1RCKCk7dmFyIGI7KGI9U0IpIT1udWxsJiYoYi5yZWFkeT9iZChhKTpiLkgucHVzaChhKSl9O3ZhciBYQj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9V0IsZTtpZigoZT1kLkgpPT1udWxsfHwhZS5Pcil7dmFyIGY9T2JqZWN0LmtleXMoYikubGVuZ3RoPjA/MjoxLGcsaCxsPShjPT1udWxsP3ZvaWQgMDooaD1jLm9yaWdpbmF0aW5nRW50aXR5KT09bnVsbD92b2lkIDA6aC5vcmlnaW5Db250YWluZXJJZCl8fCIiO2c9bD9TYihsLCJHVE0tIik/MzoyOjE7aWYoIWEpZC5IPXt0eXBlOmYsc291cmNlOmcscGFyYW1zOmJ9O2Vsc2UgaWYoZC5IKXtQKDE4NCk7dmFyIG49ITE7ZC5ILnNvdXJjZT09PWd8fGQuSC5zb3VyY2UhPT0zJiZnIT09M3x8KFVtKCJpZGNzIiwiMSIpLG49ITApO2QuSC50eXBlIT09MiYmZiE9PTJ8fFAoMTg2KTt2YXIgcDtpZihwPWQuSC50eXBlPT09MiYmZj09PTIpYTp7dmFyIHE9ZC5ILnBhcmFtcyxyPU9iamVjdC5rZXlzKHEpLHQ9T2JqZWN0LmtleXMoYik7aWYoci5sZW5ndGghPT10Lmxlbmd0aClwPSEwO2Vsc2V7Zm9yKHZhciB1PW0ociksdj11Lm5leHQoKTshdi5kb25lO3Y9CnUubmV4dCgpKXt2YXIgeD12LnZhbHVlO2lmKCFiLmhhc093blByb3BlcnR5KHgpfHxxW3hdIT09Ylt4XSl7cD0hMDticmVhayBhfX1wPSExfX1wJiYoVW0oImlkY2MiLCIxIiksbj0hMCk7biYmKHRvKCksZC5ILk9yPSEwKX19fSxXQj1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9dm9pZCAwfTt2YXIgWkI9ZnVuY3Rpb24oYSl7dmFyIGI9WUI7KCFmbi5LfHxTYihFKDUpLCJHVE0tIik/MDphPT09dm9pZCAwKSYmYi5IPT09MCYmKFVtKCJtY2MiLCIxIiksYi5IPTEpfSxZQj1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0wO1VtKCJuY2MiLGZ1bmN0aW9uKCl7aWYoSWYoNDUpJiZhLkghPT0yKXJldHVybiIxIn0pfTt2YXIgJEI9L14oPzpBV3xEQ3xHfEdGfEdUfEhBfE1DfFVBKSQvLGFDPS9ccy87CmZ1bmN0aW9uIGJDKGEsYil7aWYoemIoYSkpe2E9TGIoYSk7dmFyIGM9YS5pbmRleE9mKCItIik7aWYoIShjPDApKXt2YXIgZD1hLnN1YnN0cmluZygwLGMpO2lmKCRCLnRlc3QoZCkpe3ZhciBlPWEuc3Vic3RyaW5nKGMrMSksZjtpZihiKXt2YXIgZz1mdW5jdGlvbihuKXt2YXIgcD1uLmluZGV4T2YoIi8iKTtyZXR1cm4gcDwwP1tuXTpbbi5zdWJzdHJpbmcoMCxwKSxuLnN1YnN0cmluZyhwKzEpXX07Zj1nKGUpO2lmKGQ9PT0iREMiJiZmLmxlbmd0aD09PTIpe3ZhciBoPWcoZlsxXSk7aC5sZW5ndGg9PT0yJiYoZlsxXT1oWzBdLGYucHVzaChoWzFdKSl9fWVsc2V7Zj1lLnNwbGl0KCIvIik7Zm9yKHZhciBsPTA7bDxmLmxlbmd0aDtsKyspaWYoIWZbbF18fGFDLnRlc3QoZltsXSkmJihkIT09IkFXInx8bCE9PTEpKXJldHVybn1yZXR1cm57aWQ6YSxwcmVmaXg6ZCxkZXN0aW5hdGlvbklkOmQrIi0iK2ZbMF0saWRzOmYsSmM6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZCE9PXRoaXMuZGVzdGluYXRpb25JZH19fX19fQpmdW5jdGlvbiBjQyhhLGIpe2Zvcih2YXIgYz17fSxkPTA7ZDxhLmxlbmd0aDsrK2Qpe3ZhciBlPWJDKGFbZF0sYik7ZSYmKGNbZS5pZF09ZSl9dmFyIGY9W10sZztmb3IoZyBpbiBjKWlmKGMuaGFzT3duUHJvcGVydHkoZykpe3ZhciBoPWNbZ107aC5wcmVmaXg9PT0iQVciJiZoLmlkc1tkQ1sxXV0mJmYucHVzaChoLmRlc3RpbmF0aW9uSWQpfWZvcih2YXIgbD0wO2w8Zi5sZW5ndGg7KytsKWRlbGV0ZSBjW2ZbbF1dO2Zvcih2YXIgbj1bXSxwPW0oT2JqZWN0LmtleXMoYykpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKW4ucHVzaChjW3EudmFsdWVdKTtyZXR1cm4gbn12YXIgZUM9e30sZEM9KGVDWzBdPTAsZUNbMV09MSxlQ1syXT0yLGVDWzNdPTAsZUNbNF09MSxlQ1s1XT0wLGVDWzZdPTAsZUNbN109MCxlQyk7dmFyIGZDPXtpbml0aWFsaXplZDoxMSxjb21wbGV0ZToxMixpbnRlcmFjdGl2ZToxM30sZ0M9e30saEM9T2JqZWN0LmZyZWV6ZSgoZ0NbRi5ELlRkXT0hMCxnQykpLGlDPWZ1bmN0aW9uKCl7dGhpcy5SPU5mKDM0LDUwMCk7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLks9dm9pZCAwfSxqQz1mdW5jdGlvbihhLGIsYyl7aWYoYy5sZW5ndGgmJmZuLkspe3ZhciBkOyhkPWEuSClbYl0hPW51bGx8fChkW2JdPVtdKTt2YXIgZTsoZT1hLk4pW2JdIT1udWxsfHwoZVtiXT1bXSk7dmFyIGY9Yy5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIWEuTltiXS5pbmNsdWRlcyhnKX0pO2EuSFtiXS5wdXNoLmFwcGx5KGEuSFtiXSx3KGYpKTthLk5bYl0ucHVzaC5hcHBseShhLk5bYl0sdyhmKSk7IWEuSyYmZi5sZW5ndGg+MCYmKFZtKCJ0ZGMiLCEwKSxhLks9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dG8oKTthLkg9e307YS5LPXZvaWQgMH0sYS5SKSl9fTsKaUMucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO1VtKCJ0ZGMiLGZ1bmN0aW9uKCl7YS5LJiYoQS5jbGVhclRpbWVvdXQoYS5LKSxhLks9dm9pZCAwKTt2YXIgYj1bXSxjO2ZvcihjIGluIGEuSClhLkguaGFzT3duUHJvcGVydHkoYykmJmIucHVzaChjKyIqIithLkhbY10uam9pbigiLiIpKTtyZXR1cm4gYi5sZW5ndGg/Yi5qb2luKCIhIik6dm9pZCAwfSwhMSl9Owp2YXIga0M9ZnVuY3Rpb24oYSxiKXt2YXIgYz17fSxkO2ZvcihkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbZF09ITApO2Zvcih2YXIgZSBpbiBhKWEuaGFzT3duUHJvcGVydHkoZSkmJihjW2VdPSEwKTtyZXR1cm4gY30sbEM9ZnVuY3Rpb24oYSxiLGMsZCxlKXtkPWQ9PT12b2lkIDA/e306ZDtlPWU9PT12b2lkIDA/IiI6ZTtpZihiPT09YylyZXR1cm5bXTt2YXIgZj1mdW5jdGlvbih0LHUpe3ZhciB2O0FkKHUpPT09Im9iamVjdCI/dj11W3RdOkFkKHUpPT09ImFycmF5IiYmKHY9dVt0XSk7cmV0dXJuIHY9PT12b2lkIDA/aENbdF06dn0sZz1rQyhiLGMpLGg7Zm9yKGggaW4gZylpZihnLmhhc093blByb3BlcnR5KGgpJiZoIT09Ri5ELlhiKXt2YXIgbD0oZT9lKyIuIjoiIikraCxuPWYoaCxiKSxwPWYoaCxjKSxxPUFkKG4pPT09Im9iamVjdCJ8fEFkKG4pPT09ImFycmF5IixyPUFkKHApPT09Im9iamVjdCJ8fEFkKHApPT09ImFycmF5IjtpZihxJiZyKWxDKGEsbixwLGQsbCk7CmVsc2UgaWYocXx8cnx8biE9PXApZFtsXT0hMH1yZXR1cm4gT2JqZWN0LmtleXMoZCl9LG1DPW5ldyBpQzt2YXIgbkM9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5LPU5iKCk7dGhpcy5IPWI7dGhpcy5hcmdzPWM7dGhpcy5tZXNzYWdlQ29udGV4dD1kO3RoaXMudHlwZT1hfSxvQz1mdW5jdGlvbigpe3RoaXMuV2E9e307dGhpcy5pYj17fTt0aGlzLks9e307dGhpcy5OPW51bGw7dGhpcy5oYj17fTt0aGlzLkg9ITE7dGhpcy5zdGF0dXM9MX07ZnVuY3Rpb24gcEMoYSxiKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD09PTE/cUMoInNldCIsYSk6cUMoInNldCIsYSxiKX1mdW5jdGlvbiByQyhhLGIpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPT09MT9xQygiY29uZmlnIixhKTpxQygiY29uZmlnIixhLGIpfWZ1bmN0aW9uIHNDKGEsYixjKXtjPWN8fHt9O2NbRi5ELlhiXT1hO3JldHVybiBxQygiZXZlbnQiLGIsYyl9ZnVuY3Rpb24gcUMoKXtyZXR1cm4gYXJndW1lbnRzfTt2YXIgdEM9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoLGwsbixwLHEscil7dGhpcy5ldmVudElkPWE7dGhpcy5wcmlvcml0eUlkPWI7dGhpcy5wcmlvcml0eVF1ZXVlPWM7dGhpcy5FYT1kO3RoaXMuV2E9ZTt0aGlzLmhiPWY7dGhpcy5IYz1nO3RoaXMuQmc9aDt0aGlzLmliPWw7dGhpcy5ldmVudE1ldGFkYXRhPW47dGhpcy5vblN1Y2Nlc3M9cDt0aGlzLm9uRmFpbHVyZT1xO3RoaXMuaXNHdG1FdmVudD1yfSx1Qz1mdW5jdGlvbihhKXt2YXIgYj17b25TdWNjZXNzOnhiLG9uRmFpbHVyZTp4Yn07Yj1iPT09dm9pZCAwP3t9OmI7dmFyIGMsZCxlLGYsZyxoLGwsbixwLHEscix0LHUsdix4LHkseixDLEQsSSxHLE4sUyxXLGVhLGphO3JldHVybiBuZXcgdEMoKHY9KGM9Yik9PW51bGw/dm9pZCAwOmMuZXZlbnRJZCkhPW51bGw/djphLmV2ZW50SWQsKHg9KGQ9Yik9PW51bGw/dm9pZCAwOmQucHJpb3JpdHlJZCkhPW51bGw/eDphLnByaW9yaXR5SWQsKHk9KGU9Yik9PW51bGw/dm9pZCAwOmUucHJpb3JpdHlRdWV1ZSkhPQpudWxsP3k6YS5wcmlvcml0eVF1ZXVlLCh6PShmPWIpPT1udWxsP3ZvaWQgMDpmLkVhKSE9bnVsbD96OmEuRWEsKEM9KGc9Yik9PW51bGw/dm9pZCAwOmcuV2EpIT1udWxsP0M6YS5XYSwoRD0oaD1iKT09bnVsbD92b2lkIDA6aC5oYikhPW51bGw/RDphLmhiLChJPShsPWIpPT1udWxsP3ZvaWQgMDpsLkhjKSE9bnVsbD9JOmEuSGMsKEc9KG49Yik9PW51bGw/dm9pZCAwOm4uQmcpIT1udWxsP0c6YS5CZywoTj0ocD1iKT09bnVsbD92b2lkIDA6cC5pYikhPW51bGw/TjphLmliLChTPShxPWIpPT1udWxsP3ZvaWQgMDpxLmV2ZW50TWV0YWRhdGEpIT1udWxsP1M6YS5ldmVudE1ldGFkYXRhLChXPShyPWIpPT1udWxsP3ZvaWQgMDpyLm9uU3VjY2VzcykhPW51bGw/VzphLm9uU3VjY2VzcywoZWE9KHQ9Yik9PW51bGw/dm9pZCAwOnQub25GYWlsdXJlKSE9bnVsbD9lYTphLm9uRmFpbHVyZSwoamE9KHU9Yik9PW51bGw/dm9pZCAwOnUuaXNHdG1FdmVudCkhPW51bGw/amE6YS5pc0d0bUV2ZW50KX0sCnZDPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107c3dpdGNoKGIpe2Nhc2UgMzpjLnB1c2goYS5FYSk7Yy5wdXNoKGEuV2EpO2MucHVzaChhLmhiKTtjLnB1c2goYS5IYyk7Yy5wdXNoKGEuaWIpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5FYSk7YnJlYWs7Y2FzZSAxOmMucHVzaChhLldhKTtjLnB1c2goYS5oYik7Yy5wdXNoKGEuSGMpO2MucHVzaChhLmliKTticmVhaztjYXNlIDQ6Yy5wdXNoKGEuRWEpLGMucHVzaChhLldhKSxjLnB1c2goYS5oYiksYy5wdXNoKGEuSGMpfXJldHVybiBjfSxPPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1tKHZDKGEsZD09PXZvaWQgMD8zOmQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtpZihnW2JdIT09dm9pZCAwKXJldHVybiBnW2JdfXJldHVybiBjfSx3Qz1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz12QyhhLDQpLGQ9bShjKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlmb3IodmFyIGY9T2JqZWN0LmtleXMoZS52YWx1ZSksCmc9bShmKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSliW2gudmFsdWVdPTE7cmV0dXJuIE9iamVjdC5rZXlzKGIpfTt0Qy5wcm90b3R5cGUuZ2V0TWVyZ2VkVmFsdWVzPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/MzpiO3ZhciBkPXt9LGU9ITEsZj1mdW5jdGlvbihuKXtDZChuKSYmR2IobixmdW5jdGlvbihwLHEpe2U9ITA7ZFtwXT1xfSl9O2MmJmYoYyk7dmFyIGc9dkModGhpcyxiKTtnLnJldmVyc2UoKTtmb3IodmFyIGg9bShnKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSlmKGwudmFsdWVbYV0pO3JldHVybiBlP2Q6dm9pZCAwfTsKdmFyIHhDPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bRi5ELktmLEYuRC5HZixGLkQuSGYsRi5ELklmLEYuRC5KZixGLkQuTGYsRi5ELk1mXSxjPXZDKGEsMyksZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXtmb3IodmFyIGY9ZS52YWx1ZSxnPXt9LGg9ITEsbD1tKGIpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO2ZbcF0hPT12b2lkIDAmJihnW3BdPWZbcF0saD0hMCl9dmFyIHE9aD9nOnZvaWQgMDtpZihxKXJldHVybiBxfXJldHVybnt9fSx5Qz1mdW5jdGlvbihhLGIsYyl7dGhpcy5ldmVudElkPWE7dGhpcy5wcmlvcml0eUlkPWI7dGhpcy5wcmlvcml0eVF1ZXVlPWM7dGhpcy5FYT17fTt0aGlzLldhPXt9O3RoaXMuaGI9e307dGhpcy5IYz17fTt0aGlzLkJnPXt9O3RoaXMuaWI9e307dGhpcy5ldmVudE1ldGFkYXRhPXt9O3RoaXMuaXNHdG1FdmVudD0hMTt0aGlzLm9uU3VjY2Vzcz1mdW5jdGlvbigpe307dGhpcy5vbkZhaWx1cmU9CmZ1bmN0aW9uKCl7fX0sekM9ZnVuY3Rpb24oYSxiKXthLkVhPWI7cmV0dXJuIGF9LEFDPWZ1bmN0aW9uKGEsYil7YS5XYT1iO3JldHVybiBhfSxCQz1mdW5jdGlvbihhLGIpe2EuaGI9YjtyZXR1cm4gYX0sQ0M9ZnVuY3Rpb24oYSxiKXthLkhjPWI7cmV0dXJuIGF9LERDPWZ1bmN0aW9uKGEsYil7YS5CZz1iO3JldHVybiBhfSxFQz1mdW5jdGlvbihhLGIpe2EuaWI9YjtyZXR1cm4gYX0sRkM9ZnVuY3Rpb24oYSxiKXthLmV2ZW50TWV0YWRhdGE9Ynx8e307cmV0dXJuIGF9LEdDPWZ1bmN0aW9uKGEsYil7YS5vblN1Y2Nlc3M9YjtyZXR1cm4gYX0sSEM9ZnVuY3Rpb24oYSxiKXthLm9uRmFpbHVyZT1iO3JldHVybiBhfSxJQz1mdW5jdGlvbihhLGIpe2EuaXNHdG1FdmVudD1iO3JldHVybiBhfSxKQz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IHRDKGEuZXZlbnRJZCxhLnByaW9yaXR5SWQsYS5wcmlvcml0eVF1ZXVlLGEuRWEsYS5XYSxhLmhiLGEuSGMsYS5CZyxhLmliLGEuZXZlbnRNZXRhZGF0YSwKYS5vblN1Y2Nlc3MsYS5vbkZhaWx1cmUsYS5pc0d0bUV2ZW50KX07ZnVuY3Rpb24gS0MoYSxiKXtHYihhLGZ1bmN0aW9uKGMpe3ZhciBkO2lmKGQ9Yy5jaGFyQXQoMCk9PT0iXyIpe3ZhciBlO2E6c3dpdGNoKGMpe2Nhc2UgRi5ELlZiOmNhc2UgRi5ELlJmOmNhc2UgRi5ELnNoOmU9ITA7YnJlYWsgYTtkZWZhdWx0OmU9ITF9ZD0hZX1kJiYoYiYmYihjKSxkZWxldGUgYVtjXSl9KX07dmFyIExDPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsiZXByIixmLmpvaW4oIi4iKV0pO2QmJmRlbGV0ZSBhLkhbY107cmV0dXJuIGV9KX0sTkM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU1DO2ZuLk4mJmEhPT12b2lkIDAmJihkLkhbYV09ZC5IW2FdfHxbXSxkLkhbYV0ucHVzaChjK2IpLGd6KCksZXooYSkpfSxNQztmdW5jdGlvbiBPQygpe01DfHwoTUM9bmV3IExDKX07dmFyIFBDPWZ1bmN0aW9uKCl7dGhpcy5kZXN0aW5hdGlvbnM9e307dGhpcy5IPXt9O3RoaXMuY29tbWFuZHM9W119LFFDPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuZGVzdGluYXRpb25zW2IuZGVzdGluYXRpb25JZF09YS5kZXN0aW5hdGlvbnNbYi5kZXN0aW5hdGlvbklkXXx8bmV3IG9DfSxSQz1mdW5jdGlvbihhLGIsYyxkKXtpZihkLkgpe3ZhciBlPVFDKGEsZC5IKSxmPWUuTjtpZihmKXt2YXIgZz1FZChjLG51bGwpLGg9RWQoZS5XYVtkLkguZGVzdGluYXRpb25JZF0sbnVsbCksbD1FZChlLmhiLG51bGwpLG49RWQoZS5pYixudWxsKSxwPUVkKGEuSCxudWxsKSxxPXt9O2lmKGZuLk4pdHJ5e3E9RWQockEuSCxudWxsKX1jYXRjaCh4KXtQKDcyKX12YXIgcj1kLkgucHJlZml4LHQ9ZnVuY3Rpb24oeCl7dmFyIHk9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoeSxyLHgpfSx1PUpDKElDKEhDKEdDKEZDKERDKENDKEVDKEJDKEFDKHpDKG5ldyB5QyhkLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQsCmQubWVzc2FnZUNvbnRleHQucHJpb3JpdHlJZCxkLm1lc3NhZ2VDb250ZXh0LnByaW9yaXR5UXVldWUpLGcpLGgpLGwpLG4pLHApLHEpLGQubWVzc2FnZUNvbnRleHQuZXZlbnRNZXRhZGF0YSksZnVuY3Rpb24oKXtpZih0KXt2YXIgeD10O3Q9dm9pZCAwO3goIjIiKTtpZihkLm1lc3NhZ2VDb250ZXh0Lm9uU3VjY2VzcylkLm1lc3NhZ2VDb250ZXh0Lm9uU3VjY2VzcygpfX0pLGZ1bmN0aW9uKCl7aWYodCl7dmFyIHg9dDt0PXZvaWQgMDt4KCIzIik7aWYoZC5tZXNzYWdlQ29udGV4dC5vbkZhaWx1cmUpZC5tZXNzYWdlQ29udGV4dC5vbkZhaWx1cmUoKX19KSwhIWQubWVzc2FnZUNvbnRleHQuaXNHdG1FdmVudCkpLHY9ZnVuY3Rpb24oKXt0cnl7dmFyIHg9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoeCxyLCIxIik7dmFyIHk9ZC5ILmlkLHo9bUM7aWYoZm4uSyYmYj09PUYuRC53YSl7dmFyIEMsRD0oQz1iQyh5KSk9PW51bGw/dm9pZCAwOkMuaWRzO2lmKCEoRCYmRC5sZW5ndGg+CjEpKXt2YXIgST11LkVhW0YuRC5YYl07aWYoIUl8fEk9PT15KXt2YXIgRyxOPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtOLnRkfHwoTi50ZD17fSk7Rz1OLnRkO3ZhciBTPUVkKHUuSGMsbnVsbCk7RWQodS5FYSxTKTt2YXIgVz1bXSxlYTtmb3IoZWEgaW4gRylHLmhhc093blByb3BlcnR5KGVhKSYmbEMoeixHW2VhXSxTKS5sZW5ndGgmJlcucHVzaChlYSk7Vy5sZW5ndGgmJihqQyh6LHksVyksc2IoIlRBR0dJTkciLGZDW0IucmVhZHlTdGF0ZV18fDE0KSk7R1t5XT1TfX19ZihkLkguaWQsYixkLkssdSl9Y2F0Y2goZmEpe3ZhciBqYT1kLm1lc3NhZ2VDb250ZXh0LmV2ZW50SWQ7T0MoKTtOQyhqYSxyLCI0Iil9fTtiPT09Imd0YWcuZ2V0Ij92KCk6aW8oZS5SLHYpfX19LFNDPWZ1bmN0aW9uKGEsYil7aWYoYi50eXBlIT09InJlcXVpcmUiKXt2YXIgYz12b2lkIDA7Yi50eXBlPT09ImV2ZW50IiYmKGM9Yi5hcmdzWzFdKTtpZihiLkgpZm9yKHZhciBkPVFDKGEsYi5IKS5LW2IudHlwZV18fApbXSxlPTA7ZTxkLmxlbmd0aDtlKyspZFtlXShjKTtlbHNlIGZvcih2YXIgZiBpbiBhLmRlc3RpbmF0aW9ucylpZihhLmRlc3RpbmF0aW9ucy5oYXNPd25Qcm9wZXJ0eShmKSl7dmFyIGc9YS5kZXN0aW5hdGlvbnNbZl07aWYoZyYmZy5LKWZvcih2YXIgaD1nLktbYi50eXBlXXx8W10sbD0wO2w8aC5sZW5ndGg7bCsrKWhbbF0oYyl9fX07UEMucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVFDKHRoaXMsYSk7ZS5zdGF0dXMhPT0zJiYoZS5OPWIsZS5zdGF0dXM9MyxlLlI9bG8oYyksVEModGhpcyxhLGR8fHt9KSx0aGlzLmZsdXNoKCkpfTsKUEMucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24oYSxiLGMsZCl7YyE9PXZvaWQgMCYmKFFDKHRoaXMsYykuc3RhdHVzPT09MSYmKFFDKHRoaXMsYykuc3RhdHVzPTIsdGhpcy5wdXNoKCJyZXF1aXJlIixbe31dLGMse30pKSxRQyh0aGlzLGMpLkgmJihkLmRlZmVycmFibGU9ITEpLGQuZXZlbnRNZXRhZGF0YXx8KGQuZXZlbnRNZXRhZGF0YT17fSksZC5ldmVudE1ldGFkYXRhW0guSi5zZ118fChkLmV2ZW50TWV0YWRhdGFbSC5KLnNnXT1bYy5kZXN0aW5hdGlvbklkXSksZC5ldmVudE1ldGFkYXRhW0guSi5tal18fChkLmV2ZW50TWV0YWRhdGFbSC5KLm1qXT1bYy5pZF0pKTt0aGlzLmNvbW1hbmRzLnB1c2gobmV3IG5DKGEsYyxiLGQpKTtkLmRlZmVycmFibGV8fHRoaXMuZmx1c2goKX07ClBDLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbihhKXtmb3IodmFyIGI9dGhpcyxjPVtdLGQ9ITEsZT17fTt0aGlzLmNvbW1hbmRzLmxlbmd0aDtlPXtabjp2b2lkIDB9KXt2YXIgZj10aGlzLmNvbW1hbmRzWzBdLGc9Zi5IO2lmKGYubWVzc2FnZUNvbnRleHQuZGVmZXJyYWJsZSkhZ3x8UUModGhpcyxnKS5IPyhmLm1lc3NhZ2VDb250ZXh0LmRlZmVycmFibGU9ITEsdGhpcy5jb21tYW5kcy5wdXNoKGYpKTpjLnB1c2goZiksdGhpcy5jb21tYW5kcy5zaGlmdCgpO2Vsc2V7c3dpdGNoKGYudHlwZSl7Y2FzZSAicmVxdWlyZSI6aWYoUUModGhpcyxnKS5zdGF0dXMhPT0zJiYhYSl7dGhpcy5jb21tYW5kcy5wdXNoLmFwcGx5KHRoaXMuY29tbWFuZHMsYyk7cmV0dXJufWJyZWFrO2Nhc2UgInNldCI6dmFyIGg9Zi5hcmdzWzBdO0tDKGgpO1VDKGgpO0diKGgsZnVuY3Rpb24oeCx5KXtFZChWYih4LHkpLGIuSCl9KTtIdShoLCEwKTticmVhaztjYXNlICJldmVudCI6ZS5abj1mLmFyZ3NbMV07dmFyIGw9ClZDKGYuYXJnc1swXSxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbigpe319KGUpKSxuPWxbRi5ELlhiXTtuJiZuIT09Zy5pZHx8SHUobCk7UkModGhpcyxlLlpuLGwsZik7YnJlYWs7Y2FzZSAiZ2V0Ijp2YXIgcD17fSxxPShwW0YuRC5UZl09Zi5hcmdzWzBdLHBbRi5ELlNmXT1mLmFyZ3NbMV0scCk7UkModGhpcyxGLkQuSmIscSxmKTticmVhaztjYXNlICJjb250YWluZXJfY29uZmlnIjp2YXIgcj1RQyh0aGlzLGcpLHQ9VkMoZi5hcmdzWzBdLGZ1bmN0aW9uKCl7fSk7SHUodCwhMCk7ci5IPSEwO0VkKHQsci5oYik7ZD0hMDticmVhaztjYXNlICJkZXN0aW5hdGlvbl9jb25maWciOnZhciB1PVFDKHRoaXMsZyksdj1WQyhmLmFyZ3NbMF0sZnVuY3Rpb24oKXt9KTtIdSh2LCEwKTt1LldhW2cuaWRdfHwodS5XYVtnLmlkXT17fSk7dS5IPSEwO0VkKHYsdS5XYVtnLmlkXSk7ZD0hMDticmVhaztjYXNlICJyZXNldF9jb250YWluZXJfY29uZmlnIjpRQyh0aGlzLGcpLmhiPXt9O2JyZWFrOwpjYXNlICJyZXNldF90YXJnZXRfY29uZmlnIjpRQyh0aGlzLGcpLldhW2cuaWRdPXt9fXRoaXMuY29tbWFuZHMuc2hpZnQoKTtTQyh0aGlzLGYpfX10aGlzLmNvbW1hbmRzLnB1c2guYXBwbHkodGhpcy5jb21tYW5kcyxjKTtkJiZ0aGlzLmZsdXNoKCl9O3ZhciBUQz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9RWQoYyxudWxsKTtFZChRQyhhLGIpLmliLGQpO1FDKGEsYikuaWI9ZH07ZnVuY3Rpb24gVkMoYSxiKXt2YXIgYz17fTtHYihhLGZ1bmN0aW9uKGQsZSl7RWQoVmIoZCxlKSxjKX0pO0tDKGMsYik7VUMoYyk7cmV0dXJuIGN9CmZ1bmN0aW9uIFVDKGEpe2lmKE0oNjAxKSYmQkEoKSl7Zm9yKHZhciBiPSExLGM9bShuZXcgU2V0KFtGLkQueWMsRi5ELmRkXSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2FbZV0hPT12b2lkIDAmJihiPSEwLGRlbGV0ZSBhW2VdKX1iJiYhYWwoMzUsZnVuY3Rpb24oKXtyZXR1cm4hMX0pJiYoWmsoMzUsITApLHdpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cmJndpbmRvdy5jb25zb2xlLmxvZygiR29vZ2xlIFRhZyBNYW5hZ2VyOiBTZXJ2ZXItc2lkZSBHVE0gcGFyYW1ldGVycyAodHJhbnNwb3J0X3VybC9zZXJ2ZXJfY29udGFpbmVyX3VybCkgYXJlIG5vdCBwZXJtaXR0ZWQgb24gdGhpcyBkb21haW4gYW5kIGhhdmUgYmVlbiBpZ25vcmVkLiIpLFAoMTk3KSl9fTt2YXIgV0M9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFBDO3RoaXMuSz0hMX07V0MucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5ILmZsdXNoKCl9O3ZhciBYQztmdW5jdGlvbiBZQygpe1hDfHwoWEM9bmV3IFdDKTtyZXR1cm4gWEN9ZnVuY3Rpb24gWkMoYSxiLGMsZCl7dmFyIGU9WUMoKSxmPWJDKGMsZC5pc0d0bUV2ZW50KTtmJiYoZS5LJiYoZC5kZWZlcnJhYmxlPSEwKSxlLkgucHVzaCgiZXZlbnQiLFtiLGFdLGYsZCkpfWZ1bmN0aW9uICRDKGEsYixjLGQpe3ZhciBlPVlDKCksZj1iQyhjLGQuaXNHdG1FdmVudCk7ZiYmZS5ILnB1c2goImdldCIsW2EsYl0sZixkKX1mdW5jdGlvbiBhRChhLGIsYyl7dmFyIGQ9WUMoKSxlPWJDKGEsYy5pc0d0bUV2ZW50KTtlJiZkLkgucHVzaCgiY29udGFpbmVyX2NvbmZpZyIsW2JdLGUsYyl9CmZ1bmN0aW9uIGJEKGEsYixjKXt2YXIgZD1ZQygpLGU9YkMoYSxjLmlzR3RtRXZlbnQpO2UmJmQuSC5wdXNoKCJkZXN0aW5hdGlvbl9jb25maWciLFtiXSxlLGMpfWZ1bmN0aW9uIGNEKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtjJiZiLkgucHVzaCgicmVzZXRfY29udGFpbmVyX2NvbmZpZyIsW10sYyx7fSl9ZnVuY3Rpb24gZEQoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO2MmJmIuSC5wdXNoKCJyZXNldF90YXJnZXRfY29uZmlnIixbXSxjLHt9KX1mdW5jdGlvbiBlRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7cmV0dXJuIGM/UUMoYi5ILGMpLmliOnt9fWZ1bmN0aW9uIGZEKGEpe3JldHVybiBZQygpLkguSFthXX1mdW5jdGlvbiBnRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7cmV0dXJuIGM/UUMoYi5ILGMpLkg6ITF9O2Z1bmN0aW9uIGhEKGEsYil7YS5oYXNPd25Qcm9wZXJ0eSgiZ3RtLnVuaXF1ZUV2ZW50SWQiKXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImd0bS51bmlxdWVFdmVudElkIix7dmFsdWU6cmooKX0pO2IuZXZlbnRJZD1hWyJndG0udW5pcXVlRXZlbnRJZCJdO2IucHJpb3JpdHlJZD1hWyJndG0ucHJpb3JpdHlJZCJdO3JldHVybntldmVudElkOmIuZXZlbnRJZCxwcmlvcml0eUlkOmIucHJpb3JpdHlJZH19ZnVuY3Rpb24gaUQoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZSxlPWEmJmFbZF18fGZEKGQpO2lmKGUpcmV0dXJuIGV9fWZ1bmN0aW9uIGpEKGEpe3JldHVybiFhLmlzR3RtRXZlbnR8fGEuZXZlbnRNZXRhZGF0YSYmYS5ldmVudE1ldGFkYXRhW0guSi5DY10mJmEuZXZlbnRNZXRhZGF0YVtILkouTmJdIT09dmsoKT8hMTohMH07dmFyIGtEPW5ldyBmdW5jdGlvbigpe3RoaXMuSD0hMX07dmFyIGxEPWZ1bmN0aW9uKCl7dGhpcy5tZXNzYWdlcz1bXTt0aGlzLkg9W119O2xELnByb3RvdHlwZS5lbnF1ZXVlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLm1lc3NhZ2VzLmxlbmd0aCsxO2FbImd0bS51bmlxdWVFdmVudElkIl09YjthWyJndG0ucHJpb3JpdHlJZCJdPWQ7dmFyIGU9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHtldmVudElkOmIscHJpb3JpdHlJZDpkLGZyb21Db250YWluZXJFeGVjdXRpb246ITB9KTtpZihNKDU5NSkpe3ZhciBmPWMucHJpb3JpdHlRdWV1ZT9bXS5jb25jYXQodyhjLnByaW9yaXR5UXVldWUpLFtkXSk6W2RdO2FbImd0bS5wcmlvcml0eVF1ZXVlIl09ZjtlLnByaW9yaXR5UXVldWU9Zn12YXIgZz17bWVzc2FnZTphLG5vdEJlZm9yZUV2ZW50SWQ6Yixwcmlvcml0eUlkOmQsbWVzc2FnZUNvbnRleHQ6ZX07dGhpcy5tZXNzYWdlcy5wdXNoKGcpO2Zvcih2YXIgaD0wO2g8dGhpcy5ILmxlbmd0aDtoKyspdHJ5e3RoaXMuSFtoXShnKX1jYXRjaChsKXt9fTsKbEQucHJvdG90eXBlLmxpc3Rlbj1mdW5jdGlvbihhKXt0aGlzLkgucHVzaChhKX07bEQucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe2Zvcih2YXIgYT17fSxiPTA7Yjx0aGlzLm1lc3NhZ2VzLmxlbmd0aDtiKyspe3ZhciBjPXRoaXMubWVzc2FnZXNbYl0sZD1hW2Mubm90QmVmb3JlRXZlbnRJZF07ZHx8KGQ9W10sYVtjLm5vdEJlZm9yZUV2ZW50SWRdPWQpO2QucHVzaChjKX1yZXR1cm4gYX07bEQucHJvdG90eXBlLnBydW5lPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPVtdLGQ9MDtkPHRoaXMubWVzc2FnZXMubGVuZ3RoO2QrKyl7dmFyIGU9dGhpcy5tZXNzYWdlc1tkXTtlLm5vdEJlZm9yZUV2ZW50SWQ9PT1hP2IucHVzaChlKTpjLnB1c2goZSl9dGhpcy5tZXNzYWdlcz1jO3JldHVybiBifTsKZnVuY3Rpb24gbUQoYSxiLGMpe2MuZXZlbnRNZXRhZGF0YT1jLmV2ZW50TWV0YWRhdGF8fHt9O2MuZXZlbnRNZXRhZGF0YVtILkouTmJdPU0oNTUwKT92aygpOkUoNik7bkQoKS5lbnF1ZXVlKGEsYixjKX1mdW5jdGlvbiBuRCgpe3JldHVybiBraigibWIiLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBsRH0pfTt2YXIgcEQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1vRDtiPVN0cmluZyhiKS5zcGxpdCgiLCIpO2Zvcih2YXIgZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1jLk5bYltkXV18fFtdO2MuTltiW2RdXT1lO2UuaW5kZXhPZihhKTwwJiZlLnB1c2goYSl9fSxxRD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1vRCxkPVtdLGU9W10sZj17fSxnPTA7ZzxhLmxlbmd0aDtmPXtsazp2b2lkIDAsUWo6dm9pZCAwLFJqOnZvaWQgMH0sZysrKXt2YXIgaD1hW2ddO2lmKGguaW5kZXhPZigiLSIpPj0wKXtpZihmLmxrPWJDKGgsYiksZi5sayl7dmFyIGw9dGsoKTtDYihsLGZ1bmN0aW9uKHgpe3JldHVybiBmdW5jdGlvbih5KXtyZXR1cm4geC5say5kZXN0aW5hdGlvbklkPT09eX19KGYpKT9kLnB1c2goaCk6ZS5wdXNoKGgpfX1lbHNle2lmKE0oNTUwKSl7dmFyIG49Yy5LW2hdfHxbXTtmLlJqPXt9O24uZm9yRWFjaChmdW5jdGlvbih4KXtyZXR1cm4gZnVuY3Rpb24oeSl7eC5Salt5XT0hMH19KGYpKTtmb3IodmFyIHA9CnRrKCkscT0wO3E8cC5sZW5ndGg7cSsrKWYuUmpbcFtxXV0mJmQucHVzaChwW3FdKX1lbHNle3ZhciByPWMuSFtoXXx8W107Zi5Raj17fTtyLmZvckVhY2goZnVuY3Rpb24oeCl7cmV0dXJuIGZ1bmN0aW9uKHkpe3guUWpbeV09ITB9fShmKSk7Zm9yKHZhciB0PXdrKCksdT0wO3U8dC5sZW5ndGg7dSsrKWlmKGYuUWpbdFt1XV0pe2Q9ZC5jb25jYXQodGsoKSk7YnJlYWt9fXZhciB2PWMuTltoXXx8W107di5sZW5ndGgmJihkPWQuY29uY2F0KHYpKX19cmV0dXJue2VrOmQsUHM6ZX19LHJEPWZ1bmN0aW9uKGEpe0diKG9ELkgsZnVuY3Rpb24oYixjKXt2YXIgZD1jLmluZGV4T2YoYSk7ZD49MCYmYy5zcGxpY2UoZCwxKX0pfSxzRD1mdW5jdGlvbihhKXtHYihvRC5LLGZ1bmN0aW9uKGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpO2Q+PTAmJmMuc3BsaWNlKGQsMSl9KX0sdEQ9ZnVuY3Rpb24oYSl7R2Iob0QuTixmdW5jdGlvbihiLGMpe3ZhciBkPWMuaW5kZXhPZihhKTtkPj0wJiZjLnNwbGljZShkLAoxKX0pfSxvRD1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9e307dGhpcy5OPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gdUQoYSxiLGMpe3ZhciBkPUVkKGEsbnVsbCk7ZC5ldmVudElkPXZvaWQgMDtkLmluaGVyaXRQYXJlbnRDb25maWc9dm9pZCAwO09iamVjdC5rZXlzKGIpLnNvbWUoZnVuY3Rpb24oZil7cmV0dXJuIGJbZl0hPT12b2lkIDB9KSYmUCgxMzYpO3ZhciBlPUVkKGIsbnVsbCk7RWQoYyxlKTttRChyQyh3aygpWzBdLGUpLGEuZXZlbnRJZCxkKX0KZnVuY3Rpb24gdkQoYSxiLGMsZCl7dmFyIGU9e30sZj0oZVtGLkQuVWJdPUYuRC53YSxlWyJndG0uY29uZmlnQ29udGFpbmVySWQiXT1hLmlkLGVbImd0bS5jb25maWdQYXJhbWV0ZXJzIl09YixlWyJndG0udW5pcXVlRXZlbnRJZCJdPWQuZXZlbnRJZCxlKTtjLnByaW9yaXR5UXVldWUmJihmWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWMucHJpb3JpdHlRdWV1ZSk7Yy5ldmVudE1ldGFkYXRhJiYoZlsiZ3RtLmV2ZW50TWV0YWRhdGEiXT1jLmV2ZW50TWV0YWRhdGEpO2EuSmMoKSYmKGZbImd0bS5jb25maWdDb250YWluZXJJZCJdPXdrKClbMF0sZlsiZ3RtLm9yaWdpbmFsQ29uZmlnVGFyZ2V0SWQiXT1hLmlkKTtyZXR1cm4gZn1mdW5jdGlvbiB3RChhLGIsYyl7aWYoSWYoMTEpJiYhYyYmIWFbRi5ELlZkXSl7dmFyIGQ9YWwoMTAsZnVuY3Rpb24oKXtyZXR1cm4hMX0pO1prKDEwLCEwKTtYQihkLGEsYik7aWYoZClyZXR1cm4hMH1yZXR1cm4hMX07ZnVuY3Rpb24geEQoYSxiKXt2YXIgYz17fSxkPShjLmV2ZW50PWEsYyk7YiYmKGQuZXZlbnRNb2RlbD1FZChiLG51bGwpLGJbRi5ELlBmXSYmKGQuZXZlbnRDYWxsYmFjaz1iW0YuRC5QZl0pLGJbRi5ELnBoXSYmKGQuZXZlbnRUaW1lb3V0PWJbRi5ELnBoXSkpO3JldHVybiBkfQpmdW5jdGlvbiB5RChhLGIpe3ZhciBjPWEmJmFbRi5ELlhiXTtjPT09dm9pZCAwJiYoYz11QShGLkQuWGIsMiksYz09PXZvaWQgMCYmKGM9ImRlZmF1bHQiKSk7aWYoemIoYyl8fEFycmF5LmlzQXJyYXkoYykpe3ZhciBkO2Q9Yi5pc0d0bUV2ZW50P3piKGMpP1tjXTpjOmMudG9TdHJpbmcoKS5yZXBsYWNlKC9ccysvZywiIikuc3BsaXQoIiwiKTt2YXIgZT1xRChkLGIuaXNHdG1FdmVudCksZj1lLmVrLGc9ZS5QcztpZihnLmxlbmd0aClmb3IodmFyIGg9aUQoYSksbD0wO2w8Zy5sZW5ndGg7bCsrKXt2YXIgbj1iQyhnW2xdLGIuaXNHdG1FdmVudCk7aWYobil7dmFyIHA9bi5kZXN0aW5hdGlvbklkLHE9dm9pZCAwOygocT1uayhuLmRlc3RpbmF0aW9uSWQpKT09bnVsbD92b2lkIDA6cS5zdGF0ZSk9PT0wfHxuQShwLGgse3NvdXJjZTozLGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSl9fXZhciByPWYuY29uY2F0KGcpO3JldHVybntlazpjQyhmLGIuaXNHdG1FdmVudCksCm1yOmNDKHIsYi5pc0d0bUV2ZW50KX19fTt2YXIgekQ9e30sQUQ9KHpELmNvbmZpZz1mdW5jdGlvbihhLGIpe3ZhciBjPWhEKGEsYiksZDthOntpZighKGEubGVuZ3RoPDIpJiZ6YihhWzFdKSl7dmFyIGU9e307aWYoYS5sZW5ndGg+Mil7aWYoYVsyXSE9PXZvaWQgMCYmIUNkKGFbMl0pfHxhLmxlbmd0aD4zKXtkPXZvaWQgMDticmVhayBhfWU9YVsyXX12YXIgZj1iQyhhWzFdLGIuaXNHdG1FdmVudCk7aWYoZil7ZD17dGFyZ2V0OmYscGFyYW1zOmV9O2JyZWFrIGF9fWQ9dm9pZCAwfXZhciBnPWQ7aWYoZyl7dmFyIGg9Zy50YXJnZXQsbD1nLnBhcmFtcyxuO2E6e2lmKCFJZig3KSl7dmFyIHA9eWsoemsoKSk7aWYoTWsocCkpe3ZhciBxPXAucGFyZW50LHI9cS5pc0Rlc3RpbmF0aW9uO249e1ZzOnlrKHEpLE1zOnJ9O2JyZWFrIGF9fW49dm9pZCAwfXZhciB0PW4sdT10PT1udWxsP3ZvaWQgMDp0LlZzLHY9dD09bnVsbD92b2lkIDA6dC5NcztkQihjLmV2ZW50SWQsImd0YWcuY29uZmlnIik7dmFyIHgseT1oLmRlc3RpbmF0aW9uSWQ7CmlmKGguSmMoKT90aygpLmluZGV4T2YoeSkhPT0tMTp3aygpLmluZGV4T2YoeSkhPT0tMSlhOntpZih1JiYoUCgxMjgpLHYmJlAoMTMwKSxiLmluaGVyaXRQYXJlbnRDb25maWcpKXt2YXIgejt2YXIgQz0kaygxMik7aWYoQyl1RChiLEMsbCksej0hMTtlbHNle3ZhciBEPSRrKDExKTshbFtGLkQuVmRdJiYoTSg1NTApfHxJZigxMSkpJiZEfHxaaygxMSxFZChsLG51bGwpKTt6PSEwfXomJnUuY29udGFpbmVycyYmdS5jb250YWluZXJzLmpvaW4oIiwiKTt4PXZvaWQgMDticmVhayBhfXZhciBJPSFJZig0NSksRz0hU2IoaC5pZCwiR1RNLSIpO0kmJkcmJihPYmplY3Qua2V5cyhsKS5sZW5ndGg9PT0wP0d1KFQuVy5Tayk6R3UoVC5XLlRrKSxFbCgpJiZHdShULlcuUmspLCRrKDMxKSYmR3UoVC5XLlVrKSk7dmFyIE49WUI7Zm4uSyYmKE4uSD09PTEmJihRbS5ILm1jYz0hMSksTi5IPTIpO2lmKE0oNTUwKXx8IXdEKGwsYixoLkpjKCkpKXtrRC5IfHxQKDQzKTtpZighTSg1NTApKXtpZighYi5ub1RhcmdldEdyb3VwKXt2YXIgUz0KaC5pZDtpZihoLkpjKCkpdEQoUykscEQoUyxsW0YuRC5PZF18fCJkZWZhdWx0Iik7ZWxzZXtyRChTKTt2YXIgVz1sW0YuRC5PZF18fCJkZWZhdWx0IixlYT1vRDtXPVcudG9TdHJpbmcoKS5zcGxpdCgiLCIpO2Zvcih2YXIgamE9MDtqYTxXLmxlbmd0aDtqYSsrKXt2YXIgZmE9ZWEuSFtXW2phXV18fFtdO2VhLkhbV1tqYV1dPWZhO2ZhLmluZGV4T2YoUyk8MCYmZmEucHVzaChTKX19fWRlbGV0ZSBsW0YuRC5PZF19dmFyIHNhPWIuZXZlbnRNZXRhZGF0YXx8e307c2EuaGFzT3duUHJvcGVydHkoSC5KLmFlKXx8KHNhW0guSi5hZV09IWIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbik7Yi5ldmVudE1ldGFkYXRhPXNhO2RlbGV0ZSBsW0YuRC5QZl07aWYoTSg1NTApKXt4PXZEKGgsbCxiLGMpO2JyZWFrIGF9dmFyIGRhPSEhbFtGLkQuVmRdO2RlbGV0ZSBsW0YuRC5WZF07dmFyIG1hPXRrKCksUGE9Y0QsRmE9YUQ7aC5KYygpJiYobWE9W2guaWRdLFBhPWRELEZhPWJEKTtmb3IodmFyIHFhPTA7cWE8Cm1hLmxlbmd0aDtxYSsrKXtkYXx8UGEobWFbcWFdKTt2YXIgaWI9Z0QobWFbcWFdKTtGYShtYVtxYV0sRWQobCxudWxsKSxFZChiLG51bGwpKTtpYiYmZGF8fFpDKEYuRC53YSxFZChsLG51bGwpLG1hW3FhXSxFZChiLG51bGwpKX19eD12b2lkIDB9ZWxzZSBhOntpZighYi5pbmhlcml0UGFyZW50Q29uZmlnJiYhbFtGLkQuWmNdKXt2YXIgWGI9aUQobCksTGM9aC5kZXN0aW5hdGlvbklkO2lmKGguSmMoKSluQShMYyxYYix7c291cmNlOjIsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KTtlbHNlIGlmKHUhPT12b2lkIDAmJnUuY29udGFpbmVycy5pbmRleE9mKExjKSE9PS0xKXt2YXIgUWQ9JGsoMTEpLFljPSRrKDEyKTtRZD91RChiLGwsUWQpOlljfHxaaygxMixFZChsLG51bGwpKX1lbHNlIGlmKGhBKExjLFhiLCEwLHtzb3VyY2U6Mixmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pLE0oNTUwKSl7eD12RChoLApsLGIsYyk7YnJlYWsgYX19eD12b2lkIDB9cmV0dXJuIHh9fSx6RC5jb25zZW50PWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg9PT0zKXtQKDM5KTt2YXIgYz1oRChhLGIpLGQ9YVsxXSxlPXt9LGY9T28oYVsyXSksZztmb3IoZyBpbiBmKWlmKGYuaGFzT3duUHJvcGVydHkoZykpe3ZhciBoPWZbZ107ZVtnXT1nPT09Ri5ELllnP0FycmF5LmlzQXJyYXkoaCk/TmFOOk51bWJlcihoKTpnPT09Ri5ELm5jPyhBcnJheS5pc0FycmF5KGgpP2g6W2hdKS5tYXAoUG8pOlFvKGgpfWIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbnx8KGVbRi5ELm1hXSYmUCgxMzkpLGVbRi5ELlhhXSYmUCgxNDApKTtkPT09ImRlZmF1bHQiP1RvKGUpOmQ9PT0idXBkYXRlIj9WbyhlLGMpOmQ9PT0iZGVjbGFyZSImJmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbiYmU28oZSl9fSx6RC5jb250YWluZXJfY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MyYmemIoYVsxXSkmJkNkKGFbMl0pKXt2YXIgYz0KYVsyXSxkPWJDKGFbMV0sITApO2QmJmFEKGQuZGVzdGluYXRpb25JZCxjLEVkKGIsbnVsbCkpfX0sekQuZGVzdGluYXRpb25fY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MyYmemIoYVsxXSkmJkNkKGFbMl0pKXt2YXIgYz1hWzJdLGQ9YkMoYVsxXSwhMCk7aWYoZCl7aWYoTSg1NTApKXtpZighYi5ub1RhcmdldEdyb3VwKXt2YXIgZT1kLmlkO2lmKGQuSmMoKSl0RChlKSxwRChlLGNbRi5ELk9kXXx8ImRlZmF1bHQiKTtlbHNle3NEKGUpO3ZhciBmPWNbRi5ELk9kXXx8ImRlZmF1bHQiLGc9b0Q7Zj1TdHJpbmcoZikuc3BsaXQoIiwiKTtmb3IodmFyIGg9MDtoPGYubGVuZ3RoO2grKyl7dmFyIGw9Zy5LW2ZbaF1dfHxbXTtnLktbZltoXV09bDtsLmluZGV4T2YoZSk8MCYmbC5wdXNoKGUpfX19ZGVsZXRlIGNbRi5ELk9kXX1iRChkLmlkLGMsRWQoYixudWxsKSl9fX0sekQuZXZlbnQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hWzFdO2lmKCEoYS5sZW5ndGg8MikmJgp6YihjKSl7dmFyIGQ9dm9pZCAwO2lmKGEubGVuZ3RoPjIpe2lmKCFDZChhWzJdKSYmYVsyXSE9PXZvaWQgMHx8YS5sZW5ndGg+MylyZXR1cm47ZD1hWzJdfXZhciBlPXhEKGMsZCksZj1oRChhLGIpLGc9Zi5ldmVudElkLGg9Zi5wcmlvcml0eUlkO2VbImd0bS51bmlxdWVFdmVudElkIl09ZztoJiYoZVsiZ3RtLnByaW9yaXR5SWQiXT1oKTtiLnByaW9yaXR5UXVldWUmJihlWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWIucHJpb3JpdHlRdWV1ZSk7aWYoYz09PSJvcHRpbWl6ZS5jYWxsYmFjayIpcmV0dXJuIGUuZXZlbnRNb2RlbD1lLmV2ZW50TW9kZWx8fHt9LGU7dmFyIGw9eUQoZCxiKTtpZihsKXtmb3IodmFyIG49bC5layxwPWwubXIscT1wLm1hcChmdW5jdGlvbihOKXtyZXR1cm4gTi5pZH0pLHI9cC5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uZGVzdGluYXRpb25JZH0pLHQ9bi5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uaWR9KSx1PW0odGsoKSksdj11Lm5leHQoKTshdi5kb25lO3Y9CnUubmV4dCgpKXt2YXIgeD12LnZhbHVlO3IuaW5kZXhPZih4KTwwJiZ0LnB1c2goeCl9ZEIoZyxjKTtmb3IodmFyIHk9bSh0KSx6PXkubmV4dCgpOyF6LmRvbmU7ej15Lm5leHQoKSl7dmFyIEM9ei52YWx1ZSxEPUVkKGIsbnVsbCksST1FZChkLG51bGwpO2RlbGV0ZSBJW0YuRC5QZl07dmFyIEc9RC5ldmVudE1ldGFkYXRhfHx7fTtHLmhhc093blByb3BlcnR5KEguSi5hZSl8fChHW0guSi5hZV09IUQuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbik7R1tILkoubWpdPXEuc2xpY2UoKTtHW0guSi5zZ109ci5zbGljZSgpO0QuZXZlbnRNZXRhZGF0YT1HO1pDKGMsSSxDLEQpfWUuZXZlbnRNb2RlbD1lLmV2ZW50TW9kZWx8fHt9O3EubGVuZ3RoPjA/ZS5ldmVudE1vZGVsW0YuRC5YYl09cS5qb2luKCIsIik6ZGVsZXRlIGUuZXZlbnRNb2RlbFtGLkQuWGJdO2tELkh8fFAoNDMpO2Iubm9HdG1FdmVudD09PXZvaWQgMCYmYi5ldmVudE1ldGFkYXRhJiZiLmV2ZW50TWV0YWRhdGFbSC5KLkJuXSYmKGIubm9HdG1FdmVudD0KITApO2UuZXZlbnRNb2RlbFtGLkQuWWNdJiYoYi5ub0d0bUV2ZW50PSEwKTtyZXR1cm4gYi5ub0d0bUV2ZW50P3ZvaWQgMDplfX19LHpELmdldD1mdW5jdGlvbihhLGIpe1AoNTMpO2lmKGEubGVuZ3RoPT09NCYmemIoYVsxXSkmJnpiKGFbMl0pJiZ5YihhWzNdKSl7dmFyIGM9YkMoYVsxXSxiLmlzR3RtRXZlbnQpLGQ9U3RyaW5nKGFbMl0pLGU9YVszXTtpZihjKXtrRC5IfHxQKDQzKTt2YXIgZj1pRCgpO2lmKENiKHRrKCksZnVuY3Rpb24oaCl7cmV0dXJuIGMuZGVzdGluYXRpb25JZD09PWh9KSl7aEQoYSxiKTt2YXIgZz17fTtFZCgoZ1tGLkQuVGZdPWQsZ1tGLkQuU2ZdPWUsZyksbnVsbCk7JEMoZCxmdW5jdGlvbihoKXtiZChmdW5jdGlvbigpe2UoaCl9KX0sYy5pZCxiKX1lbHNlIG5BKGMuZGVzdGluYXRpb25JZCxmLHtzb3VyY2U6NCxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pfX19LHpELmpzPWZ1bmN0aW9uKGEsYil7dmFyIGM7aWYoYS5sZW5ndGg9PT0KMiYmYVsxXS5nZXRUaW1lKXtrRC5IPSEwO3ZhciBkPWhEKGEsYiksZT1kLmV2ZW50SWQsZj1kLnByaW9yaXR5SWQsZz17fTtjPShnLmV2ZW50PSJndG0uanMiLGdbImd0bS5zdGFydCJdPWFbMV0uZ2V0VGltZSgpLGdbImd0bS51bmlxdWVFdmVudElkIl09ZSxnWyJndG0ucHJpb3JpdHlJZCJdPWYsZyl9ZWxzZSBjPXZvaWQgMDtyZXR1cm4gY30sekQucG9saWN5PWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPT09MyYmemIoYVsxXSkmJnliKGFbMl0pKXtpZihoeShhWzFdLGFbMl0pLFAoNzQpLGFbMV09PT0iYWxsIil7UCg3NSk7dmFyIGI9ITE7dHJ5e2I9YVsyXShFKDUpLCJ1bmtub3duIix7fSl9Y2F0Y2goYyl7fWJ8fFAoNzYpfX1lbHNlIFAoNzMpfSx6RC5yZXNldF90YXJnZXRfY29uZmlnPWZ1bmN0aW9uKGEsYil7aWYoakQoYikmJmEubGVuZ3RoPT09MiYmemIoYVsxXSkpe3ZhciBjPWJDKGFbMV0sITApO2MmJmREKGMuaWQpfX0sekQuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9dm9pZCAwOwphLmxlbmd0aD09PTImJkNkKGFbMV0pP2M9RWQoYVsxXSxudWxsKTphLmxlbmd0aD09PTMmJnpiKGFbMV0pJiYoYz17fSxDZChhWzJdKXx8QXJyYXkuaXNBcnJheShhWzJdKT9jW2FbMV1dPUVkKGFbMl0sbnVsbCk6Y1thWzFdXT1hWzJdKTtpZihjKXtaaygzMSwhMCk7dmFyIGQ9aEQoYSxiKSxlPWQuZXZlbnRJZCxmPWQucHJpb3JpdHlJZDtFZChjLG51bGwpO0UoNSk7dmFyIGc9RWQoYyxudWxsKTtZQygpLkgucHVzaCgic2V0IixbZ10sdm9pZCAwLGIpO2NbImd0bS51bmlxdWVFdmVudElkIl09ZTtmJiYoY1siZ3RtLnByaW9yaXR5SWQiXT1mKTtkZWxldGUgYy5ldmVudDtiLm92ZXJ3cml0ZU1vZGVsRmllbGRzPSEwO3JldHVybiBjfX0sekQpLEJEPXt9LENEPShCRC5wb2xpY3k9ITAsQkQpO3ZhciBFRD1mdW5jdGlvbihhKXtpZihERChhKSlyZXR1cm4gYTt0aGlzLnZhbHVlPWF9O0VELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07dmFyIEREPWZ1bmN0aW9uKGEpe3JldHVybiFhfHxBZChhKSE9PSJvYmplY3QifHxDZChhKT8hMToiZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlImluIGF9O0VELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU9RUQucHJvdG90eXBlLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZTt2YXIgRkQ9e0JiOiIxIixlZToiMiIsWGQ6IjMiLGNlOiI0Iix4ZjoiNSIscWc6IjYiLEtoOiI3Iix0ajoiOCIsbGk6IjkiLGpqOiIxMCJ9Owp2YXIgR0Q9ZnVuY3Rpb24oYSxiKXtpZihhKXt2YXIgYz1hLnRyaW0oKS5yZXBsYWNlQWxsKC9ccysvZywiIikucmVwbGFjZUFsbCgvKFxkezIsfSlcLi9nLCIkMSIpLnJlcGxhY2VBbGwoLy0vZywiIikucmVwbGFjZUFsbCgvXCgoXGQrKVwpL2csIiQxIik7aWYoYiYmYy5tYXRjaCgvXlwrP1xkezMsNH0kLykpcmV0dXJuIGM7Yy5jaGFyQXQoMCkhPT0iKyImJihjPSIrIitjKTtpZihjLm1hdGNoKG5ldyBSZWdFeHAoIl5cXCtcXGR7IisoTSg1OTcpPzc6MTApKyIsMTV9JCIpKSlyZXR1cm4gY319LElEPWZ1bmN0aW9uKGEpe2lmKGEpe3ZhciBiPWEudHJpbSgpO2lmKEhELnRlc3QoYikpcmV0dXJuIGIudG9Mb3dlckNhc2UoKS5yZXBsYWNlQWxsKC9bLSBdKy9nLCIiKX19LE1EPWZ1bmN0aW9uKGEpe3ZhciBiPUpEKEtEKShhKTtpZihiJiYhTEQoYikpcmV0dXJuIGJ9LExEPWZ1bmN0aW9uKGEpe2lmKCFBLmxvY2F0aW9uKXJldHVybiExO3ZhciBiPU5qKEEubG9jYXRpb24sImhvc3QiLCEwKSwKYztpZihNKDYwMikpYTp7Zm9yKHZhciBkPWIuc3BsaXQoIi4iKSxlPWEudG9Mb3dlckNhc2UoKSxmPTA7ZjxkLmxlbmd0aC0xO2YrKyl7dmFyIGc9ZC5zbGljZShmKS5qb2luKCIuIik7aWYoZS5tYXRjaCgiQCIrZysiJCIpKXtjPSEwO2JyZWFrIGF9fWM9ITF9ZWxzZSBjPWEudG9Mb3dlckNhc2UoKS5pbmRleE9mKGIpPj0wO3JldHVybiBjfSxKRD1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7dmFyIGM9Yi5tYXRjaChhKTtyZXR1cm4gYz9jWzBdLnRyaW0oKS50b0xvd2VyQ2FzZSgpOnZvaWQgMH19LEtEPS9bQS1aMC05Ll8lKy1dK0BbQS1aMC05Li1dK1wuW0EtWl17Mix9L2ksTkQ9SkQoL14oW15ceDAwLVx4NDBceDViLVx4NjBceDdiLVx4ZmZdfFsuLV18XHMpKyQvKSxIRD1SZWdFeHAoIl4oPzpbQS1aXXsxLDJ9XFxkW0EtWlxcZF0/WyAtXT9cXGRbQS1aXXsyfXxbQS1aXVxcZFtBLVpdWyAtXT9cXGRbQS1aXVxcZHxcXGR7NH0gP1tBLVpdezJ9fFtBLVpdXFxkezR9W0EtWl17M318XFxkezV9KD86LVxcZHs0fSk/fFxcZHs1fS1cXGR7M318XFxkezR9LVxcZHszfXxcXGR7M30tXFxkezR9fFxcZHsyfS1cXGR7M318XFxkezN9ID9cXGR7Mn18XFxkezQsN30pJCIsCiJpIiksT0Q9SkQoL14oW15ceDAwLVx4NDBceDViLVx4NjBceDdiLVx4ZmZdfFsuLV18XHN8XGQpKyQvKTsKdmFyIFBEPWZ1bmN0aW9uKCl7dmFyIGE9U3RyaW5nKGFsKDMzLGZ1bmN0aW9uKCl7cmV0dXJuIDB9KSk7YS5pbmRleE9mKCIuIikhPT0tMSYmKGE9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIi4iKSszKSk7dmFyIGI9YWwoMzQsZnVuY3Rpb24oKXtyZXR1cm4gMH0pO3JldHVybnt2dDpOdW1iZXIoYSksc3Q6Yn19LFFEPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDMyLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KX0sU0Q9ZnVuY3Rpb24oYSl7dmFyIGI9cGQoKXx8MCxjPVtGRC5CYl07TSg1NjgpJiZjLnB1c2goRkQuZWUsRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQudGosRkQubGksRkQuamopO2Zvcih2YXIgZD1SRChhLG5ldyBTZXQoYykpLGU9YWwoMzIsZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE1hcH0pLGY9bShkKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtlLnNldChoLkRhLGgpfXZhciBsPShwZCgpfHwwKS1iLG49YWwoMzMsZnVuY3Rpb24oKXtyZXR1cm4gMH0pOwpaaygzMyxuK2wpO3ZhciBwPWFsKDM0LGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTtaaygzNCxwKzEpfSxSRD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1OZigzNiwyKSxkPVtdLGU9W3tvbzphLGRlcHRoOjB9XTtlLmxlbmd0aD4wOylmb3IodmFyIGY9ZS5zaGlmdCgpLGc9Zi5vbyxoPWYuZGVwdGgsbD1tKE9iamVjdC5rZXlzKGcpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtpZighVEQuaGFzKHApKXt2YXIgcT1nW3BdO2lmKHEpaWYoQ2QocSkpaCsxPD1jJiZlLnB1c2goe29vOnEsZGVwdGg6aCsxfSk7ZWxzZXtmb3IodmFyIHI9bShiKSx0PXIubmV4dCgpOyF0LmRvbmU7dD1yLm5leHQoKSl7dmFyIHU9dC52YWx1ZSx2PVVEW3VdO2lmKHYmJnYuS2MudGVzdChwKSl7dmFyIHg9di5uYShTdHJpbmcocSkpO2lmKHgpe2QucHVzaCh7Q2E6eCxEYTp1fSk7Yi5kZWxldGUodSk7YnJlYWt9fX1pZihiLnNpemU9PT0wKXJldHVybiBkfX19cmV0dXJuIGR9LFREPQpuZXcgU2V0KFsiaXRlbXMiLCJlY29tbWVyY2UiXSksVkQ9UmVnRXhwKCJwaG9uZSIsImkiKSxXRD1SZWdFeHAoImZpcnN0Xz9uYW1lIiwiaSIpLFhEPVJlZ0V4cCgibGFzdF8/bmFtZSIsImkiKSxZRD1SZWdFeHAoImNvdW50cnkiLCJpIiksWkQ9UmVnRXhwKCJwb3N0fHppcCIsImkiKSwkRD1SZWdFeHAoImFkZHJlc3N8c3RyZWV0IiwiaSIpLGFFPVJlZ0V4cCgiY2l0eSIsImkiKSxiRT1SZWdFeHAoInJlZ2lvbnxzdGF0ZXxwcm92aW5jZSIsImkiKSxjRT17fSxVRD0oY0VbRkQuQmJdPXtLYzpSZWdFeHAoImVtYWlsIiwiaSIpLG5hOk1EfSxjRVtGRC5lZV09e0tjOlZELG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCExKX19LGNFW0ZELlhkXT17S2M6V0QsbmE6TkR9LGNFW0ZELmNlXT17S2M6WEQsbmE6TkR9LGNFW0ZELnRqXT17S2M6JEQsbmE6T0R9LGNFW0ZELmxpXT17S2M6YUUsbmE6TkR9LGNFW0ZELmpqXT17S2M6YkUsbmE6TkR9LGNFW0ZELnFnXT17S2M6WkQsbmE6SUR9LGNFW0ZELnhmXT0Ke0tjOllELG5hOk5EfSxjRSk7dmFyIGRFPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLmxvYWRlZD0hMTt0aGlzLkg9W107aWYoQi5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil0aGlzLm9uTG9hZCgpO2Vsc2UgJGMoQSwibG9hZCIsZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBhLm9uTG9hZCgpfSl9O2RFLnByb3RvdHlwZS5vbkxvYWQ9ZnVuY3Rpb24oKXtpZighdGhpcy5sb2FkZWQpe3RoaXMubG9hZGVkPSEwO2Zvcih2YXIgYT0wO2E8dGhpcy5ILmxlbmd0aDthKyspYmQodGhpcy5IW2FdKX19O3ZhciBmRT1mdW5jdGlvbihhKXt2YXIgYj1lRTtiLmxvYWRlZD9iZChhKTpiLkgucHVzaChhKX0sZUU9bmV3IGRFO3ZhciBnRT1mdW5jdGlvbigpe3RoaXMuWj0wO3RoaXMuSz17fTt0aGlzLkg9W107dGhpcy5OPVtdO3RoaXMuZmE9dGhpcy5SPXRoaXMuamE9ITF9LGlFPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1oRTthLmV2ZW50Q2FsbGJhY2s9YjtjJiYoYS5ldmVudFRpbWVvdXQ9Yyk7cmV0dXJuIGQucHVzaChhKX0sakU9ZnVuY3Rpb24oYSxiKXtpZighQWIoYil8fGI8MCliPTA7dmFyIGM9cWooKSxkPTAsZT0hMSxmPXZvaWQgMDtmPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2V8fChlPSEwLGEoKSk7Zj12b2lkIDB9LGIpO3JldHVybiBmdW5jdGlvbigpe3ZhciBnPWM/Yy5zdWJzY3JpYmVyczoxOysrZD09PWcmJihmJiYoQS5jbGVhclRpbWVvdXQoZiksZj12b2lkIDApLGV8fChhKCksZT0hMCkpfX0sbEU9ZnVuY3Rpb24oYSl7dmFyIGI7aWYoYS5OLmxlbmd0aCliPWEuTi5zaGlmdCgpO2Vsc2UgaWYoYS5ILmxlbmd0aCliPWEuSC5zaGlmdCgpO2Vsc2UgcmV0dXJuO3ZhciBjO3ZhciBkPWI7aWYoYS5qYXx8CiFrRShkLm1lc3NhZ2UpKWM9ZDtlbHNle2EuamE9ITA7dmFyIGU9ZC5tZXNzYWdlWyJndG0udW5pcXVlRXZlbnRJZCJdLGYsZzt0eXBlb2YgZT09PSJudW1iZXIiPyhmPWUtMixnPWUtMSk6KGY9cmooKSxnPXJqKCksZC5tZXNzYWdlWyJndG0udW5pcXVlRXZlbnRJZCJdPXJqKCkpO3ZhciBoPXt9LGw9e21lc3NhZ2U6KGguZXZlbnQ9Imd0bS5pbml0X2NvbnNlbnQiLGhbImd0bS51bmlxdWVFdmVudElkIl09ZixoKSxtZXNzYWdlQ29udGV4dDp7ZXZlbnRJZDpmfX0sbj17fSxwPXttZXNzYWdlOihuLmV2ZW50PSJndG0uaW5pdCIsblsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1nLG4pLG1lc3NhZ2VDb250ZXh0OntldmVudElkOmd9fTthLkgudW5zaGlmdChwLGQpO2M9bH1yZXR1cm4gY30sb0U9ZnVuY3Rpb24oYSl7YS5mYXx8UCgxOTYpO2Zvcih2YXIgYj0hMSxjOyFhLlImJihjPWxFKGEpKTspe2EuUj0hMDt2YXIgZD1yQTtkZWxldGUgZC5ILmV2ZW50TW9kZWw7b0EoZCk7dmFyIGU9YyxmPQplLm1lc3NhZ2UsZz1lLm1lc3NhZ2VDb250ZXh0O2lmKGY9PW51bGwpYS5SPSExO2Vsc2V7Zy5mcm9tQ29udGFpbmVyRXhlY3V0aW9uJiZzQSgpO3RyeXtpZih5YihmKSl0cnl7Zi5jYWxsKHRBKX1jYXRjaChTKXt9ZWxzZSBpZihBcnJheS5pc0FycmF5KGYpKXtpZih6YihmWzBdKSl7dmFyIGg9ZlswXS5zcGxpdCgiLiIpLGw9aC5wb3AoKSxuPWYuc2xpY2UoMSkscD11QShoLmpvaW4oIi4iKSwyKTtpZihwIT1udWxsKXRyeXtwW2xdLmFwcGx5KHAsbil9Y2F0Y2goUyl7fX19ZWxzZXt2YXIgcT12b2lkIDA7aWYoSGIoZikpYTp7aWYoZi5sZW5ndGgmJnpiKGZbMF0pKXt2YXIgcj1BRFtmWzBdXTtpZihyJiYoIWcuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbnx8IUNEW2ZbMF1dKSl7cT1yKGYsZyk7YnJlYWsgYX19cT12b2lkIDB9ZWxzZSBxPWY7aWYocSl7dmFyIHQ7Zm9yKHZhciB1PXEsdj11Ll9jbGVhcnx8Zy5vdmVyd3JpdGVNb2RlbEZpZWxkcyx4PW0oT2JqZWN0LmtleXModSkpLHk9eC5uZXh0KCk7IXkuZG9uZTt5PQp4Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTt6IT09Il9jbGVhciImJih2JiZyQS5zZXQoeix2b2lkIDApLHJBLnNldCh6LHVbel0pKX1NKDU5MikmJlNEKHUpOyRrKDI1KXx8WmsoMjUsdVsiZ3RtLnN0YXJ0Il0pO3ZhciBDPXVbImd0bS51bmlxdWVFdmVudElkIl07dS5ldmVudD8odHlwZW9mIEMhPT0ibnVtYmVyIiYmKEM9cmooKSx1WyJndG0udW5pcXVlRXZlbnRJZCJdPUMsckEuc2V0KCJndG0udW5pcXVlRXZlbnRJZCIsQykpLHQ9ekIodSkpOnQ9ITE7Yj10fHxifX19ZmluYWxseXtnLmZyb21Db250YWluZXJFeGVjdXRpb24mJm9BKHJBLCEwKTt2YXIgRD1mWyJndG0udW5pcXVlRXZlbnRJZCJdO2lmKHR5cGVvZiBEPT09Im51bWJlciIpe2Zvcih2YXIgST1hLEc9SS5LW1N0cmluZyhEKV18fFtdLE49MDtOPEcubGVuZ3RoO04rKylJLk4ucHVzaChtRShHW05dKSk7Ry5sZW5ndGgmJkkuTi5zb3J0KG5FKTtkZWxldGUgSS5LW1N0cmluZyhEKV07RD5hLlomJihhLlo9RCl9YS5SPSExfX19cmV0dXJuIWJ9LApwRT1mdW5jdGlvbigpe3ZhciBhPWhFO2EuZmEmJlAoMTk1KTthLmZhPSEwO2lmKGZuLkgpe3ZhciBiPSFJZig1MSksYz1yeigpO3B6KGMse3N0YWdlOkl5LlguWmd9KTtpZihiKXt2YXIgZD1xeihjLHtzdGFnZTpJeS5YLllrfSxJeS5YLm5pKTtkIT09dm9pZCAwJiYoYy5ILlk9ZCl9dmFyIGU9YS5ILmxlbmd0aDtyeigpLkguQz1lfW9FKGEpO2lmKGZuLkgpe3ZhciBmPXJ6KCksZz1xeihmLHtzdGFnZTpJeS5YLlZrfSxJeS5YLlpnKTtnIT09dm9pZCAwJiYoZi5ILkI9Zyl9dHJ5e3ZhciBoPUFbRSgxOSldLGw9RSg1KSxuPWguaGlkZTtpZihuJiZuW2xdIT09dm9pZCAwJiZuLmVuZCl7bltsXT0hMTt2YXIgcD0hMCxxO2ZvcihxIGluIG4paWYobi5oYXNPd25Qcm9wZXJ0eShxKSYmbltxXT09PSEwKXtwPSExO2JyZWFrfXAmJihuLmVuZCgpLG4uZW5kPW51bGwpfX1jYXRjaChyKXtFKDUpfX0scUU9ZnVuY3Rpb24oYSxiKXtpZihhLlo8Yi5ub3RCZWZvcmVFdmVudElkKXt2YXIgYz1TdHJpbmcoYi5ub3RCZWZvcmVFdmVudElkKTsKYS5LW2NdPWEuS1tjXXx8W107YS5LW2NdLnB1c2goYil9ZWxzZXthLk4ucHVzaChtRShiKSk7YS5OLnNvcnQobkUpO3ZhciBkPWZ1bmN0aW9uKCl7YS5SfHxvRShhKX07TSg1ODApP2RkKGQpOmJkKGQpfX07CmdFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShoKXt2YXIgbD17fTtpZihERChoKSl7dmFyIG49aDtoPUREKG4pP24uZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlKCk6dm9pZCAwO2wuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbj0hMH1yZXR1cm57bWVzc2FnZTpoLG1lc3NhZ2VDb250ZXh0Omx9fXZhciBiPXRoaXMsYz1NYyhFKDE5KSxbXSksZD1waigpO2QucHJ1bmVkPT09ITAmJlAoODMpO3RoaXMuSz1uRCgpLmdldCgpO25EKCkubGlzdGVuKGZ1bmN0aW9uKGgpe3FFKGIsaCl9KTtkLnN1YnNjcmliZXJzPShkLnN1YnNjcmliZXJzfHwwKSsxO3ZhciBlPWMucHVzaCxmPXRoaXM7Yy5wdXNoPWZ1bmN0aW9uKCl7dmFyIGg7bGooKTtpZihqai5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkU+MCl7aD1bXTtmb3IodmFyIGw9MDtsPGFyZ3VtZW50cy5sZW5ndGg7bCsrKWhbbF09bmV3IEVEKGFyZ3VtZW50c1tsXSl9ZWxzZSBoPVtdLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApOwp2YXIgbj1oLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gYSh0KX0pO2YuSC5wdXNoLmFwcGx5KGYuSCxuKTt2YXIgcD1lLmFwcGx5KGMsaCkscT1NYXRoLm1heCgxMDAsTmYoMSwzMDApKTtpZih0aGlzLmxlbmd0aD5xKWZvcihQKDQpLGQucHJ1bmVkPSEwO3RoaXMubGVuZ3RoPnE7KXRoaXMuc2hpZnQoKTt2YXIgcj10eXBlb2YgcCE9PSJib29sZWFuInx8cDtyZXR1cm4gb0UoZikmJnJ9O3ZhciBnPWMuc2xpY2UoMCkubWFwKGZ1bmN0aW9uKGgpe3JldHVybiBhKGgpfSk7dGhpcy5ILnB1c2guYXBwbHkodGhpcy5ILGcpO0lmKDUxKXx8KGZuLkgmJnV6KCksYmQockUpKTtWQihmdW5jdGlvbigpe2lmKCFkLmd0bURvbSl7ZC5ndG1Eb209ITA7dmFyIGg9e307Yy5wdXNoKChoLmV2ZW50PSJndG0uZG9tIixoKSl9fSk7ZkUoZnVuY3Rpb24oKXtpZighZC5ndG1Mb2FkKXtkLmd0bUxvYWQ9ITA7dmFyIGg9e307Yy5wdXNoKChoLmV2ZW50PSJndG0ubG9hZCIsaCkpfX0pfTsKZ0UucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24oYSl7cmV0dXJuIEFbRSgxOSldLnB1c2goYSl9O3ZhciBoRT1uZXcgZ0U7ZnVuY3Rpb24gbkUoYSxiKXt2YXIgYz1hLm1lc3NhZ2VDb250ZXh0LGQ9Yi5tZXNzYWdlQ29udGV4dDtpZihjLmV2ZW50SWQhPT1kLmV2ZW50SWQpcmV0dXJuIGMuZXZlbnRJZC1kLmV2ZW50SWQ7aWYoIU0oNTk1KSlyZXR1cm4gYy5wcmlvcml0eUlkLWQucHJpb3JpdHlJZDt2YXIgZSxmLGc7YTp7Zm9yKHZhciBoPShlPWMucHJpb3JpdHlRdWV1ZSkhPW51bGw/ZTpbYy5wcmlvcml0eUlkXSxsPShmPWQucHJpb3JpdHlRdWV1ZSkhPW51bGw/ZjpbZC5wcmlvcml0eUlkXSxuPU1hdGgubWluKGgubGVuZ3RoLGwubGVuZ3RoKSxwPTA7cDxuO3ArKylpZihoW3BdIT09bFtwXSl7Zz1oW3BdLWxbcF07YnJlYWsgYX1nPWgubGVuZ3RoLWwubGVuZ3RofXJldHVybiBnfQpmdW5jdGlvbiBrRShhKXtpZihhPT1udWxsfHx0eXBlb2YgYSE9PSJvYmplY3QiKXJldHVybiExO2lmKGEuZXZlbnQpcmV0dXJuITA7aWYoSGIoYSkpe3ZhciBiPWFbMF07aWYoYj09PSJjb25maWcifHxiPT09ImV2ZW50Inx8Yj09PSJqcyJ8fGI9PT0iZ2V0IilyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBtRShhKXtyZXR1cm57bWVzc2FnZTphLm1lc3NhZ2UsbWVzc2FnZUNvbnRleHQ6YS5tZXNzYWdlQ29udGV4dH19ZnVuY3Rpb24gc0UoYSxiLGMpe3JldHVybiBpRShhLGIsYyl9ZnVuY3Rpb24gdEUoYSxiKXtyZXR1cm4gakUoYSxiKX1mdW5jdGlvbiByRSgpe3BFKCl9ZnVuY3Rpb24gdUUoYSl7cmV0dXJuIGhFLnB1c2goYSl9O3ZhciB2RT1mdW5jdGlvbigpe307dkUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYSxiPVJqKEEubG9jYXRpb24uaHJlZik7KGE9Yi5ob3N0bmFtZStiLnBhdGhuYW1lKSYmVW0oImRsIixlbmNvZGVVUklDb21wb25lbnQoYSkpO3ZhciBjO3ZhciBkPUUoNSk7aWYoZCl7dmFyIGU9SWYoNyk/MTowLGY9RmsoKSxnPWYmJmYuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbj8xOjAsaD1mJiZmLnNvdXJjZXx8MCxsPUUoNik7Yz1kKyI7IitsKyI7IitnKyI7IitoKyI7IitlfWVsc2UgYz12b2lkIDA7dmFyIG49YztuJiZVbSgidGRwIixuKTt2YXIgcD1PcCghMCk7cCE9PXZvaWQgMCYmVW0oImZybSIsU3RyaW5nKHApKX07dmFyIHdFPW5ldyB2RTt2YXIgeEU9ZnVuY3Rpb24oKXt0aGlzLkg9WG0oKTt0aGlzLks9dm9pZCAwfSx5RT1mdW5jdGlvbihhLGIpe3JldHVybiBabShhLGZ1bmN0aW9uKGMpe3JldHVybiBjLmpiPjA/Yj9jLmpiKyJfIitXbShjKTpTdHJpbmcoYy5qYik6dm9pZCAwfSl9Owp4RS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7aWYocGwoKXx8Zm4uSylVbSgiY3NwIixmdW5jdGlvbigpe3ZhciBiPXlFKGEuSCwhMCk7JG0oYS5IKTtyZXR1cm4gYn0sITEpLFVtKCJtZGUiLGZ1bmN0aW9uKCl7dmFyIGI9Y24uSCxjPXlFKGIsITEpOyRtKGIpO3JldHVybiBjfSwhMSksQS5hZGRFdmVudExpc3RlbmVyKCJzZWN1cml0eXBvbGljeXZpb2xhdGlvbiIsZnVuY3Rpb24oYil7aWYoYi5kaXNwb3NpdGlvbj09PSJlbmZvcmNlIil7UCgxNzkpO3ZhciBjPW5uKGIuZWZmZWN0aXZlRGlyZWN0aXZlKTtpZihjKXt2YXIgZDthOnt2YXIgZT1iLmJsb2NrZWRVUkksZj1rbjtpZihmbi5LJiZlKXt2YXIgZz1qbihjLGUpO2lmKGcpe3ZhciBoO2Q9KGg9bG4oZixjKSk9PW51bGw/dm9pZCAwOmhbZ107YnJlYWsgYX19ZD12b2lkIDB9dmFyIGw9ZDtpZihsKXt2YXIgbjthOnt0cnl7dmFyIHA9bmV3IFVSTChiLmJsb2NrZWRVUkkpLHE9cC5wYXRobmFtZS5pbmRleE9mKCI7Iik7Cm49cT49MD9wLm9yaWdpbitwLnBhdGhuYW1lLnN1YnN0cmluZygwLHEpOnAub3JpZ2luK3AucGF0aG5hbWU7YnJlYWsgYX1jYXRjaChEKXt9bj12b2lkIDB9dmFyIHI9bjtpZihyKXtmb3IodmFyIHQ9bShsKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSl7dmFyIHY9dS52YWx1ZTtpZighdi5Fbyl7di5Fbz0hMDt2YXIgeD17ZXZlbnRJZDp2LmV2ZW50SWQscHJpb3JpdHlJZDp2LnByaW9yaXR5SWR9O2lmKHBsKCkpe3ZhciB5PXgsej17dHlwZToxLGJsb2NrZWRVcmw6cixlbmRwb2ludDp2LmVuZHBvaW50LHZpb2xhdGlvbjpiLmVmZmVjdGl2ZURpcmVjdGl2ZX07aWYocGwoKSl7dmFyIEM9TGwoIlRBR19ESUFHTk9TVElDUyIse2V2ZW50SWQ6eT09bnVsbD92b2lkIDA6eS5ldmVudElkLHByaW9yaXR5SWQ6eT09bnVsbD92b2lkIDA6eS5wcmlvcml0eUlkfSk7Qy50YWdEaWFnbm9zdGljcz16O29sKEMpfX16RShhLHYuZGVzdGluYXRpb25JZCx2LmVuZHBvaW50LGMpfX1tbihjLApiLmJsb2NrZWRVUkkpfX19fX0pfTt2YXIgekU9ZnVuY3Rpb24oYSxiLGMsZCl7YW4oYS5ILGIsYywxLGQpO1ZtKCJjc3AiLCEwKTtWbSgibWRlIiwhMCk7YyE9PTYxJiZjIT09NTYmJmEuSz09PXZvaWQgMCYmKGEuSz1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXthLkguamI+MCYmdG8oITEpO2EuSz12b2lkIDB9LDUwMCkpfSxBRT1uZXcgeEU7dmFyIEJFPWZ1bmN0aW9uKCl7dGhpcy5zZXF1ZW5jZU51bWJlcj0wfTtCRS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7Q0UodGhpcyk7SWYoNjUpJiZVbSgibXRibCIsIjEiKTtVbSgidiIsIjMiKTtVbSgidCIsInQiKTtVbSgicGlkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcobm0oam0uYmEuYmgpKX0pO1VtKCJndG0iLGZ1bmN0aW9uKCl7cmV0dXJuIGR1KCl9KTtVbSgic2VxIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoKythLnNlcXVlbmNlTnVtYmVyKX0pO1VtKCJleHAiLGZ1bmN0aW9uKCl7cmV0dXJuIENwKCl9KX07dmFyIENFPWZ1bmN0aW9uKGEpe2lmKG5tKGptLmJhLmJoKT09PXZvaWQgMCl7dmFyIGI9ZnVuY3Rpb24oKXttbShqbS5iYS5iaCxEYigpKTthLnNlcXVlbmNlTnVtYmVyPTB9O2IoKTtjZChiLDg2NEU1KX1lbHNlIHBtKGptLmJhLmJoLGZ1bmN0aW9uKCl7YS5zZXF1ZW5jZU51bWJlcj0wfSk7YS5zZXF1ZW5jZU51bWJlcj0wfSxERT1uZXcgQkU7ZnVuY3Rpb24gRUUoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEFbYV19fQp2YXIgRkU9e30sR0U9KEZFWzE0XT1mdW5jdGlvbigpe3ZhciBhO3JldHVybihhPUEuY3J5cHRvKT09bnVsbD92b2lkIDA6YS5nZXRSYW5kb21WYWx1ZXN9LEZFWzE1XT1mdW5jdGlvbigpe3ZhciBhLGI7cmV0dXJuKGE9QS5jcnlwdG8pPT1udWxsP3ZvaWQgMDooYj1hLnN1YnRsZSk9PW51bGw/dm9pZCAwOmIuZGlnZXN0fSxGRVsxXT1FRSgiZmV0Y2giKSxGRVs2XT1FRSgiTWFwIiksRkVbMl09ZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb219LEZFWzhdPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIil9LEZFWzldPWZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5lbnRyaWVzfSxGRVsxMF09ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzfSxGRVs1XT1FRSgiUHJvbWlzZSIpLEZFWzEzXT1FRSgiUmVnRXhwIiksRkVbM109ZnVuY3Rpb24oKXtyZXR1cm4gSGMuc2VuZEJlYWNvbn0sRkVbN109RUUoIlNldCIpLEZFWzEyXT1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcucHJvdG90eXBlLmVuZHNXaXRofSwKRkVbMTFdPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aH0sRkVbNF09RUUoIlhNTEh0dHBSZXF1ZXN0IiksRkUpLEhFPXt9LElFPShIRVsxNV09ITAsSEUpO3ZhciBORT0vXihodHRwcz86KT9cL1wvLzsKZnVuY3Rpb24gaEYoKXt9O2Z1bmN0aW9uIGlGKCl7SWYoNjIpJiYoaHkoImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLndhaXRGb3JUYWdzKSE9PSEwfSksaHkoImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiLGZ1bmN0aW9uKGEsYixjKXt2YXIgZDtyZXR1cm4oKGQ9Yy5vcHRpb25zKT09bnVsbD92b2lkIDA6ZC53YWl0Rm9yVGFncykhPT0hMH0pLGh5KCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiLGZ1bmN0aW9uKGEsYixjKXt2YXIgZDtyZXR1cm4oKGQ9Yy5vcHRpb25zKT09bnVsbD92b2lkIDA6ZC5maXhNaXNzaW5nQXBpKSE9PSEwfSkpfTt2YXIgakY9ZnVuY3Rpb24oKXt0aGlzLkg9dGhpcy5ncHBTdHJpbmc9dm9pZCAwfTtqRi5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLkg9dGhpcy5ncHBTdHJpbmc9dm9pZCAwfTt2YXIga0Y9bmV3IGpGO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7bHQoe0d1OjAsRnU6MSxDdToyLHh1OjMsRHU6NCx5dTo1LEV1OjYsQXU6NyxCdTo4LHd1OjksenU6MTAsSHU6MTF9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIE51bWJlcihhKX0pO2x0KHtKdTowLEt1OjEsSXU6Mn0pLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gTnVtYmVyKGEpfSk7dmFyIGxGPWZ1bmN0aW9uKGEsYixjLGQpe3J0LmNhbGwodGhpcyk7dGhpcy5mZT1iO3RoaXMua2Q9Yzt0aGlzLmFjPWQ7dGhpcy5MYT1uZXcgTWFwO3RoaXMuaGU9MDt0aGlzLmphPW5ldyBNYXA7dGhpcy55YT1uZXcgTWFwO3RoaXMuWj12b2lkIDA7dGhpcy5LPWF9O3dhKGxGLHJ0KTtsRi5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2RlbGV0ZSB0aGlzLkg7dGhpcy5MYS5jbGVhcigpO3RoaXMuamEuY2xlYXIoKTt0aGlzLnlhLmNsZWFyKCk7dGhpcy5aJiYobnQodGhpcy5LLCJtZXNzYWdlIix0aGlzLlopLGRlbGV0ZSB0aGlzLlopO2RlbGV0ZSB0aGlzLks7ZGVsZXRlIHRoaXMuYWM7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07CnZhciBtRj1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLmtkJiZhLmtkKGEuSyk/YS5IPWEuSzphLkg9TnAoYS5LLGEuZmUpO3ZhciBiO3JldHVybihiPWEuSCkhPW51bGw/YjpudWxsfSxvRj1mdW5jdGlvbihhLGIsYyl7aWYobUYoYSkpaWYoYS5IPT09YS5LKXt2YXIgZD1hLkxhLmdldChiKTtkJiZkKGEuSCxjKX1lbHNle3ZhciBlPWEuamEuZ2V0KGIpO2lmKGUmJmUuZGspe25GKGEpO3ZhciBmPSsrYS5oZTthLnlhLnNldChmLHtwZTplLnBlLElyOmUubm8oYykscGVyc2lzdGVudDpiPT09ImFkZEV2ZW50TGlzdGVuZXIifSk7YS5ILnBvc3RNZXNzYWdlKGUuZGsoYyxmKSwiKiIpfX19LG5GPWZ1bmN0aW9uKGEpe2EuWnx8KGEuWj1mdW5jdGlvbihiKXtpZihiLnNvdXJjZT09PWEuSCl0cnl7dmFyIGM7Yz1hLmFjP2EuYWMoYik6dm9pZCAwO2lmKGMpe3ZhciBkPWMuWXMsZT1hLnlhLmdldChkKTtpZihlKXtlLnBlcnNpc3RlbnR8fGEueWEuZGVsZXRlKGQpO3ZhciBmOyhmPQplLnBlKT09bnVsbHx8Zi5jYWxsKGUsZS5JcixjLnBheWxvYWQpfX19Y2F0Y2goZyl7fX0sbXQoYS5LLCJtZXNzYWdlIixhLlopKX07dmFyIHBGPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5saXN0ZW5lcixkPSgwLGEuX19ncHApKCJhZGRFdmVudExpc3RlbmVyIixjKTtkJiZjKGQsITApfSxxRj1mdW5jdGlvbihhLGIpeygwLGEuX19ncHApKCJyZW1vdmVFdmVudExpc3RlbmVyIixiLmxpc3RlbmVyLGIubGlzdGVuZXJJZCl9LHJGPXtubzpmdW5jdGlvbihhKXtyZXR1cm4gYS5saXN0ZW5lcn0sZGs6ZnVuY3Rpb24oYSxiKXt2YXIgYz17fTtyZXR1cm4gYy5fX2dwcENhbGw9e2NhbGxJZDpiLGNvbW1hbmQ6ImFkZEV2ZW50TGlzdGVuZXIiLHZlcnNpb246IjEuMSJ9LGN9LHBlOmZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5fX2dwcFJldHVybjthKGMucmV0dXJuVmFsdWUsYy5zdWNjZXNzKX19LHNGPXtubzpmdW5jdGlvbihhKXtyZXR1cm4gYS5saXN0ZW5lcn0sZGs6ZnVuY3Rpb24oYSxiKXt2YXIgYz17fTtyZXR1cm4gYy5fX2dwcENhbGw9e2NhbGxJZDpiLGNvbW1hbmQ6InJlbW92ZUV2ZW50TGlzdGVuZXIiLHZlcnNpb246IjEuMSIsCnBhcmFtZXRlcjphLmxpc3RlbmVySWR9LGN9LHBlOmZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5fX2dwcFJldHVybixkPWMucmV0dXJuVmFsdWUuZGF0YTthPT1udWxsfHxhKGQsYy5zdWNjZXNzKX19O2Z1bmN0aW9uIHRGKGEpe3ZhciBiPXt9O3ZmKGEuZGF0YSk/Yj1KU09OLnBhcnNlKGEuZGF0YSk6Yj1hLmRhdGE7cmV0dXJue3BheWxvYWQ6YixZczpiLl9fZ3BwUmV0dXJuLmNhbGxJZH19CnZhciB1Rj1mdW5jdGlvbihhLGIpe3ZhciBjO2M9KGI9PT12b2lkIDA/e306YikudGltZW91dE1zO3J0LmNhbGwodGhpcyk7dGhpcy5jYWxsZXI9bmV3IGxGKGEsIl9fZ3BwTG9jYXRvciIsZnVuY3Rpb24oZCl7cmV0dXJuIHR5cGVvZiBkLl9fZ3BwPT09ImZ1bmN0aW9uIn0sdEYpO3RoaXMuY2FsbGVyLkxhLnNldCgiYWRkRXZlbnRMaXN0ZW5lciIscEYpO3RoaXMuY2FsbGVyLmphLnNldCgiYWRkRXZlbnRMaXN0ZW5lciIsckYpO3RoaXMuY2FsbGVyLkxhLnNldCgicmVtb3ZlRXZlbnRMaXN0ZW5lciIscUYpO3RoaXMuY2FsbGVyLmphLnNldCgicmVtb3ZlRXZlbnRMaXN0ZW5lciIsc0YpO3RoaXMudGltZW91dE1zPWMhPW51bGw/Yzo1MDB9O3dhKHVGLHJ0KTt1Ri5wcm90b3R5cGUuTj1mdW5jdGlvbigpe3RoaXMuY2FsbGVyLmRpc3Bvc2UoKTtydC5wcm90b3R5cGUuTi5jYWxsKHRoaXMpfTsKdUYucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPUhwKGZ1bmN0aW9uKCl7YSh2RiwhMCl9KSxkPXRoaXMudGltZW91dE1zPT09LTE/dm9pZCAwOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtjKCl9LHRoaXMudGltZW91dE1zKTtvRih0aGlzLmNhbGxlciwiYWRkRXZlbnRMaXN0ZW5lciIse2xpc3RlbmVyOmZ1bmN0aW9uKGUsZil7Y2xlYXJUaW1lb3V0KGQpO3RyeXt2YXIgZzt2YXIgaDsoKGg9ZS5waW5nRGF0YSk9PW51bGw/dm9pZCAwOmguZ3BwVmVyc2lvbik9PT12b2lkIDB8fGUucGluZ0RhdGEuZ3BwVmVyc2lvbj09PSIxInx8ZS5waW5nRGF0YS5ncHBWZXJzaW9uPT09IjEuMCI/KGIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpLGc9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToxLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19JU19ERVBSRUNBVEVEX1NQRUMiLAphcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX19KTpBcnJheS5pc0FycmF5KGUucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zKT9nPWU6KGIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpLGc9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToyLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19FWFBFQ1RFRF9BUFBMSUNBVElPTl9TRUNUSU9OX0FSUkFZIixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX19KTthKGcsZil9Y2F0Y2gobCl7aWYoZT09bnVsbD8wOmUubGlzdGVuZXJJZCl0cnl7Yi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCl9Y2F0Y2gobil7YSh3RiwhMCk7cmV0dXJufWEoeEYsITApfX19KX07CnVGLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEpe29GKHRoaXMuY2FsbGVyLCJyZW1vdmVFdmVudExpc3RlbmVyIix7bGlzdGVuZXI6ZnVuY3Rpb24oKXt9LGxpc3RlbmVySWQ6YX0pfTsKdmFyIHhGPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntpbnRlcm5hbEVycm9yU3RhdGU6MixncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfVU5BVkFJTEFCTEUiLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfSx2Rj17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7Z3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0xJU1RFTkVSX1JFR0lTVFJBVElPTl9USU1FT1VUIixpbnRlcm5hbEVycm9yU3RhdGU6MixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX0sbGlzdGVuZXJJZDotMX0sd0Y9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2dwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19SRU1PVkVfRVZFTlRfTElTVEVORVJfRVJST1IiLGludGVybmFsRXJyb3JTdGF0ZToyLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfTtmdW5jdGlvbiB5RihhKXt2YXIgYjtpZighKGI9YS5waW5nRGF0YS5zaWduYWxTdGF0dXM9PT0icmVhZHkiKSl7dmFyIGM9YS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnM7Yj0hY3x8Yy5sZW5ndGg9PT0xJiZjWzBdPT09LTF9aWYoYil7a0YuZ3BwU3RyaW5nPWEucGluZ0RhdGEuZ3BwU3RyaW5nO3ZhciBkPWEucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zLmpvaW4oIiwiKTtrRi5IPWR9fWZ1bmN0aW9uIHpGKCl7dHJ5e3ZhciBhPW5ldyB1RihBLHt0aW1lb3V0TXM6LTF9KTttRihhLmNhbGxlcikmJmEuYWRkRXZlbnRMaXN0ZW5lcih5Ril9Y2F0Y2goYil7fX07ZnVuY3Rpb24gQUYoKXt2YXIgYT1bWyJjdiIsRSgxKV0sWyJydiIsRSgxNCldLFsidGMiLGNBLnRhZ3MuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBkfSkubGVuZ3RoXV0sYj1KZigxNSk7YiYmYS5wdXNoKFsieCIsYl0pO3ZhciBjPUNwKCk7YyYmYS5wdXNoKFsidGFnX2V4cCIsY10pO3JldHVybiBhfTt2YXIgQkY9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD17fTt0aGlzLks9e307ZnooZnVuY3Rpb24oYil7dmFyIGM9Yi5ldmVudElkLGQ9Yi50ZixlPVtdLGY9YS5IW2NdfHxbXTtmLmxlbmd0aCYmZS5wdXNoKFsiaGYiLGYuam9pbigiLiIpXSk7dmFyIGc9YS5LW2NdfHxbXTtnLmxlbmd0aCYmZS5wdXNoKFsiaHQiLGcuam9pbigiLiIpXSk7ZCYmKGRlbGV0ZSBhLkhbY10sZGVsZXRlIGEuS1tjXSk7cmV0dXJuIGV9KX0sQ0Y9ZnVuY3Rpb24oKXt2YXIgYT0wO3JldHVybiBmdW5jdGlvbihiKXtzd2l0Y2goYil7Y2FzZSAxOmF8PTE7YnJlYWs7Y2FzZSAyOmF8PTI7YnJlYWs7Y2FzZSAzOmF8PTR9cmV0dXJuIGF9fSxERjt2YXIgRUY9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0iIjtmbi5OJiZNKDUxNikmJmZ6KGZ1bmN0aW9uKCl7dmFyIGI9W107YS5IJiZiLnB1c2goWyJwc2QiLGEuSF0pO3JldHVybiBifSl9LEZGO2Z1bmN0aW9uIEdGKCl7cmV0dXJuITF9CmZ1bmN0aW9uIEhGKCl7dmFyIGE9e307cmV0dXJuIGZ1bmN0aW9uKGIsYyxkKXt9fTtmdW5jdGlvbiBJRigpe3ZhciBhPUpGO3JldHVybiBmdW5jdGlvbihiLGMsZCl7dmFyIGU9ZCYmZC5ldmVudDtLRihjKTt2YXIgZj1CaChiKT92b2lkIDA6MSxnPW5ldyBrYjtHYihjLGZ1bmN0aW9uKHIsdCl7dmFyIHU9VWQodCx2b2lkIDAsZik7dT09PXZvaWQgMCYmdCE9PXZvaWQgMCYmUCg0NCk7Zy5zZXQocix1KX0pO2EuUWIoUWYoKSk7dmFyIGg9e1JuOmhnKGIpLGV2ZW50SWQ6ZT09bnVsbD92b2lkIDA6ZS5pZCxwcmlvcml0eUlkOmUhPT12b2lkIDA/ZS5wcmlvcml0eUlkOnZvaWQgMCxwcmlvcml0eVF1ZXVlOmUhPT12b2lkIDA/ZS5wcmlvcml0eVF1ZXVlOnZvaWQgMCx3ZzplIT09dm9pZCAwP2Z1bmN0aW9uKHIpe2UubGQud2cocil9OnZvaWQgMCxQYjpmdW5jdGlvbigpe3JldHVybiBifSxsb2c6ZnVuY3Rpb24oKXt9LE5yOntpbmRleDpkPT1udWxsP3ZvaWQgMDpkLmluZGV4LHR5cGU6ZD09bnVsbD92b2lkIDA6ZC50eXBlLG5hbWU6ZD09bnVsbD92b2lkIDA6ZC5uYW1lfSwKaXQ6ISFLQShiLDMpLG9yaWdpbmFsRXZlbnREYXRhOmU9PW51bGw/dm9pZCAwOmUub3JpZ2luYWxFdmVudERhdGF9O2UmJmUuY2FjaGVkTW9kZWxWYWx1ZXMmJihoLmNhY2hlZE1vZGVsVmFsdWVzPXtndG06ZS5jYWNoZWRNb2RlbFZhbHVlcy5ndG0sZWNvbW1lcmNlOmUuY2FjaGVkTW9kZWxWYWx1ZXMuZWNvbW1lcmNlfSk7aWYoR0YoKSl7dmFyIGw9SEYoKSxuLHA7aC5BYj17d2s6W10seWc6e30samM6ZnVuY3Rpb24ocix0LHUpe3Q9PT0xJiYobj1yKTt0PT09NyYmKHA9dSk7bChyLHQsdSl9LGVpOlZoKCl9O2gubG9nPWZ1bmN0aW9uKHIpe3ZhciB0PU9hLmFwcGx5KDEsYXJndW1lbnRzKTtuJiZsKG4sNCx7bGV2ZWw6cixzb3VyY2U6cCxtZXNzYWdlOnR9KX19CnZhciBxPXJmKGEsaCxbYixnXSk7YS5RYigpO3EgaW5zdGFuY2VvZiBUYSYmKHEudHlwZT09PSJyZXR1cm4iP3E9cS5kYXRhOnE9dm9pZCAwKTtyZXR1cm4gVGQocSx2b2lkIDAsZil9fWZ1bmN0aW9uIEtGKGEpe3ZhciBiPWEuZ3RtT25TdWNjZXNzLGM9YS5ndG1PbkZhaWx1cmU7eWIoYikmJihhLmd0bU9uU3VjY2Vzcz1mdW5jdGlvbigpe2JkKGIpfSk7eWIoYykmJihhLmd0bU9uRmFpbHVyZT1mdW5jdGlvbigpe2JkKGMpfSl9O3ZhciBMRj1mdW5jdGlvbihhKXtpeChhKX07dmFyIE1GPWZ1bmN0aW9uKGEpe1YoYSxILkoudGcsY28uaWEuY2IpfTtmdW5jdGlvbiBORigpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjApfTt2YXIgT0Y9W0YuRC56aV0ubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnNsaWNlKDIpfSk7dmFyIFBGPWZ1bmN0aW9uKGEpe1UoYSxGLkQuemksYWwoOCxORikpfTtmdW5jdGlvbiBRRihhKXt9UUYuUD0iaW50ZXJuYWwuYWRkQWRzQ2xpY2tJZHMiO2Z1bmN0aW9uIFJGKGEsYil7dmFyIGM9dGhpczt9UkYucHVibGljTmFtZT0iYWRkQ29uc2VudExpc3RlbmVyIjt2YXIgU0Y9ITE7ZnVuY3Rpb24gVEYoYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpaWYoU0YpdHJ5e2FbYl0oKX1jYXRjaChjKXtQKDc3KX1lbHNlIGFbYl0oKX1mdW5jdGlvbiBVRihhLGIsYyl7dmFyIGQ9dGhpcyxlO2lmKCFsaChhKXx8IWhoKGIpfHwhbWgoYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImZ1bmN0aW9uIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChkLCJsaXN0ZW5fZGF0YV9sYXllciIsYSl9XSk7ZT15QigpLmFkZExpc3RlbmVyKGEsVGQoYix2b2lkIDAsMSksYz09PW51bGw/dm9pZCAwOmMpO3JldHVybiBlfVVGLlA9ImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFZGKGEsYixjKXt9VkYucHVibGljTmFtZT0iYWRkRG9jdW1lbnRFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBXRihhLGIsYyxkKXt9V0YucHVibGljTmFtZT0iYWRkRWxlbWVudEV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFhGKGEpe3JldHVybiBhLlQueGIoKX07ZnVuY3Rpb24gWUYoYSl7fVlGLnB1YmxpY05hbWU9ImFkZEV2ZW50Q2FsbGJhY2siOwp2YXIgWkY9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YTpTdHJpbmcocmooKSl9LGJHPWZ1bmN0aW9uKGEsYil7JEYoYSwiaW5pdCIsITEpfHwoYUcoYSwiaW5pdCIsITApLGIoKSl9LCRGPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jRyhhKTtyZXR1cm4gT2IoZCxiLGMpfSxkRz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1jRyhhKSxmPU9iKGUsYixkKSxnPWMoZik7cmV0dXJuIGVbYl09Z30sYUc9ZnVuY3Rpb24oYSxiLGMpe2NHKGEpW2JdPWN9LGNHPWZ1bmN0aW9uKGEpe3ZhciBiPWtqKCJhdXRvRXZlbnRzU2V0dGluZ3MiLGZ1bmN0aW9uKCl7cmV0dXJue319KTtiLmhhc093blByb3BlcnR5KGEpfHwoYlthXT17fSk7cmV0dXJuIGJbYV19LGVHPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17ZXZlbnQ6YiwiZ3RtLmVsZW1lbnQiOmEsImd0bS5lbGVtZW50Q2xhc3NlcyI6b2QoYSwiY2xhc3NOYW1lIiksImd0bS5lbGVtZW50SWQiOmEuZm9yfHxlZChhLCJpZCIpfHwKIiIsImd0bS5lbGVtZW50VGFyZ2V0IjphLmZvcm1UYXJnZXR8fG9kKGEsInRhcmdldCIpfHwiIn07YyYmKGRbImd0bS50cmlnZ2VycyJdPWMuam9pbigiLCIpKTtkWyJndG0uZWxlbWVudFVybCJdPShhLmF0dHJpYnV0ZXMmJmEuYXR0cmlidXRlcy5mb3JtYWN0aW9uP2EuZm9ybUFjdGlvbjoiIil8fGEuYWN0aW9ufHxvZChhLCJocmVmIil8fGEuc3JjfHxhLmNvZGV8fGEuY29kZWJhc2V8fCIiO3JldHVybiBkfTsKZnVuY3Rpb24gaUcoYSl7aWYoYS5mb3JtKXt2YXIgYjtyZXR1cm4oKGI9YS5mb3JtKT09bnVsbD8wOmIudGFnTmFtZSk/YS5mb3JtOkIuZ2V0RWxlbWVudEJ5SWQoYS5mb3JtKX1yZXR1cm4gaGQoYSxbImZvcm0iXSwxMDApfTsKZnVuY3Rpb24gbUcoYSl7fW1HLlA9ImludGVybmFsLmFkZEZvcm1BYmFuZG9ubWVudExpc3RlbmVyIjtmdW5jdGlvbiBuRyhhLGIsYyxkKXt9Cm5HLlA9ImludGVybmFsLmFkZEZvcm1EYXRhIjsKZnVuY3Rpb24gc0coYSl7fXNHLlA9ImludGVybmFsLmFkZEdhU2VuZExpc3RlbmVyIjtmdW5jdGlvbiB0RyhhKXtpZighYSlyZXR1cm57fTt2YXIgYj1hLk5yO3JldHVybiBKQShiLnR5cGUsYi5pbmRleCxiLm5hbWUpfWZ1bmN0aW9uIHVHKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPXtvcmlnaW5hdGluZ0VudGl0eTp0RyhhKX07YS5wcmlvcml0eVF1ZXVlJiYoYi5wcmlvcml0eVF1ZXVlPWEucHJpb3JpdHlRdWV1ZSk7cmV0dXJuIGJ9O2Z1bmN0aW9uIENHKGEpe3ZhciBiPW1qKCJ6b25lcyIpO3JldHVybiBiP2IuZ2V0SXNBbGxvd2VkRm4od2soKSxhKTpmdW5jdGlvbigpe3JldHVybiEwfX1mdW5jdGlvbiBERygpe3ZhciBhPW1qKCJ6b25lcyIpO2EmJmEudW5yZWdpc3RlckNoaWxkKHdrKCkpfQpmdW5jdGlvbiBFRygpe2tCKHZrKCksZnVuY3Rpb24oYSl7dmFyIGI9YS5vcmlnaW5hbEV2ZW50RGF0YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSxjPW1qKCJ6b25lcyIpO3JldHVybiBjP2MuaXNBY3RpdmUod2soKSxiKTohMH0pO2hCKHZrKCksZnVuY3Rpb24oYSl7dmFyIGIsYztiPWEuZW50aXR5SWQ7Yz1hLnNlY3VyaXR5R3JvdXBzO3JldHVybiBDRyhOdW1iZXIoYS5vcmlnaW5hbEV2ZW50RGF0YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSkpKGIsYyl9KX07dmFyIEZHPWZ1bmN0aW9uKGEsYil7dGhpcy50YWdJZD1hO3RoaXMuY2Fub25pY2FsSWQ9Yn07CmZ1bmN0aW9uIEdHKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gYX1HRy5QPSJpbnRlcm5hbC5sb2FkR29vZ2xlVGFnIjtmdW5jdGlvbiBIRyhhKXtyZXR1cm4gbmV3IEtkKCIiLGZ1bmN0aW9uKGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYik7aWYoYyBpbnN0YW5jZW9mIEtkKXJldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oKXt2YXIgZD1PYS5hcHBseSgwLGFyZ3VtZW50cyksZT10aGlzLGY9RWQoWEYodGhpcyksbnVsbCk7Zi5ldmVudElkPWEuZXZlbnRJZDtmLnByaW9yaXR5SWQ9YS5wcmlvcml0eUlkO2Yub3JpZ2luYWxFdmVudERhdGE9YS5vcmlnaW5hbEV2ZW50RGF0YTt2YXIgZz1kLm1hcChmdW5jdGlvbihsKXtyZXR1cm4gZS5ldmFsdWF0ZShsKX0pLGg9dGhpcy5ULndiKCk7aC51ZShmKTtyZXR1cm4gYy5OYy5hcHBseShjLFtoXS5jb25jYXQodyhnKSkpfSl9KX07ZnVuY3Rpb24gSUcoYSxiLGMpe3ZhciBkPXRoaXM7fUlHLlA9ImludGVybmFsLmFkZEdvb2dsZVRhZ1Jlc3RyaWN0aW9uIjsKZnVuY3Rpb24gUEcoYSxiKXt9UEcuUD0iaW50ZXJuYWwuYWRkSGlzdG9yeUNoYW5nZUxpc3RlbmVyIjtmdW5jdGlvbiBRRyhhLGIsYyl7fVFHLnB1YmxpY05hbWU9ImFkZFdpbmRvd0V2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFJHKGEsYil7cmV0dXJuITB9UkcucHVibGljTmFtZT0iYWxpYXNJbldpbmRvdyI7ZnVuY3Rpb24gU0coYSxiLGMpe31TRy5QPSJpbnRlcm5hbC5hcHBlbmRSZW1vdGVDb25maWdQYXJhbWV0ZXIiO2Z1bmN0aW9uIFRHKGEpe3ZhciBiO3JldHVybiBifQpURy5wdWJsaWNOYW1lPSJjYWxsSW5XaW5kb3ciO2Z1bmN0aW9uIFVHKGEpe31VRy5wdWJsaWNOYW1lPSJjYWxsTGF0ZXIiO2Z1bmN0aW9uIFZHKGEpe31WRy5QPSJjYWxsT25Eb21SZWFkeSI7ZnVuY3Rpb24gV0coYSl7fVdHLlA9ImNhbGxPbldpbmRvd0xvYWQiO3ZhciBZRz1mdW5jdGlvbihhLGIpe3ZhciBjPW5tKFhHKXx8e30sZD1jW2FdfHx7fTtpZihkW2JdKXJldHVybiExO3ZhciBlPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZCk7ZVtiXT0hMDt2YXIgZj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGMpO2ZbYV09ZTttbShYRyxmKTtyZXR1cm4hMH0sWEc9am0uYmEuaHI7ZnVuY3Rpb24gWkcoYSxiKXtpZighbGgoYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgYz1ZRyhhLGIpO3JldHVybiBjfVpHLlA9ImludGVybmFsLmNsYWltRGVzdGluYXRpb24iO2Z1bmN0aW9uICRHKGEsYil7dmFyIGM7cmV0dXJuIGN9JEcuUD0iaW50ZXJuYWwuY29tcHV0ZUd0bVBhcmFtZXRlciI7ZnVuY3Rpb24gYUgoYSxiKXt2YXIgYz10aGlzO31hSC5QPSJpbnRlcm5hbC5jb25zZW50U2NoZWR1bGVGaXJzdFRyeSI7ZnVuY3Rpb24gYkgoYSxiKXt2YXIgYz10aGlzO31iSC5QPSJpbnRlcm5hbC5jb25zZW50U2NoZWR1bGVSZXRyeSI7ZnVuY3Rpb24gY0goYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPWE7aWYoIWttKGMpKXRocm93IEVycm9yKCJjb3B5RnJvbUNyb3NzQ29udGFpbmVyRGF0YSByZXF1aXJlcyB2YWxpZCBDcm9zc0NvbnRhaW5lclNjaGVtYSBrZXkuIik7dmFyIGQ9bm0oYyk7Yj1VZChkLHRoaXMuVCwxKTtyZXR1cm4gYn1jSC5QPSJpbnRlcm5hbC5jb3B5RnJvbUNyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24gZEgoYSxiKXt2YXIgYzt2YXIgZT1VZChjLHRoaXMuVCxCaChYRih0aGlzKS5QYigpKT8yOjEpO2U9PT12b2lkIDAmJmMhPT12b2lkIDAmJlAoNDUpO3JldHVybiBlfWRILnB1YmxpY05hbWU9ImNvcHlGcm9tRGF0YUxheWVyIjsKZnVuY3Rpb24gZUgoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBifWVILlA9ImludGVybmFsLmNvcHlGcm9tRGF0YUxheWVyQ2FjaGUiO2Z1bmN0aW9uIGZIKGEpe3ZhciBiO3JldHVybiBifWZILnB1YmxpY05hbWU9ImNvcHlGcm9tV2luZG93IjtmdW5jdGlvbiBnSChhKXt2YXIgYj12b2lkIDA7cmV0dXJuIFVkKGIsdGhpcy5ULDEpfWdILlA9ImludGVybmFsLmNvcHlLZXlGcm9tV2luZG93Ijt2YXIgaEg9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT1jby5pYS5jYiYmZm8uSFthXT09PWJvLk1hLlVlJiYhWG8oRi5ELmthKX07dmFyIGlIPWZ1bmN0aW9uKCl7cmV0dXJuIjAifSxqSD1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJzdHJpbmciKXJldHVybiIiO3ZhciBiPVsiZ2NsaWQiLCJkY2xpZCIsIndicmFpZCIsIl9nbCJdO00oMTAyKSYmYi5wdXNoKCJnYnJhaWQiKTtyZXR1cm4gU2ooYSxiLCIwIil9O3ZhciBrSD17fSxsSD17fSxtSD17fSxuSD17fSxvSD17fSxwSD17fSxxSD17fSxySD17fSxzSD17fSx0SD17fSx1SD17fSx2SD17fSx3SD17fSx4SD17fSx5SD17fSx6SD17fSxBSD17fSxCSD17fSxDSD17fSxESD17fSxFSD17fSxGSD17fSxHSD17fSxISD17fSxJSD17fSxKSD17fSxLSD0oSkhbRi5ELmZiXT0oa0hbMl09W2hIXSxrSCksSkhbRi5ELlpmXT0obEhbMl09W2hIXSxsSCksSkhbRi5ELkppXT0obUhbMl09W2hIXSxtSCksSkhbRi5ELmdtXT0obkhbMl09W2hIXSxuSCksSkhbRi5ELmhtXT0ob0hbMl09W2hIXSxvSCksSkhbRi5ELmltXT0ocEhbMl09W2hIXSxwSCksSkhbRi5ELmptXT0ocUhbMl09W2hIXSxxSCksSkhbRi5ELmttXT0ockhbMl09W2hIXSxySCksSkhbRi5ELkJjXT0oc0hbMl09W2hIXSxzSCksSkhbRi5ELmNnXT0odEhbMl09W2hIXSx0SCksSkhbRi5ELmRnXT0odUhbMl09W2hIXSx1SCksSkhbRi5ELmVnXT0odkhbMl09W2hIXSx2SCksSkhbRi5ELmZnXT0od0hbMl09CltoSF0sd0gpLEpIW0YuRC5nZ109KHhIWzJdPVtoSF0seEgpLEpIW0YuRC5oZ109KHlIWzJdPVtoSF0seUgpLEpIW0YuRC5pZ109KHpIWzJdPVtoSF0sekgpLEpIW0YuRC5qZ109KEFIWzJdPVtoSF0sQUgpLEpIW0YuRC5sYl09KEJIWzFdPVtoSF0sQkgpLEpIW0YuRC5EZF09KENIWzFdPVtoSF0sQ0gpLEpIW0YuRC5LZF09KERIWzFdPVtoSF0sREgpLEpIW0YuRC5FZV09KEVIWzFdPVtoSF0sRUgpLEpIW0YuRC5CZl09KEZIWzFdPVtmdW5jdGlvbihhKXtyZXR1cm4gTSgxMDIpJiZoSChhKX1dLEZIKSxKSFtGLkQuVWNdPShHSFsxXT1baEhdLEdIKSxKSFtGLkQuemFdPShISFsxXT1baEhdLEhIKSxKSFtGLkQuVWFdPShJSFsxXT1baEhdLElIKSxKSCksTEg9e30sTUg9KExIW0YuRC5sYl09aUgsTEhbRi5ELkRkXT1pSCxMSFtGLkQuS2RdPWlILExIW0YuRC5FZV09aUgsTEhbRi5ELkJmXT1pSCxMSFtGLkQuVWNdPWZ1bmN0aW9uKGEpe2lmKCFDZChhKSlyZXR1cm57fTt2YXIgYj1FZChhLApudWxsKTtkZWxldGUgYi5tYXRjaF9pZDtyZXR1cm4gYn0sTEhbRi5ELnphXT1qSCxMSFtGLkQuVWFdPWpILExIKSxOSD17fSxPSD17fSxQSD0oT0hbSC5KLllhXT0oTkhbMl09W2hIXSxOSCksT0gpLFFIPXt9O3ZhciBSSD1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLkg9YTt0aGlzLk49Yjt0aGlzLlI9Yzt0aGlzLlo9ZH07UkgucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9jby5pYS5nZDphO2lmKCF0aGlzLk4uc29tZShmdW5jdGlvbihiKXtyZXR1cm4gYihhKX0pKXJldHVybiB0aGlzLlIuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gYihhKX0pP3RoaXMuWih0aGlzLkgpOnRoaXMuSH07UkgucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm4gQWQodGhpcy5IKT09PSJhcnJheSJ8fENkKHRoaXMuSCk/RWQodGhpcy5ILG51bGwpOnRoaXMuSH07CnZhciBTSD1mdW5jdGlvbigpe30sVEg9ZnVuY3Rpb24oYSxiKXt0aGlzLmNvbmRpdGlvbnM9YTt0aGlzLkg9Yn0sVUg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGU9KChkPWEuY29uZGl0aW9uc1tiXSk9PW51bGw/dm9pZCAwOmRbMl0pfHxbXSxmLGc9KChmPWEuY29uZGl0aW9uc1tiXSk9PW51bGw/dm9pZCAwOmZbMV0pfHxbXTtyZXR1cm4gbmV3IFJIKGMsZSxnLGEuSFtiXXx8U0gpfSxWSCxXSDt2YXIgWUg9ZnVuY3Rpb24oYSl7YS5LPSEwO2EuSD0hMTtpZihJZig1Mikpe2lmKE0oNTE2KSYmWEgoKSl7dmFyIGI7YS5zZXR0aW5ncz0oYj1kYXRhLnByb2R1Y3RTZXR0aW5ncykhPW51bGw/Yjp7fTthLkg9ITB9ZWxzZXt2YXIgYzthLnNldHRpbmdzPShjPXByb2R1Y3RTZXR0aW5ncykhPW51bGw/Yzp7fX1wcm9kdWN0U2V0dGluZ3M9dm9pZCAwO2RhdGEucHJvZHVjdFNldHRpbmdzPXZvaWQgMDt2YXIgZDsoZD1GRikhPW51bGwmJmZuLk4mJk0oNTE2KSYmKGQuSD1hLkg/IjEiOiIwIil9fSwkSD1mdW5jdGlvbihhKXt2YXIgYj1aSDtiLkt8fFlIKGIpO3JldHVybiBiLnNldHRpbmdzW2FdfSxaSD1uZXcgZnVuY3Rpb24oKXt0aGlzLnNldHRpbmdzPXt9O3RoaXMuSz10aGlzLkg9ITF9OwpmdW5jdGlvbiBYSCgpe2lmKCFkYXRhLnByb2R1Y3RTZXR0aW5ncyYmIXByb2R1Y3RTZXR0aW5ncylyZXR1cm4hMDtpZighZGF0YS5wcm9kdWN0U2V0dGluZ3N8fCFwcm9kdWN0U2V0dGluZ3N8fE9iamVjdC5rZXlzKGRhdGEucHJvZHVjdFNldHRpbmdzKS5sZW5ndGghPT1PYmplY3Qua2V5cyhwcm9kdWN0U2V0dGluZ3MpLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIGEgaW4gcHJvZHVjdFNldHRpbmdzKWlmKCFkYXRhLnByb2R1Y3RTZXR0aW5ncy5oYXNPd25Qcm9wZXJ0eShhKXx8ZGF0YS5wcm9kdWN0U2V0dGluZ3NbYV0ucHJlQXV0b1BpaSE9PXByb2R1Y3RTZXR0aW5nc1thXS5wcmVBdXRvUGlpKXJldHVybiExO3JldHVybiEwfTt2YXIgYUk9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZXZlbnROYW1lPWI7dGhpcy5NPWM7dGhpcy5IPXt9O3RoaXMuaXNBYm9ydGVkPSExO3RoaXMudGFyZ2V0PWE7dGhpcy5tZXRhZGF0YT17fTtmb3IodmFyIGQ9Yy5ldmVudE1ldGFkYXRhfHx7fSxlPW0oT2JqZWN0LmtleXMoZCkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO1YodGhpcyxnLGRbZ10pfX0sUj1mdW5jdGlvbihhLGIpe3ZhciBjLGQ7cmV0dXJuKGM9YS5IW2JdKT09bnVsbD92b2lkIDA6KGQ9Yy5nZXRWYWx1ZSk9PW51bGw/dm9pZCAwOmQuY2FsbChjLFEoYSxILkoudGcpKX0sZXU9ZnVuY3Rpb24oYSl7cmV0dXJuIE9iamVjdC5rZXlzKGEuSCl9LFU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuSCxlO2M9PT12b2lkIDA/ZT12b2lkIDA6KFZIIT1udWxsfHwoVkg9bmV3IFRIKEtILE1IKSksZT1VSChWSCxiLGMpKTtkW2JdPWV9OwphSS5wcm90b3R5cGUubWVyZ2VIaXREYXRhRm9yS2V5PWZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlO2M9KGQ9dGhpcy5IW2FdKT09bnVsbD92b2lkIDA6KGU9ZC5LKT09bnVsbD92b2lkIDA6ZS5jYWxsKGQpO2lmKCFjKXJldHVybiBVKHRoaXMsYSxiKSwhMDtpZighQ2QoYykpcmV0dXJuITE7VSh0aGlzLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCxjLGIpKTtyZXR1cm4hMH07dmFyIGJJPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7Zm9yKHZhciBjPW0oT2JqZWN0LmtleXMoYS5IKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj12b2lkIDAsZz12b2lkIDAsaD12b2lkIDA7YltlXT0oZj1hLkhbZV0pPT1udWxsP3ZvaWQgMDooaD0oZz1mKS5LKT09bnVsbD92b2lkIDA6aC5jYWxsKGcpfXJldHVybiBifTsKYUkucHJvdG90eXBlLmNvcHlUb0hpdERhdGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU8odGhpcy5NLGEpO2Q9PT12b2lkIDAmJihkPWIpO2lmKHpiKGQpJiZjIT09dm9pZCAwKXRyeXtkPWMoZCl9Y2F0Y2goZSl7fWQhPT12b2lkIDAmJlUodGhpcyxhLGQpfTsKdmFyIFE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLm1ldGFkYXRhW2JdO2lmKGI9PT1ILkoudGcpe3ZhciBkO3JldHVybiBjPT1udWxsP3ZvaWQgMDooZD1jLkspPT1udWxsP3ZvaWQgMDpkLmNhbGwoYyl9dmFyIGU7cmV0dXJuIGM9PW51bGw/dm9pZCAwOihlPWMuZ2V0VmFsdWUpPT1udWxsP3ZvaWQgMDplLmNhbGwoYyxRKGEsSC5KLnRnKSl9LFY9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEubWV0YWRhdGEsZTtjPT09dm9pZCAwP2U9YzooV0ghPW51bGx8fChXSD1uZXcgVEgoUEgsUUgpKSxlPVVIKFdILGIsYykpO2RbYl09ZX0sY0k9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306Yjtmb3IodmFyIGM9bShPYmplY3Qua2V5cyhhLm1ldGFkYXRhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj12b2lkIDAsZz12b2lkIDAsaD12b2lkIDA7YltlXT0oZj1hLm1ldGFkYXRhW2VdKT09bnVsbD92b2lkIDA6KGg9KGc9ZikuSyk9PW51bGw/dm9pZCAwOgpoLmNhbGwoZyl9cmV0dXJuIGJ9LGRJPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0kSChhLnRhcmdldC5kZXN0aW5hdGlvbklkKTtyZXR1cm4gZCYmZFtiXSE9PXZvaWQgMD9kW2JdOmN9LFp1PWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW5ldyBhSSgoYj09bnVsbD92b2lkIDA6Yi50YXJnZXQpfHxhLnRhcmdldCwoYj09bnVsbD92b2lkIDA6Yi5ldmVudE5hbWUpfHxhLmV2ZW50TmFtZSwoYj09bnVsbD92b2lkIDA6Yi5NKXx8YS5NKSxkPWJJKGEpLGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7VShjLGcsZFtnXSl9Zm9yKHZhciBoPWNJKGEpLGw9bShPYmplY3Qua2V5cyhoKSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7VihjLHAsaFtwXSl9Yy5pc0Fib3J0ZWQ9YS5pc0Fib3J0ZWQ7cmV0dXJuIGN9LGVJPWZ1bmN0aW9uKGEpe3ZhciBiPWEuTSxjPWIuZXZlbnRJZCxkPWIucHJpb3JpdHlJZDsKcmV0dXJuIGQ/YysiXyIrZDpTdHJpbmcoYyl9O2FJLnByb3RvdHlwZS5hY2NlcHQ9ZnVuY3Rpb24oKXt2YXIgYT1vbShqbS5iYS5TaSx7fSksYj1lSSh0aGlzKSxjPXRoaXMudGFyZ2V0LmRlc3RpbmF0aW9uSWQ7YVtiXXx8KGFbYl09e30pO2FbYl1bY109dmsoKTt2YXIgZD1qbS5iYS5TaTtpZihrbShkKSl7dmFyIGU7KGU9bG0oZCkpPT1udWxsfHxlLm5vdGlmeSgpfX07YUkucHJvdG90eXBlLmNhbkJlQWNjZXB0ZWQ9ZnVuY3Rpb24oYSl7dmFyIGI9bm0oam0uYmEuU2kpO2lmKCFiKXJldHVybiEwO3ZhciBjPWJbZUkodGhpcyldO2lmKCFjKXJldHVybiEwO3ZhciBkPWNbYSE9bnVsbD9hOnRoaXMudGFyZ2V0LmRlc3RpbmF0aW9uSWRdO3JldHVybiBkPT09dm9pZCAwfHxkPT09dmsoKX07ZnVuY3Rpb24gZkkoYSl7cmV0dXJue2dldERlc3RpbmF0aW9uSWQ6ZnVuY3Rpb24oKXtyZXR1cm4gYS50YXJnZXQuZGVzdGluYXRpb25JZH0sZ2V0RXZlbnROYW1lOmZ1bmN0aW9uKCl7cmV0dXJuIGEuZXZlbnROYW1lfSxzZXRFdmVudE5hbWU6ZnVuY3Rpb24oYil7YS5ldmVudE5hbWU9Yn0sZ2V0SGl0RGF0YTpmdW5jdGlvbihiKXtyZXR1cm4gUihhLGIpfSxzZXRIaXREYXRhOmZ1bmN0aW9uKGIsYyl7VShhLGIsYyl9LHNldEhpdERhdGFJZk5vdERlZmluZWQ6ZnVuY3Rpb24oYixjKXtSKGEsYik9PT12b2lkIDAmJlUoYSxiLGMpfSxjb3B5VG9IaXREYXRhOmZ1bmN0aW9uKGIsYyl7YS5jb3B5VG9IaXREYXRhKGIsYyl9LGdldE1ldGFkYXRhOmZ1bmN0aW9uKGIpe3JldHVybiBRKGEsYil9LHNldE1ldGFkYXRhOmZ1bmN0aW9uKGIsYyl7VihhLGIsYyl9LGlzQWJvcnRlZDpmdW5jdGlvbigpe3JldHVybiBhLmlzQWJvcnRlZH0sYWJvcnQ6ZnVuY3Rpb24oKXthLmlzQWJvcnRlZD0hMH0sCmdldEZyb21FdmVudENvbnRleHQ6ZnVuY3Rpb24oYil7cmV0dXJuIE8oYS5NLGIpfSxyYjpmdW5jdGlvbigpe3JldHVybiBhfSxnZXRIaXRLZXlzOmZ1bmN0aW9uKCl7cmV0dXJuIGV1KGEpfSxnZXRNZXJnZWRWYWx1ZXM6ZnVuY3Rpb24oYil7cmV0dXJuIGEuTS5nZXRNZXJnZWRWYWx1ZXMoYiwzKX0sbWVyZ2VIaXREYXRhRm9yS2V5OmZ1bmN0aW9uKGIsYyl7cmV0dXJuIENkKGMpP2EubWVyZ2VIaXREYXRhRm9yS2V5KGIsYyk6ITF9LGFjY2VwdDpmdW5jdGlvbigpe2EuYWNjZXB0KCl9LGNhbkJlQWNjZXB0ZWQ6ZnVuY3Rpb24oYil7cmV0dXJuIGEuY2FuQmVBY2NlcHRlZChiKX19fTtmdW5jdGlvbiBnSShhLGIpe3ZhciBjO2lmKCFlaChhKXx8IWZoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiLCJPYmplY3R8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgZD1UZChiKXx8e30sZT1UZChhLHRoaXMuVCwxKS5yYigpLGY9ZS5NO2Qub21pdEV2ZW50Q29udGV4dCYmKGY9SkMobmV3IHlDKGUuTS5ldmVudElkLGUuTS5wcmlvcml0eUlkKSkpO3ZhciBnPW5ldyBhSShlLnRhcmdldCxlLmV2ZW50TmFtZSxmKTtpZighZC5vbWl0SGl0RGF0YSlmb3IodmFyIGg9YkkoZSksbD1tKE9iamVjdC5rZXlzKGgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtVKGcscCxoW3BdKX1pZihkLm9taXRNZXRhZGF0YSlnLm1ldGFkYXRhPXt9O2Vsc2UgZm9yKHZhciBxPWNJKGUpLHI9bShPYmplY3Qua2V5cyhxKSksdD1yLm5leHQoKTshdC5kb25lO3Q9CnIubmV4dCgpKXt2YXIgdT10LnZhbHVlO1YoZyx1LHFbdV0pfWcuaXNBYm9ydGVkPWUuaXNBYm9ydGVkO2M9VWQoZkkoZyksdGhpcy5ULDEpO3JldHVybiBjfWdJLlA9ImludGVybmFsLmNvcHlQcmVIaXQiO2Z1bmN0aW9uIGhJKGEsYil7dmFyIGM9bnVsbDtyZXR1cm4gVWQoYyx0aGlzLlQsMil9aEkucHVibGljTmFtZT0iY3JlYXRlQXJndW1lbnRzUXVldWUiO2Z1bmN0aW9uIGlJKGEpe3JldHVybiBVZChmdW5jdGlvbihjKXt2YXIgZD1TQSgpO2lmKHR5cGVvZiBjPT09ImZ1bmN0aW9uIilkKGZ1bmN0aW9uKCl7YyhmdW5jdGlvbihmLGcsaCl7dmFyIGw9ClNBKCksbj1sJiZsLmdldEJ5TmFtZSYmbC5nZXRCeU5hbWUoZik7cmV0dXJuKG5ldyBBLmdhcGx1Z2lucy5MaW5rZXIobikpLmRlY29yYXRlKGcsaCl9KX0pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShjKSl7dmFyIGU9U3RyaW5nKGNbMF0pLnNwbGl0KCIuIik7YltlLmxlbmd0aD09PTE/ZVswXTplWzFdXSYmZC5hcHBseShudWxsLGMpfWVsc2UgaWYoYz09PSJpc0xvYWRlZCIpcmV0dXJuISFkLmxvYWRlZH0sdGhpcy5ULDEpfWlJLlA9ImludGVybmFsLmNyZWF0ZUdhQ29tbWFuZFF1ZXVlIjtmdW5jdGlvbiBqSShhKXtyZXR1cm4gVWQoZnVuY3Rpb24oKXtpZigheWIoZS5wdXNoKSl0aHJvdyBFcnJvcigiT2JqZWN0IGF0ICIrYSsiIGluIHdpbmRvdyBpcyBub3QgYW4gYXJyYXkuIik7ZS5wdXNoLmFwcGx5KGUsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApKX0sdGhpcy5ULApCaChYRih0aGlzKS5QYigpKT8yOjEpfWpJLnB1YmxpY05hbWU9ImNyZWF0ZVF1ZXVlIjtmdW5jdGlvbiBrSShhLGIpe3ZhciBjPW51bGw7cmV0dXJuIGN9a0kuUD0iaW50ZXJuYWwuY3JlYXRlUmVnZXgiO2Z1bmN0aW9uIGxJKGEpe31sSS5QPSJpbnRlcm5hbC5kZWNsYXJlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBtSShhKXt2YXIgYj0iIjtyZXR1cm4gYn1tSS5QPSJpbnRlcm5hbC5kZWNvZGVVcmxIdG1sRW50aXRpZXMiO2Z1bmN0aW9uIG5JKGEsYixjKXt2YXIgZDtyZXR1cm4gZH1uSS5QPSJpbnRlcm5hbC5kZWNvcmF0ZVVybFdpdGhHYUNvb2tpZXMiO2Z1bmN0aW9uIG9JKCl7fW9JLlA9ImludGVybmFsLmRlZmVyQ3VzdG9tRXZlbnRzIjtmdW5jdGlvbiBwSShhLGIpe3RyeXtyZXR1cm4gYS5jbG9zZXN0KGIpfWNhdGNoKGMpe3JldHVybiBudWxsfX07ZnVuY3Rpb24gcUkoKXt2YXIgYT1BLnNjcmVlbjtyZXR1cm57d2lkdGg6YT9hLndpZHRoOjAsaGVpZ2h0OmE/YS5oZWlnaHQ6MH19CmZ1bmN0aW9uIHJJKGEpe2lmKEIuaGlkZGVuKXJldHVybiEwO3ZhciBiPWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYoYi50b3A9PT1iLmJvdHRvbXx8Yi5sZWZ0PT09Yi5yaWdodHx8IUEuZ2V0Q29tcHV0ZWRTdHlsZSlyZXR1cm4hMDt2YXIgYz1BLmdldENvbXB1dGVkU3R5bGUoYSxudWxsKTtpZihjLnZpc2liaWxpdHk9PT0iaGlkZGVuIilyZXR1cm4hMDtmb3IodmFyIGQ9YSxlPWM7ZDspe2lmKGUuZGlzcGxheT09PSJub25lIilyZXR1cm4hMDt2YXIgZj1lLm9wYWNpdHksZz1lLmZpbHRlcjtpZihnKXt2YXIgaD1nLmluZGV4T2YoIm9wYWNpdHkoIik7aD49MCYmKGc9Zy5zdWJzdHJpbmcoaCs4LGcuaW5kZXhPZigiKSIsaCkpLGcuY2hhckF0KGcubGVuZ3RoLTEpPT09IiUiJiYoZz1nLnN1YnN0cmluZygwLGcubGVuZ3RoLTEpKSxmPVN0cmluZyhNYXRoLm1pbihOdW1iZXIoZyksTnVtYmVyKGYpKSkpfWlmKGYhPT12b2lkIDAmJk51bWJlcihmKTw9MClyZXR1cm4hMDsoZD1kLnBhcmVudEVsZW1lbnQpJiYKKGU9QS5nZXRDb21wdXRlZFN0eWxlKGQsbnVsbCkpfXJldHVybiExfQp2YXIgSkk9ZnVuY3Rpb24oYSl7dmFyIGIsYz0oYj1hPT1udWxsP3ZvaWQgMDphLmluY2x1ZGVTZWxlY3RvcikhPW51bGw/YjohMCxkLGU9KGQ9YT09bnVsbD92b2lkIDA6YS5pbmNsdWRlVmlzaWJpbGl0eSkhPW51bGw/ZDohMCxmLGc9KGY9YT09bnVsbD92b2lkIDA6YS5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzKSE9bnVsbD9mOiExLGg9KGE9PW51bGw/dm9pZCAwOmEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMpfHxbXSxsPShhPT1udWxsP3ZvaWQgMDphLmZpZWxkRmlsdGVycyl8fHtlbWFpbDohMCxwaG9uZTohMSxhZGRyZXNzOiExfSxuPWFsKDYsZnVuY3Rpb24oKXtyZXR1cm57fX0pLHA9ekkoe2luY2x1ZGVTZWxlY3RvcjpjLGluY2x1ZGVWaXNpYmlsaXR5OmUsZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM6aCxmaWVsZEZpbHRlcnM6bH0pLHE9bltwXTtpZihxJiZOYigpLXEudGltZXN0YW1wPDIwMCl7dmFyIHI9cS5yZXN1bHQsdDsoci5lbGVtZW50cy5zb21lKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuZGl9KXx8CigodD1yLmdpKT09bnVsbD8wOnQuZGkpKSYmR3UoVC5XLnJqKTtyZXR1cm4gcn12YXIgdT1BSSgpLHY9dS5zdGF0dXMseD1bXSx5LHosQz1bXTtpZihNKDU2OCkpe3ZhciBEPUJJKGwpLEk9Q0kodS5lbGVtZW50cyxEKSxHPURJKEkpLE49RUkoRyxoKSxTPUZJKE4pO3k9Uy5maWx0ZXIoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5EYT09PUZELkJifSlbMF07Zm9yKHZhciBXPVtdLGVhPXtJZzowfTtlYS5JZzxELmxlbmd0aDtlYT17SWc6ZWEuSWd9LGVhLklnKyspe3ZhciBqYT1OLmZpbHRlcihmdW5jdGlvbihxYSl7cmV0dXJuIGZ1bmN0aW9uKGliKXtyZXR1cm4gaWIuRGE9PT1EW3FhLklnXX19KGVhKSk7amEubGVuZ3RoPjEwJiYodj0iMyIsamE9amEuc2xpY2UoMCwxMCkpO1c9Vy5jb25jYXQoamEpfU49VzshZyYmUyYmKE49Uyk7Zm9yKHZhciBmYT0wO2ZhPE4ubGVuZ3RoO2ZhKyspe3ZhciBzYT1OW2ZhXTtzYS5EYSE9PUZELktoJiZDLnB1c2goR0koc2EsYyxlKSl9fWVsc2V7aWYobC5lbWFpbCl7dmFyIGRhPQpISSh1LmVsZW1lbnRzKTt4PUVJKGRhLGgpO3k9SUkoeCk7ZGEubGVuZ3RoPjEwJiYodj0iMyIpfSFnJiZ5JiYoeD1beV0pO2Zvcih2YXIgbWE9MDttYTx4Lmxlbmd0aDttYSsrKUMucHVzaChHSSh4W21hXSxjLGUpKTtDPUMuc2xpY2UoMCwxMCl9eSYmKHo9R0koeSxjLGUpKTt2YXIgUGE9e2VsZW1lbnRzOkMsZ2k6eixzdGF0dXM6dn07bltwXT17dGltZXN0YW1wOk5iKCkscmVzdWx0OlBhfTt2YXIgRmE7KFBhLmVsZW1lbnRzLnNvbWUoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5kaX0pfHwoKEZhPVBhLmdpKT09bnVsbD8wOkZhLmRpKSkmJkd1KFQuVy5yaik7cmV0dXJuIFBhfSxEST1mdW5jdGlvbihhKXt2YXIgYj1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELktofSksYz1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELlhkfSk7aWYoYS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5jZX0pLmxlbmd0aD09PTAmJmMubGVuZ3RoPT09CjApZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0sZj1lLkNhLnNwbGl0KCIgIik7Zi5sZW5ndGg+MSYmYS5wdXNoKHtDYTpmWzBdLERhOkZELlhkLGVsZW1lbnQ6ZS5lbGVtZW50LE9jOmUuT2N9LHtDYTpmLnNsaWNlKDEpLmpvaW4oIiAiKSxEYTpGRC5jZSxlbGVtZW50OmUuZWxlbWVudCxPYzplLk9jfSl9Zm9yKHZhciBnLGg9MCxsLG49ZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5lZSYmdS5DYS5sZW5ndGg+PTMmJnUuQ2EubGVuZ3RoPD00fSxwPTA7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWFbcF07aWYobihxKSYmZyYmcS5lbGVtZW50LnBhcmVudEVsZW1lbnQ9PT1nJiZoPDMpe2lmKGgrPTEsbCs9cS5DYSxoPT09Myl7dmFyIHI9cC1oKzE7aWYobD1LSVtGRC5lZV0ubmEobCkpYVtyXS5DYT1sfX1lbHNlIGlmKGg9MCxsPSIiLGc9dm9pZCAwLG4ocSkpe2grKztsPXEuQ2E7dmFyIHQ9dm9pZCAwO2c9KHQ9cS5lbGVtZW50LnBhcmVudEVsZW1lbnQpIT1udWxsPwp0OnZvaWQgMH19cmV0dXJuIGEuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiFuKHUpfSl9LE9JPWZ1bmN0aW9uKGEsYil7aWYoYS52YWx1ZSYmTEkuaW5kZXhPZigoYS50eXBlfHwidGV4dCIpLnRvTG93ZXJDYXNlKCkpIT09LTEpe3ZhciBjPWEuYXV0b2NvbXBsZXRlO2lmKGMpZm9yKHZhciBkPWMuc3BsaXQoIiAiKSxlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPU1JKGEudmFsdWUsYixkW2VdKTtpZihmKXJldHVybiBmfXZhciBnLGg9W2EubmFtZSxhLmlkLChnPWEuYXJpYUxhYmVsKSE9bnVsbD9nOnZvaWQgMCxhLnBsYWNlaG9sZGVyXSxsPWEucGFyZW50RWxlbWVudDtsJiZsLnRhZ05hbWU9PT0iTEFCRUwiJiZoLnB1c2gobC5pbm5lclRleHQpO3ZhciBuPWEucHJldmlvdXNFbGVtZW50U2libGluZztuJiZuLnRhZ05hbWU9PT0iTEFCRUwiJiYhbi5odG1sRm9yJiZoLnB1c2gobi5pbm5lclRleHQpO2lmKGEuaWQpe3ZhciBwPVtdO3RyeXtwPWRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvckFsbCgnbGFiZWxbZm9yPSInKwphLmlkKyciXScpfWNhdGNoKEQpe31mb3IodmFyIHE9MDtxPHAubGVuZ3RoO3ErKyloLnB1c2gocFtxXS5pbm5lclRleHQpfWg9aC5maWx0ZXIoZnVuY3Rpb24oRCl7cmV0dXJuIEQmJkQudHJpbSgpfSk7Zm9yKHZhciByLHQ9MCx1PTA7dTxoLmxlbmd0aDt1Kyspe3ZhciB2PU5JKGEsYixoW3VdKTtpZih2KXt2YXIgeD12LHk9eC5DYSx6PXguRGEsQz14LlhzO0M+dCYmKHQ9QyxyPXtDYTp5LERhOnp9KX19cmV0dXJuIHJ9fSxOST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07aWYoS0lbZV0ubmUpe3ZhciBmPUtJW2VdLm5lLmV4ZWMoYy50cmltKCkpO2lmKGYpe3ZhciBnPWEsaD1bXSxsPWcudmFsdWUudHJpbSgpO2wmJmgucHVzaChsKTtpZihnLnRhZ05hbWU9PT0iU0VMRUNUIil0cnl7dmFyIG49Zy5xdWVyeVNlbGVjdG9yKCdbdmFsdWU9IicrZy52YWx1ZSsnIl0nKSxwPW4mJm4uaW5uZXJUZXh0LnRyaW0oKTtwJiZoLnB1c2gocCl9Y2F0Y2godSl7fWZvcih2YXIgcT0KaCxyPXZvaWQgMCx0PTA7dDxxLmxlbmd0aCYmIXI7dCsrKXI9S0lbZV0ubmEocVt0XSk7aWYocilyZXR1cm57RGE6ZSxDYTpyLFhzOmZbMF0ubGVuZ3RoL2MudHJpbSgpLmxlbmd0aH19fX19LE1JPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTtpZihLSVtlXS5hdXRvY29tcGxldGUmJktJW2VdLmF1dG9jb21wbGV0ZS5pbmRleE9mKGMpPj0wKXt2YXIgZj1LSVtlXS5uYShhLnRyaW0oKSk7aWYoZilyZXR1cm57RGE6ZSxDYTpmfX19fSxCST1mdW5jdGlvbihhKXt2YXIgYj1bXTthLmVtYWlsJiZiLnB1c2goRkQuQmIpO2EucGhvbmUmJmIucHVzaChGRC5lZSk7YS5hZGRyZXNzJiZiLnB1c2goRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQuS2gpO3JldHVybiBifSxDST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF0sZj1lLmVsZW1lbnQsZz1lLk9jLGg7YTp7dmFyIGw9ZixuPWIsCnA9bC5pbm5lckhUTUw7UEkuaW5kZXhPZihsLnRhZ05hbWUpPj0wJiYocD1sLnZhbHVlfHxwKTtpZihwKXt2YXIgcTtiOntmb3IodmFyIHI9cCx0PW4sdT0wO3U8dC5sZW5ndGg7dSsrKXt2YXIgdj10W3VdO2lmKCFLSVt2XS5tZSl7dmFyIHg9S0lbdl0ubmEoci50cmltKCkpO2lmKHgpe3E9e0RhOnYsQ2E6eH07YnJlYWsgYn19fXE9dm9pZCAwfWlmKHEpe2g9cTticmVhayBhfWlmKFBJLmluZGV4T2YobC50YWdOYW1lKSE9PS0xKXtoPU9JKGwsbik7YnJlYWsgYX19aD12b2lkIDB9dmFyIHk9aDtpZih5KXt2YXIgej15O2MucHVzaCh7Q2E6ei5DYSxEYTp6LkRhLGVsZW1lbnQ6ZixPYzpnfSl9fXJldHVybiBjfSxGST1mdW5jdGlvbihhKXt2YXIgYj1bXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIGI7dmFyIGM9e30sZDtmb3IoZCBpbiBGRClpZihjPXtWZzpjLlZnfSxjLlZnPWQsRkQuaGFzT3duUHJvcGVydHkoYy5WZykpe3ZhciBlPWEuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmdW5jdGlvbihnKXtyZXR1cm4gZy5EYT09PQpGRFtmLlZnXX19KGMpKTtlLmxlbmd0aCE9PTAmJihGRFtjLlZnXT09PUZELkJiJiYoZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiFSSS50ZXN0KGYuQ2EpfSksZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiBmLmVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpPT09IklOUFVUIn0pLGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4hckkoZi5lbGVtZW50KX0pKSxiLnB1c2goZVswXSkpfXJldHVybiBifSxHST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5lbGVtZW50LGU9YS5PYyxmPXtDYTphLkNhLHR5cGU6YS5EYSx0YWdOYW1lOmQudGFnTmFtZX07aWYoYil7dmFyIGcsaD1TSShkKTtpZihnPShlP2UrInwiK2g6aCkuc2xpY2UoMCxUSSkpZi5xdWVyeVNlbGVjdG9yPWd9YyYmKGYuaXNWaXNpYmxlPSFySShkKSk7ZSYmKGYuZGk9ITApO3JldHVybiBmfSx6ST1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtiPWEuaW5jbHVkZVNlbGVjdG9yO2M9YS5pbmNsdWRlVmlzaWJpbGl0eTtkPWEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM7CmU9YS5maWVsZEZpbHRlcnM7dmFyIGY9ISFiKyIuIishIWM7ZC5sZW5ndGgmJihmKz0iLiIrZC5qb2luKCIuIikpO3JldHVybiBmKz0iLiIrZS5lbWFpbCsiLiIrZS5waG9uZSsiLiIrZS5hZGRyZXNzfSxJST1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCE9PTApe3ZhciBiO2I9UUkoYSxmdW5jdGlvbihjKXtyZXR1cm4hUkkudGVzdChjLkNhKX0pO2I9UUkoYixmdW5jdGlvbihjKXtyZXR1cm4gYy5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCJ9KTtiPVFJKGIsZnVuY3Rpb24oYyl7cmV0dXJuIXJJKGMuZWxlbWVudCl9KTtyZXR1cm4gYlswXX19LEVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyl7Zm9yKHZhciBlPSEwLGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXTtpZihnJiZwSShhW2RdLmVsZW1lbnQsZykpe2U9ITE7YnJlYWt9fWFbZF0uRGE9PT1GRC5CYiYmTSg2MDIpJiYoUkkudGVzdChhW2RdLkNhKXx8YVtkXS5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PQoiQSImJmFbZF0uZWxlbWVudC5oYXNBdHRyaWJ1dGUoImhyZWYiKSYmYVtkXS5lbGVtZW50LmdldEF0dHJpYnV0ZSgiaHJlZiIpLmluZGV4T2YoIm1haWx0bzoiKSE9PS0xP2U9ITE6YVtkXS5lbGVtZW50LmNsb3Nlc3QoImZvb3RlciIpIT09bnVsbCYmKGU9ITEpKTtlJiZjLnB1c2goYVtkXSl9cmV0dXJuIGN9LFFJPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg8PTEpcmV0dXJuIGE7dmFyIGM9YS5maWx0ZXIoYik7cmV0dXJuIGMubGVuZ3RoPT09MD9hOmN9LFNJPWZ1bmN0aW9uKGEpe2lmKGE9PT1CLmJvZHkpcmV0dXJuImJvZHkiO2lmKGEuaWQpcmV0dXJuIiMiK2EuaWQ7dmFyIGI9YS5wYXJlbnRFbGVtZW50O2lmKGIpe3ZhciBjPVNJKGIpLGQ9VUkoYSxiKSxlPVZJKGEpKyI6bnRoLWNoaWxkKCIrZCsiKSI7cmV0dXJuIGM/YysiPiIrZTplfXZhciBmPWEucGFyZW50Tm9kZTtpZihmIGluc3RhbmNlb2YgU2hhZG93Um9vdCl7dmFyIGc9VUkoYSxmKTtyZXR1cm4gVkkoYSkrIjpudGgtY2hpbGQoIisKZysiKSJ9cmV0dXJuIGEudGFnTmFtZT9hLnRhZ05hbWUudG9Mb3dlckNhc2UoKToiIn0sVkk9ZnVuY3Rpb24oYSl7aWYoYS5jbGFzc0xpc3QmJmEuY2xhc3NMaXN0Lmxlbmd0aD4wKXt2YXIgYj1BcnJheS5mcm9tKGEuY2xhc3NMaXN0LGZ1bmN0aW9uKGMpe3JldHVybiBDU1MuZXNjYXBlKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjLmxlbmd0aD4wfSk7aWYoYi5sZW5ndGg+MClyZXR1cm4iLiIrYi5qb2luKCIuIil9cmV0dXJuIiJ9LFVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWIuY2hpbGRyZW4sZD0wO2Q8Yy5sZW5ndGg7ZCsrKWlmKGNbZF09PT1hKXJldHVybiBkKzE7cmV0dXJuIDF9LEhJPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1kLmVsZW1lbnQsZj1kLk9jLGc9ZS50ZXh0Q29udGVudDtlLnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCImJmUudmFsdWUmJihnPWUudmFsdWUpO2lmKGcpe3ZhciBoPQpnLm1hdGNoKEtEKTtpZihoKXt2YXIgbD1oWzBdO0xEKGwpfHxiLnB1c2goe2VsZW1lbnQ6ZSxDYTpsLERhOkZELkJiLE9jOmZ9KX19fXJldHVybiBifSxBST1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Qi5ib2R5O2lmKCFiKXJldHVybntlbGVtZW50czphLHN0YXR1czoiNCJ9O3ZhciBjPVdJKGIsMCwiIixhKTtyZXR1cm57ZWxlbWVudHM6YSxzdGF0dXM6Y319LFdJPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSxmPWUubGVuZ3RoPjFFND8iMiI6IjEiLGc9MDtnPE1hdGgubWluKGUubGVuZ3RoLDFFNCk7ZysrKXt2YXIgaD1lW2ddO2lmKCEoWEkuaW5kZXhPZihoLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApJiZoLmNoaWxkcmVuIGluc3RhbmNlb2YgSFRNTENvbGxlY3Rpb24pe3ZhciBsPSExO2lmKE0oNTgyKSYmaC5zaGFkb3dSb290JiZiPDEpe3ZhciBuPVNJKGgpO1dJKGguc2hhZG93Um9vdCxiKzEsYz9jKyJ8IituOm4sZCk9PT0iMiImJgooZj0iMiIpO2w9ITB9dmFyIHA9ITE7aWYoIWwpZm9yKHZhciBxPTA7cTxNYXRoLm1pbihoLmNoaWxkRWxlbWVudENvdW50LDFFNCk7cSsrKWlmKCEoWUkuaW5kZXhPZihoLmNoaWxkcmVuW3FdLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApKXtwPSEwO2JyZWFrfSghcCYmIWx8fE0oNTY4KSYmUEkuaW5kZXhPZihoLnRhZ05hbWUpIT09LTEpJiZkLnB1c2goe2VsZW1lbnQ6aCxPYzpiPjA/Yzp2b2lkIDB9KX19cmV0dXJuIGZ9LFJJPS9zdXBwb3J0fG5vcmVwbHkvaSxYST0iU0NSSVBUIFNUWUxFIElNRyBTVkcgUEFUSCBCUiBOT1NDUklQVCBURVhUQVJFQSIuc3BsaXQoIiAiKSxZST1bIkJSIl0sVEk9TmYoNzAsNTApLFBJPVsiSU5QVVQiLCJTRUxFQ1QiXSxMST0idGV4dCB0ZWwgc2VhcmNoIG51bWJlciBoaWRkZW4gZW1haWwgc2VsZWN0LW9uZSIuc3BsaXQoIiAiKSxaST1SZWdFeHAoInBob25lfG1vYmlsZXxjb250YWN0Lj9udW1iZXJ8dGVsZWZvbm51bW1lcnx0ZWxlZm9ub3x0ZWxcdTAwZTlmb25vfHRlbGZpeGV8XHU5NmZiXHU4YTcxfHRlbGVmb25lfHRlbGVtb3ZlbHxcdTA0NDJcdTA0MzVcdTA0M2JcdTA0MzVcdTA0NDRcdTA0M2VcdTA0M2R8XHUwOTJlXHUwOTRiXHUwOTJjXHUwOTNlXHUwOTA3XHUwOTMyfFx1NzUzNVx1OGJkZHxcdTYyNGJcdTY3M2FcdTUzZjd8XHUwZDJlXHUwZDRhXHUwZDJjXHUwZDQ4XHUwZDMyXHUwZDRkXHUyMDBkfChefFstX10pdGVsWy1fXT8oXFxkKykqKFxcWy4qXFxdKSokfCg/Olx1YzgwNFx1ZDY1NHxcdWQ1NzhcdWI0ZGNcdWQzZjB8XHVkNzM0XHViMzAwXHVkM2YwfFx1ZDczNFx1YjMwMFx1YzgwNFx1ZDY1NCkoPzouP1x1YmM4OFx1ZDYzOCk/fChcXGJ8X3xcXCopdGVsZWZvbihcXGJ8X3xcXCopfHRlbGVwb258cG9uc2VsfChub21vcnxub1xcLj8pLj8oaHB8aGFuZHBob25lKSIsCiJpIiksJEk9UmVnRXhwKCJebmFtZXxmdWxsLj9uYW1lfHlvdXIuP25hbWV8Y3VzdG9tZXIuP25hbWV8YmlsbC4/bmFtZXxzaGlwLj9uYW1lfG5hbWUuKmZpcnN0LipsYXN0fGZpcnN0YW5kbGFzdG5hbWV8Y29udGFjdC4/KG5hbWV8cGVyc29uKXxub21icmUuKnkuKmFwZWxsaWRvc3xebm9tKD8hW2EtekEtWl0pfFx1MzA0YVx1NTQwZFx1NTI0ZHxcdTZjMGZcdTU0MGR8Xm5vbWV8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2NDZcdTA2MjdcdTA2NDUuKlx1MDYyZVx1MDYyN1x1MDY0Nlx1MDY0OFx1MDYyN1x1MDYyZlx1MDZhZlx1MDZjY3xcdTU5ZDNcXHMqXHU1NDBkfFx1MDQzYVx1MDQzZVx1MDQzZFx1MDQ0Mlx1MDQzMFx1MDQzYVx1MDQ0Mlx1MDQzZFx1MDQzZVx1MDQzNS4/XHUwNDNiXHUwNDM4XHUwNDQ2XHUwNDNlfChcXGJ8X3xcXCopYWRbXHUwMTMxXT8gc295YWRbXHUwMTMxXT8oXFxifF98XFwqKXxcdWMxMzFcdWJhODV8bmFtYS4/KGxlbmdrYXB8cGVuZXJpbWF8a2FtdSkiLAoiaSIpLGFKPVJlZ0V4cCgiZmlyc3QuKm5hbWV8aW5pdGlhbHN8Zm5hbWV8Zmlyc3QkfGdpdmVuLipuYW1lfHZvcm5hbWV8bm9tYnJlfGZvcmVuYW1lfHByXHUwMGU5bm9tfHByZW5vbXxcdTU0MGR8bm9tZXxcdTA0MThcdTA0M2NcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1fFx1Yzc3NFx1Yjk4NHxcdTBkMmFcdTBkNDdcdTBkMzBcdTBkNGR8KFxcYnxffFxcKikoaXNpbXxhZHxhZChpfFx1MDEzMXxpbml6fFx1MDEzMW5cdTAxMzF6KT8pKFxcYnxffFxcKil8XHUwOTI4XHUwOTNlXHUwOTJlfG5hbWEgZGVwYW4iLCJpIiksYko9UmVnRXhwKCJsYXN0LipuYW1lfGxuYW1lfHN1cm5hbWUoPyFcXGQpfGxhc3QkfHNlY29uZG5hbWV8ZmFtaWx5LipuYW1lfG5hY2huYW1lfGFwZWxsaWRvcz98ZmFtaWxsZXxebm9tKD8hW2EtekEtWl0pfGNvZ25vbWV8XHU1OWQzfGFwZWxpZG9zfHN1cmVuYW1lfHNvYnJlbm9tZXxcdTA0MjRcdTA0MzBcdTA0M2NcdTA0MzhcdTA0M2JcdTA0MzhcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2MmVcdTA2MjdcdTA2NDZcdTA2NDhcdTA2MjdcdTA2MmZcdTA2YWZcdTA2Y2N8XHUwOTA5XHUwOTJhXHUwOTI4XHUwOTNlXHUwOTJlfFx1MGQyZVx1MGQzMVx1MGQ0MVx1MGQyYVx1MGQ0N1x1MGQzMFx1MGQ0ZHwoXFxifF98XFwqKShzb3lpc2ltfHNveWFkKGl8XHUwMTMxfGluaXp8XHUwMTMxblx1MDEzMXopPykoXFxifF98XFwqKXxcXGJcdWMxMzEoPzpbXlx1YmE4NV18XFxiKXxuYW1hIGJlbGFrYW5nIiwKImkiKSxjSj1SZWdFeHAoImNvdW50cnl8Y291bnRyaWVzfHBhXHUwMGVkc3xwYWlzfChcXGJ8XylsYW5kKFxcYnxfKSg/IS4qKG1hcmsuKikpfChefFteKFx1NTE2NXxcdTUxZmEpXSlcdTU2ZmR8XHU1NmZkXHU1YmI2fFx1YWQ2ZFx1YWMwMHxcdWIwOThcdWI3N2N8KFxcYnxfKShcdTAwZmNsa2V8dWxjZXx1bGtlKShcXGJ8Xyl8XHUwNmE5XHUwNjM0XHUwNjQ4XHUwNjMxfG5lZ2FyYSIsImkiKSxkSj1SZWdFeHAoIihefFteLl0pemlwfHBvc3RhbHxwb3N0Lipjb2RlfHBjb2RlfHBpbi4/Y29kZXxwb3N0bGVpdHphaGx8XFxiY3BcXGJ8XFxiY2RwXFxifFxcYmNhcFxcYnxcdTkwZjVcdTRmYmZcdTc1NmFcdTUzZjd8Y29kaWdvfGNvZHBvc3xcXGJjZXBcXGJ8XHUwNDFmXHUwNDNlXHUwNDQ3XHUwNDQyXHUwNDNlXHUwNDMyXHUwNDRiXHUwNDM5Lj9cdTA0MThcdTA0M2RcdTA0MzRcdTA0MzVcdTA0M2FcdTA0NDF8XHUwOTJhXHUwOTNmXHUwOTI4Lj9cdTA5MTVcdTA5NGJcdTA5MjF8XHUwZDJhXHUwZDNmXHUwZDI4XHUwZDRkXHUyMDBkXHUwZDE1XHUwZDRiXHUwZDIxXHUwZDRkfFx1OTBhZVx1NjUzZlx1N2YxNlx1NzgwMXxcdTkwYWVcdTdmMTZ8XHU5MGY1XHU5MDVlXHU1MzQwXHU4NjVmfChcXGJ8Xylwb3N0YSBrb2R1KFxcYnxfKXxcdWM2YjBcdWQzYjguP1x1YmM4OFx1ZDYzOHxrb2RlLj9wb3MiLAoiaSIpLGVKPXt9LEtJPShlSltGRC5CYl09e21lOiExLG5hOk1EfSxlSltGRC5lZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbInRlbCIsInRlbC1uYXRpb25hbCIsInRlbC1sb2NhbCJdLG5lOlpJLG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCEwKX19LGVKW0ZELktoXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsibmFtZSIsImNjLW5hbWUiXSxuZTokSSxuYTpORH0sZUpbRkQuWGRdPXttZTohMCxhdXRvY29tcGxldGU6WyJnaXZlbi1uYW1lIiwiY2MtZ2l2ZW4tbmFtZSJdLG5lOmFKLG5hOk5EfSxlSltGRC5jZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbImZhbWlseS1uYW1lIiwiY2MtZmFtaWx5LW5hbWUiXSxuZTpiSixuYTpORH0sZUpbRkQueGZdPXttZTohMCxhdXRvY29tcGxldGU6WyJjb3VudHJ5IiwiY291bnRyeS1uYW1lIl0sbmU6Y0osbmE6TkR9LGVKW0ZELnFnXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsicG9zdGFsLWNvZGUiXSxuZTpkSixuYTpJRH0sZUopO2Z1bmN0aW9uIGZKKGEpe3ZhciBiO0wodGhpcywiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iKTt2YXIgYz1UZChhKXx8e30sZD1KSSh7aW5jbHVkZVNlbGVjdG9yOiEhYy5pbmNsdWRlU2VsZWN0b3IsaW5jbHVkZVZpc2liaWxpdHk6ISFjLmluY2x1ZGVWaXNpYmlsaXR5LGV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzOmMuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMsZmllbGRGaWx0ZXJzOmMuZmllbGRGaWx0ZXJzLHNlbGVjdE11bHRpcGxlRWxlbWVudHM6ISFjLnNlbGVjdE11bHRpcGxlRWxlbWVudHN9KTtiPW5ldyBrYjt2YXIgZT1uZXcgR2Q7Yi5zZXQoImVsZW1lbnRzIixlKTtmb3IodmFyIGY9ZC5lbGVtZW50cyxnPTA7ZzxmLmxlbmd0aDtnKyspZS5wdXNoKGdKKGZbZ10pKTtkLmdpIT09dm9pZCAwJiZiLnNldCgicHJlZmVycmVkRW1haWxFbGVtZW50IiwKZ0ooZC5naSkpO2Iuc2V0KCJzdGF0dXMiLGQuc3RhdHVzKTtpZihjLnJlYWRGcm9tRGF0YUxheWVyKXtoSihlLGMpO3ZhciBoPVBEKCksbD1oLnN0O2Iuc2V0KCJkYXRhTGF5ZXJTZWFyY2hUaW1lIixoLnZ0KTtiLnNldCgiZGF0YUxheWVyU2VhcmNoQ291bnQiLGwpfXJldHVybiBifQp2YXIgaUo9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgRkQuQmI6cmV0dXJuImVtYWlsIjtjYXNlIEZELmVlOnJldHVybiJwaG9uZV9udW1iZXIiO2Nhc2UgRkQuWGQ6cmV0dXJuImZpcnN0X25hbWUiO2Nhc2UgRkQuY2U6cmV0dXJuImxhc3RfbmFtZSI7Y2FzZSBGRC50ajpyZXR1cm4ic3RyZWV0IjtjYXNlIEZELmxpOnJldHVybiJjaXR5IjtjYXNlIEZELmpqOnJldHVybiJyZWdpb24iO2Nhc2UgRkQucWc6cmV0dXJuInBvc3RhbF9jb2RlIjtjYXNlIEZELnhmOnJldHVybiJjb3VudHJ5In19LGpKPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYixjPWlKKGEuRGEpO2MhPT12b2lkIDAmJmIuc2V0KCJ0eXBlIixjKTtiLnNldCgidXNlckRhdGEiLGEuQ2EpO2Iuc2V0KCJ0YWdOYW1lIiwiRExZUiIpO3JldHVybiBifSxoSj1mdW5jdGlvbihhLGIpe3ZhciBjPVFEKCk7aWYoTSg1NjgpKWZvcih2YXIgZD1uZXcgU2V0KGEuaGMoKS5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHIuZ2V0KCJ0eXBlIil9KSksCmU9bShjKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9bShmLnZhbHVlKSxoPWcubmV4dCgpLnZhbHVlLGw9Zy5uZXh0KCkudmFsdWUsbj1oLHA9bDtpZihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHMpYS5wdXNoKGpKKHApKTtlbHNle3ZhciBxPWlKKG4pO3EmJiFkLmhhcyhxKSYmYS5wdXNoKGpKKHApKX19ZWxzZSBjLmhhcyhGRC5CYikmJihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHN8fGEubGVuZ3RoKCk9PT0wKSYmYS5wdXNoKGpKKGMuZ2V0KEZELkJiKSkpfSxnSj1mdW5jdGlvbihhKXt2YXIgYj1uZXcga2I7Yi5zZXQoInVzZXJEYXRhIixhLkNhKTtiLnNldCgidGFnTmFtZSIsYS50YWdOYW1lKTthLnF1ZXJ5U2VsZWN0b3IhPT12b2lkIDAmJmIuc2V0KCJxdWVyeVNlbGVjdG9yIixhLnF1ZXJ5U2VsZWN0b3IpO2EuaXNWaXNpYmxlIT09dm9pZCAwJiZiLnNldCgiaXNWaXNpYmxlIixhLmlzVmlzaWJsZSk7aWYoTSg1NjgpKXt2YXIgYz1pSihhLnR5cGUpO2MhPT0Kdm9pZCAwJiZiLnNldCgidHlwZSIsYyl9ZWxzZSBzd2l0Y2goYS50eXBlKXtjYXNlIEZELkJiOmIuc2V0KCJ0eXBlIiwiZW1haWwiKX1yZXR1cm4gYn07ZkouUD0iaW50ZXJuYWwuZGV0ZWN0VXNlclByb3ZpZGVkRGF0YSI7CmZ1bmN0aW9uIG1KKGEsYil7cmV0dXJuIGZ9bUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayI7CmZ1bmN0aW9uIHRKKGEsYil7cmV0dXJuIHB9dEouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FbGVtZW50VmlzaWJpbGl0eSI7ZnVuY3Rpb24gdUooKXt9dUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25FcnJvciI7CmZ1bmN0aW9uIEFKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZH1BSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1JbnRlcmFjdGlvbiI7CmZ1bmN0aW9uIEZKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZn1GSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1TdWJtaXQiOwpmdW5jdGlvbiBLSigpe3ZhciBhPXRoaXM7fUtKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uR2FTZW5kIjsKdmFyIE1KPWZ1bmN0aW9uKGEsYixjLGQpe2M9Yz09PXZvaWQgMD97fTpjO2Q9ZD09PXZvaWQgMD9bXTpkO3ZhciBlPSIiK2I7aWYoY1tlXSljW2VdLnB1c2goYSk7ZWxzZXt2YXIgZj1bYV07Y1tlXT1mO3ZhciBnPUxKKCJndG0uaGlzdG9yeUNoYW5nZS12MiIpLGg9LTE7ZC5wdXNoKGZ1bmN0aW9uKGwpe2g+PTAmJkEuY2xlYXJUaW1lb3V0KGgpO2I/aD1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtnKGwsZik7aD0tMX0sYik6ZyhsLGYpfSl9fSxMSj1mdW5jdGlvbihhKXt2YXIgYj1BLmxvY2F0aW9uLmhyZWYsYz17c291cmNlOm51bGwsc3RhdGU6QS5oaXN0b3J5LnN0YXRlfHxudWxsLHVybDpPaihSaihiKSksa2I6TGooUmooYiksImZyYWdtZW50Iil9O3JldHVybiBmdW5jdGlvbihkLGUpe3ZhciBmPWMsZz17fTtnW2Yuc291cmNlXT0hMDtnW2Quc291cmNlXT0hMDtpZighZy5wb3BzdGF0ZXx8IWcuaGFzaGNoYW5nZXx8Zi5rYiE9PWQua2Ipe3ZhciBoPXtldmVudDphLCJndG0uaGlzdG9yeUNoYW5nZVNvdXJjZSI6ZC5zb3VyY2UsCiJndG0ub2xkVXJsRnJhZ21lbnQiOmMua2IsImd0bS5uZXdVcmxGcmFnbWVudCI6ZC5rYiwiZ3RtLm9sZEhpc3RvcnlTdGF0ZSI6Yy5zdGF0ZSwiZ3RtLm5ld0hpc3RvcnlTdGF0ZSI6ZC5zdGF0ZSwiZ3RtLm9sZFVybCI6Yy51cmwsImd0bS5uZXdVcmwiOmQudXJsfTtlJiYoaFsiZ3RtLnRyaWdnZXJzIl09ZS5qb2luKCIsIikpO2M9ZDt1RShoKX19fSxOSj1mdW5jdGlvbihhLGIpe3ZhciBjPUEuaGlzdG9yeSxkPWNbYV07aWYoeWIoZCkpdHJ5e2NbYV09ZnVuY3Rpb24oZSxmLGcpe2QuYXBwbHkoYyxbXS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSk7dmFyIGg9QS5sb2NhdGlvbi5ocmVmO2Ioe3NvdXJjZTphLHN0YXRlOmUsdXJsOk9qKFJqKGgpKSxrYjpMaihSaihoKSwiZnJhZ21lbnQiKX0pfX1jYXRjaChlKXt9fSxQSj1mdW5jdGlvbihhKXtBLmFkZEV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIixmdW5jdGlvbihiKXt2YXIgYz1PSihiKTthKHtzb3VyY2U6InBvcHN0YXRlIixzdGF0ZTpiLnN0YXRlLAp1cmw6T2ooUmooYykpLGtiOkxqKFJqKGMpLCJmcmFnbWVudCIpfSl9KX0sUUo9ZnVuY3Rpb24oYSl7QS5hZGRFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixmdW5jdGlvbihiKXt2YXIgYz1PSihiKTthKHtzb3VyY2U6Imhhc2hjaGFuZ2UiLHN0YXRlOm51bGwsdXJsOk9qKFJqKGMpKSxrYjpMaihSaihjKSwiZnJhZ21lbnQiKX0pfSl9LE9KPWZ1bmN0aW9uKGEpe3ZhciBiLGM7cmV0dXJuKChiPWEudGFyZ2V0KT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaHJlZil8fEEubG9jYXRpb24uaHJlZn07CmZ1bmN0aW9uIFJKKGEsYil7dmFyIGM9dGhpcztpZighZmgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdHx1bmRlZmluZWQiLCJhbnkiXSxhcmd1bWVudHMpO1RGKFtmdW5jdGlvbigpe0woYywiZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cyIpfV0pO3ZhciBkPWEmJmEuZ2V0KCJ1c2VWMkV2ZW50TmFtZSIpPyJlaGwiOiJobCIsZT1OdW1iZXIoYSYmYS5nZXQoImludGVydmFsIikpO2U+MCYmaXNGaW5pdGUoZSl8fChlPTApO3ZhciBmO2lmKCEkRihkLCJpbml0IiwhMSkpe3ZhciBnPXt9LGg9W10sbDtkPT09ImVobCI/KGw9ZnVuY3Rpb24ocCl7Zm9yKHZhciBxPTA7cTxoLmxlbmd0aDtxKyspaFtxXShwKX0sZj1aRihiKSxNSihmLGUsZyxoKSxhRyhkLCJyZWciLGZ1bmN0aW9uKHAscSl7TUoocCxxLGcsaCl9KSk6bD1MSigiZ3RtLmhpc3RvcnlDaGFuZ2UiKTsKUUoobCk7UEoobCk7TkooInB1c2hTdGF0ZSIsbCk7TkooInJlcGxhY2VTdGF0ZSIsbCk7YUcoZCwiaW5pdCIsITApfWVsc2UgaWYoZD09PSJlaGwiKXt2YXIgbj0kRihkLCJyZWciKTtuJiYoZj1aRihiKSxuKGYsZSkpfWQ9PT0iaGwiJiYoZj12b2lkIDApO3JldHVybiBmfVJKLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uSGlzdG9yeUNoYW5nZSI7dmFyIFNKPVsiaHR0cDovLyIsImh0dHBzOi8vIiwiamF2YXNjcmlwdDoiLCJmaWxlOi8vIl07CmZ1bmN0aW9uIFdKKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gaH1XSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayI7CmZ1bmN0aW9uIGdLKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZ31nSy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPblNjcm9sbCI7ZnVuY3Rpb24gaEsoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYS5saW1pdCYmYS5naz49YS5saW1pdClhLmFpJiZBLmNsZWFySW50ZXJ2YWwoYS5haSk7ZWxzZXthLmdrKys7dmFyIGI9TmIoKTt1RSh7ZXZlbnQ6YS5ldmVudE5hbWUsImd0bS50aW1lcklkIjphLmFpLCJndG0udGltZXJFdmVudE51bWJlciI6YS5naywiZ3RtLnRpbWVySW50ZXJ2YWwiOmEuaW50ZXJ2YWwsImd0bS50aW1lckxpbWl0IjphLmxpbWl0LCJndG0udGltZXJTdGFydFRpbWUiOmEuTW8sImd0bS50aW1lckN1cnJlbnRUaW1lIjpiLCJndG0udGltZXJFbGFwc2VkVGltZSI6Yi1hLk1vLCJndG0udHJpZ2dlcnMiOmEuTHR9KX19fQpmdW5jdGlvbiBpSyhhLGIpewpyZXR1cm4gZn1pSy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPblRpbWVyIjt2YXIgQWM9QWEoWyJkYXRhLWd0bS15dC1pbnNwZWN0ZWQtIl0pLGtLPVsid3d3LnlvdXR1YmUuY29tIiwid3d3LnlvdXR1YmUtbm9jb29raWUuY29tIl0sbEs7CmZ1bmN0aW9uIHZLKGEsYil7dmFyIGM9dGhpcztyZXR1cm4gZX12Sy5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbllvdVR1YmVBY3Rpdml0eSI7ZnVuY3Rpb24gd0soYSxiKXtpZighbGgoYSl8fCFmaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGM9Yj9UZChiKTp7fTtjLnJlZ2V4Q2FjaGU9YWwoMyxmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwfSk7cmV0dXJuIEdoKGEsYyl9d0suUD0iaW50ZXJuYWwuZXZhbHVhdGVCb29sZWFuRXhwcmVzc2lvbiI7ZnVuY3Rpb24geEsoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9eEsuUD0iaW50ZXJuYWwuZXZhbHVhdGVNYXRjaGluZ1J1bGVzIjt2YXIgeUs9bmV3IE1hcChbWyJhdyIsNF1dKTtmdW5jdGlvbiB6SyhhKXt2YXIgYj12clthXSxjPXlLLmdldChhKTtyZXR1cm4gYz8od3EoYixjKXx8W10pLnNvbWUoZnVuY3Rpb24oZCl7cmV0dXJuIGQubT09PSIwInx8ZC5tPT09dm9pZCAwfSk6ITF9CmZ1bmN0aW9uIEFLKGEsYil7aWYoTSg0OTUpKXtmb3IodmFyIGM9bmV3IE1hcCxkPW0oeUspLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1tKGUudmFsdWUpLGc9Zi5uZXh0KCkudmFsdWUsaD1mLm5leHQoKS52YWx1ZSxsPWcsbj1hW2xdLHA9QXJyYXkuaXNBcnJheShuKT9uWzBdOm47aWYocCE9PXZvaWQgMCl7dmFyIHE9e30scj0ocS5rPXAscS5pPVN0cmluZyhNYXRoLmZsb29yKERhdGUubm93KCkvMUUzKSkscS5iPVtdLHEubT0iMSIscSksdD1hcShyLGgpO3QmJih6SyhsKXx8Yy5zZXQobCx0KSl9fWlmKGMuc2l6ZSl7dmFyIHUsdj1bXSx4PWIucGF0aHx8Ii8iO3YucHVzaChlbmNvZGVVUklDb21wb25lbnQoInAiKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KHgpKTtiLkFyJiZ2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCJjZSIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGIuQXIpKSk7dmFyIHk9Yi5kb21haW4mJmIuZG9tYWluIT09ImF1dG8iPwpiLmRvbWFpbjoiYXV0bzoiK0EubG9jYXRpb24uaG9zdG5hbWU7di5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgiZCIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoeSkpO2Zvcih2YXIgej1tKGMpLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXt2YXIgRD1tKEMudmFsdWUpLEk9RC5uZXh0KCkudmFsdWUsRz1ELm5leHQoKS52YWx1ZTt2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KEkpKyI9IitlbmNvZGVVUklDb21wb25lbnQoRykpfXU9Il8vc2V0X2Nvb2tpZT8iK3Yuam9pbigiJiIpO3ZhciBOLFM9RSg1OCk7Tj1FZih1LFMpO3ZhciBXPVhqKCkrIi8iK047bWQoVyl9fX07ZnVuY3Rpb24gQksoYSl7cmV0dXJuIkNXVldlYlZpZXdNZXNzYWdlImluIGF9ZnVuY3Rpb24gQ0soYSl7dmFyIGI9QSxjPWIud2Via2l0O2RlbGV0ZSBiLndlYmtpdDthKGIud2Via2l0KTtiLndlYmtpdD1jfWZ1bmN0aW9uIERLKGEsYil7dmFyIGM9e2FjdGlvbjoiZ2NsX3NldHVwIn07aWYoQksoYS5tZXNzYWdlSGFuZGxlcnMpKXJldHVybiBhLm1lc3NhZ2VIYW5kbGVycy5DV1ZXZWJWaWV3TWVzc2FnZS5wb3N0TWVzc2FnZSh7Y29tbWFuZDpiLHBheWxvYWQ6Y30pLCEwO3ZhciBkPWEubWVzc2FnZUhhbmRsZXJzW2JdO3JldHVybiBkPyhkLnBvc3RNZXNzYWdlKGMpLCEwKTohMX07dmFyIEVLPXt9LEZLPShFSy5hd2I9e25vdEZvdW5kOjE3OH0sRUsueXRiPXtub3RGb3VuZDoxOTR9LEVLKTtmdW5jdGlvbiBHSyhhKXt2YXIgYixjPShiPUZLW2FdKT09bnVsbD92b2lkIDA6Yi5ub3RGb3VuZDtjJiZQKGMpfQpmdW5jdGlvbiBISyhhKXtpZighbm0oam0uYmEuam4pJiYid2Via2l0ImluIEEmJkEud2Via2l0Lm1lc3NhZ2VIYW5kbGVycyl7dmFyIGI9ZnVuY3Rpb24oKXt0cnl7Q0soZnVuY3Rpb24oYyl7aWYoYyl7dmFyIGQ7ZD1CSyhjLm1lc3NhZ2VIYW5kbGVycyl8fCJhd2IiaW4gYy5tZXNzYWdlSGFuZGxlcnM/e2NvbW1hbmQ6ImF3YiIsc291cmNlOjV9OihCSyhjLm1lc3NhZ2VIYW5kbGVycyl8fCJ5dGIiaW4gYy5tZXNzYWdlSGFuZGxlcnMpJiZNKDQ5OSk/e2NvbW1hbmQ6Inl0YiIsc291cmNlOjh9OnZvaWQgMDtkJiYobW0oam0uYmEuam4sZnVuY3Rpb24oZSl7dmFyIGY9ZC5zb3VyY2U7ZS5nY2xpZCYmbHMoImdjbF9hdyIsZS5nY2xpZCxmLGEpO2Uud2JyYWlkJiZscygiZ2NsX2diIixlLndicmFpZCxmLGEpfSksREsoYyxkLmNvbW1hbmQpfHxHSyhkLmNvbW1hbmQpKX19KX1jYXRjaChjKXtQKDE5Myl9fTtIbChmdW5jdGlvbigpe0JyKGZwKT9iKCk6SWwoYixmcCl9LGZwKX19O3ZhciBJSz1bImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20iLCJodHRwczovL3d3dy55b3V0dWJlLmNvbSIsImh0dHBzOi8vbS55b3V0dWJlLmNvbSJdO2Z1bmN0aW9uIEpLKGEpe3JldHVybiBhLmRhdGEuYWN0aW9uIT09ImdjbF90cmFuc2ZlciI/KFAoMTczKSwhMCk6YS5kYXRhLmdhZFNvdXJjZT9hLmRhdGEuZ2NsaWQ/ITE6KFAoMTgxKSwhMCk6KFAoMTgwKSwhMCl9CmZ1bmN0aW9uIEtLKGEsYil7aWYoIWF8fE0oYSkpe2lmKG5tKGptLmJhLlZlKSlyZXR1cm4gUCgxNzYpLGptLmJhLlZlO2lmKG5tKGptLmJhLm1uKSlyZXR1cm4gUCgxNzApLGptLmJhLlZlO3ZhciBjPUZwKCk7aWYoIWMpUCgxNzEpO2Vsc2UgaWYoYy5vcGVuZXIpe3ZhciBkPWZ1bmN0aW9uKGcpe2lmKCFJSy5pbmNsdWRlcyhnLm9yaWdpbikpUCgxNzIpO2Vsc2UgaWYoIUpLKGcpKXt2YXIgaD17Z2FkU291cmNlOmcuZGF0YS5nYWRTb3VyY2V9O2guZ2NsaWQ9Zy5kYXRhLmdjbGlkO21tKGptLmJhLlZlLGgpO2ImJmcuZGF0YS5nY2xpZCYmbHMoImdjbF9hdyIsU3RyaW5nKGcuZGF0YS5nY2xpZCksNixiKTt2YXIgbDsobD1nLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbik9PW51bGx8fGwuY2FsbChnKTtudChjLCJtZXNzYWdlIixkKX19O2lmKG10KGMsIm1lc3NhZ2UiLGQpKXttbShqbS5iYS5tbiwhMCk7Zm9yKHZhciBlPW0oSUspLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWMub3BlbmVyLnBvc3RNZXNzYWdlKHthY3Rpb246ImdjbF9zZXR1cCJ9LApmLnZhbHVlKTtQKDE3NCk7cmV0dXJuIGptLmJhLlZlfVAoMTc1KX19fTsKdmFyIExLPWZ1bmN0aW9uKGEpe3ZhciBiPXtwcmVmaXg6TyhhLk0sRi5ELkZkKXx8TyhhLk0sRi5ELm5iKSxkb21haW46TyhhLk0sRi5ELkxiKSxwZDpPKGEuTSxGLkQuQ2IpLGZsYWdzOk8oYS5NLEYuRC5UYil9O2EuTS5pc0d0bUV2ZW50JiYoYi5wYXRoPU8oYS5NLEYuRC52YykpO3JldHVybiBifSxNSz1mdW5jdGlvbihhLGIpe2lmKCFRKGEsSC5KLldlKSl7dmFyIGM9S0soMTE5KTtpZihjKXt2YXIgZD1ubShjKSxlPWZ1bmN0aW9uKGcpe1YoYSxILkouV2UsITApO3ZhciBoPVIoYSxGLkQuemYpLGw9UihhLEYuRC5BZik7VShhLEYuRC56ZixTdHJpbmcoZy5nYWRTb3VyY2UpKTtVKGEsRi5ELkFmLDYpO1YoYSxILkouc2EpO1YoYSxILkoudWcpO1UoYSxGLkQuc2EpO2IoKTtVKGEsRi5ELnpmLGgpO1UoYSxGLkQuQWYsbCk7VihhLEguSi5XZSwhMSl9O2lmKGQpZShkKTtlbHNle3ZhciBmPXZvaWQgMDtmPXBtKGMsZnVuY3Rpb24oZyxoKXtlKGgpO3FtKGMsZil9KX19fX0sUEs9ZnVuY3Rpb24oYSl7dmFyIGIsCmMsZCxlO2I9YS5UbjtjPWEubW87ZD1hLlFvO2U9YS5VbjtpZihiKXtpZihkcihjW0YuRC5YZl0sISFjW0YuRC5BYV0pKXtpZihXaigpJiZCcihBcigpKSl7Zm9yKHZhciBmPVVxKCEwKSxnPXt9LGg9bShPYmplY3Qua2V5cyh2cikpLGw9aC5uZXh0KCk7IWwuZG9uZTtsPWgubmV4dCgpKXt2YXIgbj1sLnZhbHVlLHA9dnJbbl0scT1mW3BdO2lmKHEpe3ZhciByPSRwKHEsNCk7ciYmKG9zKE1hdGgubWluKE5yKHIpLE5iKCkpfHxOYigpLHAsNCl8fChnW25dPXEpKX19Zm9yKHZhciB0PXt9LHU9bShPYmplY3Qua2V5cyhnKSksdj11Lm5leHQoKTshdi5kb25lO3Y9dS5uZXh0KCkpe3ZhciB4PXYudmFsdWUseT1nW3hdO2lmKHkhPT12b2lkIDApe3ZhciB6PSRwKHksNCk7eiYmei5tPT09IjEiJiYodFt4XT16LmspfX1BSyh0LGUpfXBzKGUpO3RzKGUpO1F2KGUpfWlmKE9wKCkhPT0yKXtncyhlKTtpcyhlKTtpZihZZigxNSkpe3ZhciBDPWUsRD1kcyhBLmxvY2F0aW9uLmhyZWYsITAsITEpOwpELmxlbmd0aHx8KEQ9ZHMoQS5kb2N1bWVudC5yZWZlcnJlciwhMSwhMCkpO2lmKEQubGVuZ3RoKXtDPUN8fHt9O3ZhciBJPURbMF07SS52YWx1ZSYmbXMoImdjbF9kYyIsW3t2ZXJzaW9uOiIiLGdjbGlkOkkudmFsdWUsdGltZXN0YW1wOk5iKCkscWE6SS5xYX1dLEMpfX1ISyhlKTtLSyh2b2lkIDAsZSl9ZWxzZSBncyhlKTtpZihXaigpJiZCcihBcigpKSl7dmFyIEc9ZnMoKTtBSyhHLGUpfXhzKHFzLGUpO3lzKGUpfWNbRi5ELkFhXSYmKHZzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10pLHVzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZS5wcmVmaXgpLHdzKGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZS5wcmVmaXgpLFJ2KEd2KGUucHJlZml4KSxjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUpLFJ2KCJGUEFVIixjW0YuRC5BYV0sY1tGLkQuYWRdLCEhY1tGLkQud2NdLGUpKTtkJiZBcyhOSyk7Q3MoT0spfSxxcz1bImF3IiwiZGMiLAoiZ2IiXSxPSz1bImF3IiwiZGMiLCJnYiIsImFnIl0sTks9WyJhdyIsImRjIiwiZ2IiLCJhZyIsImdhZF9zb3VyY2UiXTsKdmFyIFFLPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouR2EpLGM9UShhLEguSi5zbiksZD1NKDQ0MykmJmM/VHYoYik6VXYoYikuU2gsZT12b2lkIDA7TSg1NzApJiZjJiYoZT1TdihiLHtYaDohMH0pLmlrKTt2YXIgZjthOntpZihJZig0NykmJlhvKGZwKSl7dmFyIGc9ZEkoYSwiY2NkX2VuYWJsZV9jbSIsITEpLGg9UShhLEguSi5ZYSk7VihhLEguSi5haiwhMCk7VihhLEguSi5mZCwhMCk7aWYoaHcoaCkpe1YoYSxILkouSWgsITApO3ZhciBsPWR8fEF2KCksbj17fSxwPXtldmVudE1ldGFkYXRhOihuW0guSi5EY109WC5WLkZiLG5bSC5KLllhXT1oLG5bSC5KLnpqXT1sLG5bSC5KLmZkXT0hMCxuW0guSi5hal09ITAsbltILkouSWhdPSEwLG5bSC5KLlhtXT1nJiZJZig0Nyksbiksbm9HdG1FdmVudDohMH0scT1zQyhhLnRhcmdldC5kZXN0aW5hdGlvbklkLGEuZXZlbnROYW1lLGEuTS5FYSk7bUQocSxhLk0uZXZlbnRJZCxwKTtnJiZRKGEsSC5KLndkKXx8VihhLEguSi5ZYSk7Zj1sOwpicmVhayBhfX1mPXZvaWQgMH12YXIgcj1kfHxmO2lmKHJ8fGUpe3ZhciB0LHU7dD1SKGEsRi5ELlBhKTt1PUt6LmdqLmJwO3ZhciB2PVIoYSxGLkQuV2MpOyF0JiZ2JiYodD12W0YuRC5QYV0sdT1Lei5nai51cSk7dHx8KHQ9QXYoUihhLEYuRC5HZCkpLHNiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsVC5XLkZoKSx1PUt6LmdqLlZxKTtVKGEsRi5ELlBhLHQpO1UoYSxGLkQuZG0sdSk7ciYmVShhLEYuRC54YyxyKTtlJiZVKGEsIl8mZWNzaWQyIixlKTtWKGEsSC5KLmxqLCEwKX19Owp2YXIgUks9ZnVuY3Rpb24oYSl7UShhLEguSi55bil8fFYoYSxILkouSmEsITEpfSxTSz1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLmRhKSxjPVhvKGZwKSxkPVEoYSxILkouc2EpLGU9UihhLEYuRC5HZCksZj1RKGEsSC5KLnBuKTtzd2l0Y2goYil7Y2FzZSBYLlYueGE6IWYmJmUmJlJLKGEpO2EuZXZlbnROYW1lPT09Ri5ELndhJiZWKGEsSC5KLkphLCEwKTticmVhaztjYXNlIFguVi5PYjpjYXNlIFguVi5GYjppZighY3x8ZHx8IWYmJmUpYS5pc0Fib3J0ZWQ9ITA7YnJlYWs7Y2FzZSBYLlYudWI6Y3x8KGEuaXNBYm9ydGVkPSEwKTshZiYmZXx8UksoYSk7UShhLEguSi53ZCl8fChhLmlzQWJvcnRlZD0hMCk7YS5ldmVudE5hbWUhPT1GLkQud2F8fE8oYS5NLEYuRC5DbCkhPT0hMSYmTyhhLk0sRi5ELlRkKSE9PSExfHxWKGEsSC5KLkphLCEwKTticmVhaztjYXNlIFguVi5LYTphLmV2ZW50TmFtZSE9PUYuRC5zYyYmUShhLEguSi5QYykmJihhLmlzQWJvcnRlZD0hMCksYS50YXJnZXQuaWRzW2RDWzFdXSYmCk8oYS5NLEYuRC5paCkhPT0hMCYmKGEuaXNBYm9ydGVkPSEwKX19O3ZhciBUSz1mdW5jdGlvbihhKXt2YXIgYixjPU0oNTc2KTtpZihRKGEsSC5KLnNuKSlzd2l0Y2goUShhLEguSi5kYSkpe2Nhc2UgWC5WLkZiOmlmKCEoYS5ldmVudE5hbWUhPT1GLkQud2F8fGMmJmh3KFEoYSxILkouWWEpKSkpYnJlYWs7Yj05NzthLmV2ZW50TmFtZT09PUYuRC53YSYmR3UoVC5XLk9rKTtNKDQ4OCk/VihhLEguSi5KYSwhMSk6UksoYSk7YnJlYWs7Y2FzZSBYLlYuT2I6aWYoYS5ldmVudE5hbWU9PT1GLkQud2EpYnJlYWs7Yj05ODtNKDQ4OCk/VihhLEguSi5KYSwhMSk6UksoYSk7YnJlYWs7Y2FzZSBYLlYueGE6Yj05OX0hUShhLEguSi5KYSkmJmImJlAoYik7UShhLEguSi5KYSk9PT0hMCYmKGEuaXNBYm9ydGVkPSEwKX07CnZhciBVSz1mdW5jdGlvbihhKXtpZihNKDU2OSkmJldqKCkmJlEoYSxILkouZGEpPT09WC5WLnhhJiYhUShhLEguSi5FYykpe3ZhciBiPU1hdGguZmxvb3IoRGF0ZS5ub3coKS8xRTMpLGM9bmV3IFVpbnQ4QXJyYXkoW2ImMjU1LGI+PjgmMjU1XSksZCxlPXltKCl8fCJYWCIsZj16bSgpfHwiMDAiO2Q9bmV3IFVpbnQ4QXJyYXkoW2UuY2hhckNvZGVBdCgwKSxlLmNoYXJDb2RlQXQoMSksZi5jaGFyQ29kZUF0KDApLGYuY2hhckNvZGVBdCgxKV0pO3ZhciBnPW5ldyBVaW50OEFycmF5KDcpLGg7aWYoKGg9QS5jcnlwdG8pPT1udWxsfHwhaC5nZXRSYW5kb21WYWx1ZXMoZykpZm9yKHZhciBsPTA7bDw3O2wrKylnW2xdPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyNTYpO3ZhciBuPW5ldyBVaW50OEFycmF5KFtdLmNvbmNhdCh3KGMpLHcoZCksdyhnKSkpLHA7dHJ5e3A9YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx3KG4pKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csCiJfIikucmVwbGFjZSgvPSskLywiIil9Y2F0Y2gocSl7cD0iIn1VKGEsRi5ELkVpLHApfX07ZnVuY3Rpb24gVksoKXtyZXR1cm4gTXQoNykmJk10KDkpJiZNdCgxMCl9Owp2YXIgYUw9ZnVuY3Rpb24oYSxiKXthJiYoJEsoInNpZCIsYS50YXJnZXRJZCxiKSwkSygiY2MiLGEuY2xpZW50Q291bnQsYiksJEsoInRsIixhLnRvdGFsTGlmZU1zLGIpLCRLKCJoYyIsYS5oZWFydGJlYXRDb3VudCxiKSwkSygiY2wiLGEuY2xpZW50TGlmZU1zLGIpKX0sJEs9ZnVuY3Rpb24oYSxiLGMpe2IhPW51bGwmJmMucHVzaChhKyI9IitiKX0sYkw9ZnVuY3Rpb24oKXt2YXIgYT1CLnJlZmVycmVyO2lmKGEpe3ZhciBiO3JldHVybiBMaihSaihhKSwiaG9zdCIpPT09KChiPUEubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpiLmhvc3QpPzE6Mn1yZXR1cm4gMH0sZEw9ZnVuY3Rpb24oKXt0aGlzLmphPWNMO3RoaXMuTj0wO3RoaXMueWE9TmYoNTcsNSk7dGhpcy5SPU5mKDU4LDUwKTt0aGlzLmZhPURiKCk7dGhpcy5MYT0iaHR0cHM6Ly8iK0UoMjEpKyIvYT8ifTtkTC5wcm90b3R5cGUuSz1mdW5jdGlvbihhLGIsYyxkKXsKdmFyIGU9YkwoKSxmLGc9W107Zj1BPT09QS50b3AmJmUhPT0wJiZiPyhiPT1udWxsP3ZvaWQgMDpiLmNsaWVudENvdW50KT4xP2U9PT0yPzE6MjplPT09Mj8wOjM6NDthJiYkSygic2kiLGEuSmcsZyk7JEsoIm0iLDAsZyk7JEsoImlzcyIsZixnKTskSygiaWYiLGMsZyk7YUwoYixnKTtkJiYkSygiZm0iLGVuY29kZVVSSUNvbXBvbmVudChkLnN1YnN0cmluZygwLHRoaXMuUikpLGcpO3RoaXMuWihnKTt9O2RMLnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9W107JEsoIm0iLDEsZik7JEsoInMiLGEsZik7JEsoInBvIixiTCgpLGYpO2ImJigkSygic3QiLGIuc3RhdGUsZiksJEsoInNpIixiLkpnLGYpLCRLKCJzbSIsYi5VZyxmKSk7YUwoYyxmKTskSygiYyIsZCxmKTtlJiYkSygiZm0iLGVuY29kZVVSSUNvbXBvbmVudChlLnN1YnN0cmluZygwLAp0aGlzLlIpKSxmKTt0aGlzLlooZik7fTtkTC5wcm90b3R5cGUuWj1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/W106YTshZm4uTnx8dGhpcy5OPj10aGlzLnlhfHwoJEsoInBpZCIsdGhpcy5mYSxhKSwkSygiYmMiLCsrdGhpcy5OLGEpLGEudW5zaGlmdCgiY3RpZD0iK0UoNSkrIiZ0PXMiKSx0aGlzLmphKCIiK3RoaXMuTGErYS5qb2luKCImIikpKX07ZnVuY3Rpb24gZUwoYSl7cmV0dXJuIGEucGVyZm9ybWFuY2UmJmEucGVyZm9ybWFuY2Uubm93KCl8fERhdGUubm93KCl9CnZhciBmTD1mdW5jdGlvbihhLGIpe3ZhciBjPUEsZD1OZig1Myw1MDApLGU9TmYoNTQsNUUzKSxmPU5mKDgsMjApLGc9TmYoNTUsNUUzKSxoO3ZhciBsPWZ1bmN0aW9uKG4scCxxKXtxPXE9PT12b2lkIDA/e3FvOmZ1bmN0aW9uKCl7fSxzbzpmdW5jdGlvbigpe30scG86ZnVuY3Rpb24oKXt9LG9uRmFpbHVyZTpmdW5jdGlvbigpe319OnE7dGhpcy5Jaj1uO3RoaXMuSD1wO3RoaXMuTj1xO3RoaXMuZmE9dGhpcy5qYT10aGlzLmhlYXJ0YmVhdENvdW50PXRoaXMuRGo9MDt0aGlzLmZlPSExO3RoaXMuSz17fTt0aGlzLmlkPVN0cmluZyhNYXRoLmZsb29yKE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKk1hdGgucmFuZG9tKCkpKTt0aGlzLnN0YXRlPTA7dGhpcy5KZz1lTCh0aGlzLkgpO3RoaXMuVWc9ZUwodGhpcy5IKTt0aGlzLlo9MTB9O2wucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oKXt0aGlzLlIoMSk7CnRoaXMuTGEoKX07bC5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm57c3RhdGU6dGhpcy5zdGF0ZSxKZzpNYXRoLnJvdW5kKGVMKHRoaXMuSCktdGhpcy5KZyksVWc6TWF0aC5yb3VuZChlTCh0aGlzLkgpLXRoaXMuVWcpfX07bC5wcm90b3R5cGUuUj1mdW5jdGlvbihuKXt0aGlzLnN0YXRlIT09biYmKHRoaXMuc3RhdGU9bix0aGlzLlVnPWVMKHRoaXMuSCkpfTtsLnByb3RvdHlwZS52Zz1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcodGhpcy5EaisrKX07bC5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuaGVhcnRiZWF0Q291bnQrKzt0aGlzLnlhKHt0eXBlOjAsY2xpZW50SWQ6dGhpcy5pZCxyZXF1ZXN0SWQ6dGhpcy52ZygpLG1heERlbGF5OnRoaXMuaGUoKX0sZnVuY3Rpb24ocCl7aWYocC50eXBlPT09MCl7dmFyIHE7aWYoKChxPXAuZmFpbHVyZSk9PW51bGw/dm9pZCAwOnEuZmFpbHVyZVR5cGUpIT1udWxsKWlmKHAuc3RhdHMmJihuLnN0YXRzPQpwLnN0YXRzKSxuLmZhKysscC5pc0RlYWR8fG4uZmE+Zil7dmFyIHI9cC5pc0RlYWQmJnAuZmFpbHVyZS5mYWlsdXJlVHlwZTtuLlo9cnx8MTA7bi5SKDQpO24uQWooKTt2YXIgdCx1Oyh1PSh0PW4uTikucG8pPT1udWxsfHx1LmNhbGwodCx7ZmFpbHVyZVR5cGU6cnx8MTAsZGF0YTpwLmZhaWx1cmUuZGF0YX0pfWVsc2Ugbi5SKDMpLG4uUGgoKTtlbHNle2lmKG4uaGVhcnRiZWF0Q291bnQ+cC5zdGF0cy5oZWFydGJlYXRDb3VudCtmKXtuLmhlYXJ0YmVhdENvdW50PXAuc3RhdHMuaGVhcnRiZWF0Q291bnQ7dmFyIHYseDsoeD0odj1uLk4pLm9uRmFpbHVyZSk9PW51bGx8fHguY2FsbCh2LHtmYWlsdXJlVHlwZToxM30pfW4uc3RhdHM9cC5zdGF0czt2YXIgeT1uLnN0YXRlO24uUigyKTtpZih5IT09MilpZihuLmZlKXt2YXIgeixDOyhDPSh6PW4uTikuc28pPT1udWxsfHxDLmNhbGwoeil9ZWxzZXtuLmZlPSEwO3ZhciBELEk7KEk9KEQ9bi5OKS5xbyk9PW51bGx8fEkuY2FsbChEKX1uLmZhPQowO24uTmooKTtuLlBoKCl9fX0pfTtsLnByb3RvdHlwZS5oZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnN0YXRlPT09Mj9lOmR9O2wucHJvdG90eXBlLlBoPWZ1bmN0aW9uKCl7dmFyIG49dGhpczt0aGlzLkguc2V0VGltZW91dChmdW5jdGlvbigpe24uTGEoKX0sTWF0aC5tYXgoMCx0aGlzLmhlKCktKGVMKHRoaXMuSCktdGhpcy5qYSkpKX07bC5wcm90b3R5cGUua3I9ZnVuY3Rpb24obixwLHEpe3ZhciByPXRoaXM7dGhpcy55YSh7dHlwZToxLGNsaWVudElkOnRoaXMuaWQscmVxdWVzdElkOnRoaXMudmcoKSxjb21tYW5kOm59LGZ1bmN0aW9uKHQpe2lmKHQudHlwZT09PTEpaWYodC5yZXN1bHQpcCh0LnJlc3VsdCk7ZWxzZXt2YXIgdSx2LHgseT17ZmFpbHVyZVR5cGU6KHg9KHU9dC5mYWlsdXJlKT09bnVsbD92b2lkIDA6dS5mYWlsdXJlVHlwZSkhPW51bGw/eDoxMixkYXRhOih2PXQuZmFpbHVyZSk9PW51bGw/dm9pZCAwOnYuZGF0YX0seixDOyhDPSh6PXIuTikub25GYWlsdXJlKT09Cm51bGx8fEMuY2FsbCh6LHkpO3EoeSl9fSl9O2wucHJvdG90eXBlLnlhPWZ1bmN0aW9uKG4scCl7dmFyIHE9dGhpcztpZih0aGlzLnN0YXRlPT09NCluLmZhaWx1cmU9e2ZhaWx1cmVUeXBlOnRoaXMuWn0scChuKTtlbHNle3ZhciByPXRoaXMuc3RhdGUhPT0yJiZuLnR5cGUhPT0wLHQ9bi5yZXF1ZXN0SWQsdSx2PXRoaXMuSC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIHk9cS5LW3RdO3kmJihpbSg2KSxxLmtkKHksNykpfSwodT1uLm1heERlbGF5KSE9bnVsbD91OmcpLHg9e3JlcXVlc3Q6bixIbzpwLHpvOnIsTnM6dn07dGhpcy5LW3RdPXg7cnx8dGhpcy5zZW5kUmVxdWVzdCh4KX19O2wucHJvdG90eXBlLnNlbmRSZXF1ZXN0PWZ1bmN0aW9uKG4pe3RoaXMuamE9ZUwodGhpcy5IKTtuLnpvPSExO3RoaXMuSWoobi5yZXF1ZXN0KX07bC5wcm90b3R5cGUuTmo9ZnVuY3Rpb24oKXtmb3IodmFyIG49bShPYmplY3Qua2V5cyh0aGlzLkspKSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSl7dmFyIHE9CnRoaXMuS1twLnZhbHVlXTtxLnpvJiZ0aGlzLnNlbmRSZXF1ZXN0KHEpfX07bC5wcm90b3R5cGUuQWo9ZnVuY3Rpb24oKXtmb3IodmFyIG49bShPYmplY3Qua2V5cyh0aGlzLkspKSxwPW4ubmV4dCgpOyFwLmRvbmU7cD1uLm5leHQoKSl0aGlzLmtkKHRoaXMuS1twLnZhbHVlXSx0aGlzLlopfTtsLnByb3RvdHlwZS5rZD1mdW5jdGlvbihuLHApe3RoaXMuYWMobik7dmFyIHE9bi5yZXF1ZXN0O3EuZmFpbHVyZT17ZmFpbHVyZVR5cGU6cH07bi5IbyhxKX07bC5wcm90b3R5cGUuYWM9ZnVuY3Rpb24obil7ZGVsZXRlIHRoaXMuS1tuLnJlcXVlc3QucmVxdWVzdElkXTt0aGlzLkguY2xlYXJUaW1lb3V0KG4uTnMpfTtsLnByb3RvdHlwZS5rcz1mdW5jdGlvbihuKXt0aGlzLmphPWVMKHRoaXMuSCk7dmFyIHA9dGhpcy5LW24ucmVxdWVzdElkXTtpZihwKXRoaXMuYWMocCkscC5IbyhuKTtlbHNle3ZhciBxLHI7KHI9KHE9dGhpcy5OKS5vbkZhaWx1cmUpPT1udWxsfHxyLmNhbGwocSx7ZmFpbHVyZVR5cGU6MTR9KX19OwpoPW5ldyBsKGEsYyxiKTtyZXR1cm4gaH07CnZhciBnTD1mdW5jdGlvbigpe3JldHVybiBhbCgxOCxmdW5jdGlvbigpe3JldHVybiBuZXcgZEx9KX0sY0w9ZnVuY3Rpb24oYSl7aW8obG8oY28uaWEuWmIpLGZ1bmN0aW9uKCl7WmMoYSl9KX0saEw9ZnVuY3Rpb24oYSl7dmFyIGI9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIi9fL3NlcnZpY2Vfd29ya2VyIikpO3JldHVybiImMXA9MSIrKGI/IiZwYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpOiIiKX0saUw9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5vcmlnaW47aWYoIWIpcmV0dXJuIG51bGw7KE0oNDMyKT9XaigpOldqKCkmJiFhKSYmKGE9IiIrYitYaigpKyIvXy9zZXJ2aWNlX3dvcmtlciIpO3ZhciBjPWEsZCxlPUxmKDExKTtlPUxmKDEwKTtkPWU7Yz8oYy5jaGFyQXQoYy5sZW5ndGgtMSkhPT0iLyImJgooYys9Ii8iKSxhPWMrZCk6YT0iaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vc3RhdGljL3NlcnZpY2Vfd29ya2VyLyIrZCsiLyI7dmFyIGY7dHJ5e2Y9bmV3IFVSTChhKX1jYXRjaChnKXtyZXR1cm4gbnVsbH1yZXR1cm4gZi5wcm90b2NvbCE9PSJodHRwczoiP251bGw6Zn0sakw9ZnVuY3Rpb24oYSl7dmFyIGI9bm0oam0uYmEuT2gpO3JldHVybiBiJiZiW2FdfSxrTD1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuSz1nTCgpO3RoaXMuWj10aGlzLlI9ITE7dGhpcy5mYT1udWxsO3RoaXMuaW5pdFRpbWU9TWF0aC5yb3VuZChOYigpKTt0aGlzLkg9MTU7dGhpcy5OPXRoaXMuRnIoYSk7QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yi5pbml0aWFsaXplKCl9LDFFMyk7YmQoZnVuY3Rpb24oKXtiLnpzKGEpfSl9O2s9a0wucHJvdG90eXBlO2suZGVsZWdhdGU9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZ2V0U3RhdGUoKSE9PTI/KHRoaXMuSy5IKHRoaXMuSCx7c3RhdGU6dGhpcy5nZXRTdGF0ZSgpLApKZzp0aGlzLmluaXRUaW1lLFVnOk1hdGgucm91bmQoTmIoKSktdGhpcy5pbml0VGltZX0sdm9pZCAwLGEuY29tbWFuZFR5cGUpLGMoe2ZhaWx1cmVUeXBlOnRoaXMuSH0pKTp0aGlzLk4ua3IoYSxiLGMpfTtrLmdldFN0YXRlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTi5nZXRTdGF0ZSgpLnN0YXRlfTtrLnpzPWZ1bmN0aW9uKGEpe3ZhciBiPUEubG9jYXRpb24ub3JpZ2luLGM9dGhpcyxkPVhjKCk7dHJ5e3ZhciBlPWQuY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpLGY9YS5wYXRobmFtZSxnPWZbZi5sZW5ndGgtMV09PT0iLyI/YS50b1N0cmluZygpOmEudG9TdHJpbmcoKSsiLyIsaD1hLm9yaWdpbiE9PSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbSI/aEwoZik6IiIsbDtNKDEzMykmJihsPXtzYW5kYm94OiJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIn0pO1hjKGcrInN3X2lmcmFtZS5odG1sP29yaWdpbj0iK2VuY29kZVVSSUNvbXBvbmVudChiKSsKaCx2b2lkIDAsbCx2b2lkIDAsZSk7dmFyIG49ZnVuY3Rpb24oKXtkLmNvbnRlbnREb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpO2UuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtjLmZhPWUuY29udGVudFdpbmRvdztkLmNvbnRlbnRXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24ocCl7cC5vcmlnaW49PT1hLm9yaWdpbiYmYy5OLmtzKHAuZGF0YSl9KTtjLmluaXRpYWxpemUoKX0pfTtkLmNvbnRlbnREb2N1bWVudC5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIj9uKCk6ZC5jb250ZW50V2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKCl7bigpfSl9Y2F0Y2gocCl7ZC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGQpLHRoaXMuSD0xMSx0aGlzLksuSyh2b2lkIDAsdm9pZCAwLHRoaXMuSCxwLnRvU3RyaW5nKCkpfX07ay5Gcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9ZkwoZnVuY3Rpb24oZCl7dmFyIGU7KGU9Yi5mYSk9PQpudWxsfHxlLnBvc3RNZXNzYWdlKGQsYS5vcmlnaW4pfSx7cW86ZnVuY3Rpb24oKXtiLlI9ITA7Yi5LLksoYy5nZXRTdGF0ZSgpLGMuc3RhdHMpfSxzbzpmdW5jdGlvbigpe30scG86ZnVuY3Rpb24oZCl7Yi5SPyhiLkg9KGQ9PW51bGw/dm9pZCAwOmQuZmFpbHVyZVR5cGUpfHwxMCxiLksuSChiLkgsYy5nZXRTdGF0ZSgpLGMuc3RhdHMsdm9pZCAwLGQ9PW51bGw/dm9pZCAwOmQuZGF0YSkpOihiLkg9KGQ9PW51bGw/dm9pZCAwOmQuZmFpbHVyZVR5cGUpfHw0LGIuSy5LKGMuZ2V0U3RhdGUoKSxjLnN0YXRzLGIuSCxkPT1udWxsP3ZvaWQgMDpkLmRhdGEpKX0sb25GYWlsdXJlOmZ1bmN0aW9uKGQpe2IuSD1kLmZhaWx1cmVUeXBlO2IuSy5IKGIuSCxjLmdldFN0YXRlKCksYy5zdGF0cyxkLmNvbW1hbmQsZC5kYXRhKX19KTtyZXR1cm4gY307ay5pbml0aWFsaXplPWZ1bmN0aW9uKCl7dGhpcy5afHx0aGlzLk4uaW5pdCgpO3RoaXMuWj0hMH07CnZhciBsTD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZTtpZigoZT1qTChhKSk9PW51bGx8fCFlLmRlbGVnYXRlKXt2YXIgZj1JYygpPzE2OjY7Z0woKS5IKGYsdm9pZCAwLHZvaWQgMCxiLmNvbW1hbmRUeXBlKTtkKHtmYWlsdXJlVHlwZTpmfSk7cmV0dXJufWpMKGEpLmRlbGVnYXRlKGIsYyxkKTt9OwpmdW5jdGlvbiBtTChhLGIsYyxkKXt2YXIgZT1pTChhKTtpZihlPT09bnVsbCl7ZCgiX2lzX3N3PWYiKyhJYygpPzE2OjYpKyJ0ZSIpO3JldHVybn12YXIgZj1iPzE6MCxnPU1hdGgucm91bmQoTmIoKSksaCxsPShoPWpMKGUub3JpZ2luKSk9PW51bGw/dm9pZCAwOmguaW5pdFRpbWUsbj1sP2ctbDp2b2lkIDAscDtNKDQzMik/cD1XaigpP3ZvaWQgMDpBLmxvY2F0aW9uLmhyZWY6cD1BLmxvY2F0aW9uLmhyZWY7bEwoZS5vcmlnaW4se2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6Zix0ZW1wbGF0ZXM6Yyxib2R5OmJ8fCIiLHByb2Nlc3NSZXNwb25zZTohMCxzaW5jZUluaXQ6bixhdHRyaWJ1dGlvblJlcG9ydGluZzohMCxyZWZlcmVyOnAsc3RyaWN0Ok0oNTg0KX19LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbihxKXt2YXIgcj0iX2lzX3N3PWYiK3EuZmFpbHVyZVR5cGUsdCx1PSh0PWpMKGUub3JpZ2luKSk9PQpudWxsP3ZvaWQgMDp0LmdldFN0YXRlKCk7dSE9PXZvaWQgMCYmKHIrPSJzIit1KTtkKG4/cisoInQiK24pOnIrInRlIil9KTt9O2Z1bmN0aW9uIG5MKGEpe2lmKElmKDQ3KSYmZEkoYSwiY2NkX2FkZF8xcF9kYXRhIiwhMSkmJldqKCkpe3ZhciBiPWEuTTtpZihJYygpJiZiZygiaW50ZXJuYWxfc3dfYWxsb3dlZCIsIiIpKXt2YXIgYz1layhiKSxkPVdqKCk/WGooKTp2b2lkIDAsZTtlPWQ/e3BhdGg6ZCxlbzoiZnVsbCJ9OmM/e3BhdGg6YyxlbzoibGl0ZSJ9OnZvaWQgMDtpZihlKXt2YXIgZj1lLmVvLGc9bmV3IFVSTChlLnBhdGgsQS5sb2NhdGlvbi5vcmlnaW4pO2lmKGcub3JpZ2luPT09QS5sb2NhdGlvbi5vcmlnaW4mJnB5KGYpPT09dm9pZCAwKXt2YXIgaD1vbShqbS5iYS5PaCx7fSk7aFtmXXx8KGhbZl09bmV3IG55KGcpKX19fX19O3ZhciBvTD1mdW5jdGlvbihhKXtuTChhKX07CnZhciBwTD1mdW5jdGlvbihhKXtpZighUShhLEguSi5KYSkmJiFhLmlzQWJvcnRlZClpZihRKGEsSC5KLmRhKSE9PVguVi54YSlRKGEsSC5KLlhtKSYmVShhLEYuRC5KaCwiMSIpLEl6KGEpO2Vsc2V7dmFyIGI9UShhLEguSi5ZYSksYz1SKGEsRi5ELkJjKSxkPVEoYSxILkouZmQpLGU9SWYoNDcpJiZkSShhLCJjY2RfZW5hYmxlX2NtIiwhMSksZj1YbyhmcCkmJlEoYSxILkoud2QpJiZlO2YmJihVKGEsRi5ELkpoLCIxIiksUShhLEguSi5JaCkmJihWKGEsSC5KLllhKSxVKGEsRi5ELkJjKSxWKGEsSC5KLmZkLCExKSkpO3ZhciBnPXJ2KG12KTtWKGEsSC5KLmduLGcpO2Zvcih2YXIgaCxsPVtdLG49bShxdikscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpe3ZhciBxPXAudmFsdWUscj1nW3EucGJdO2lmKHI9PT12b2lkIDB8fHI8cS5PZylicmVhaztsLnB1c2goci50b1N0cmluZygpKX0oaD1sLmpvaW4oIn4iKSkmJlUoYSwiXyZnY2xfY3RyIixoKTt2YXIgdDt2YXIgdT17cmFuZG9tOlEoYSwKSC5KLkViKSxsYWJlbDpSKGEsRi5ELkdkKX0sdj1RKGEsSC5KLkdhKSx4PXd2KCk7eD8oeXYoW3VdLHYpLHQ9eC5sZW5ndGg9PT0wP3tyYW5kb206MCxsYWJlbDoiMCJ9OnhbMF0pOnQ9dm9pZCAwO3ZhciB5PXQ7eSYmYS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLHtsYXN0X3JhbmRvbTp5LnJhbmRvbSxsYXN0X2xhYmVsOnkubGFiZWx9KTtJeihhKTtpZihRKGEsSC5KLm9iKSYmWG8oZnApKXt2YXIgej1adShhLHtNOnVDKGEuTSl9KTtWKHosSC5KLmRhLFguVi5aZCk7SXooeil9aWYoUShhLEguSi5saikpe3ZhciBDPVp1KGEse006dUMoYS5NKX0pO1YoQyxILkouZGEsWC5WLnpkKTtJeihDKX1pZihmKXt2YXIgRD1adShhLHtNOnVDKGEuTSl9KTtVKEQsRi5ELkpoLCIyIik7VihELEguSi5FYywhMCk7VihELEguSi5mZCxkKTtWKEQsSC5KLllhLGIpO1UoRCxGLkQuQmMsYyk7SXooRCl9fX07dmFyIHFMPWZ1bmN0aW9uKGEpe3ZhciBiPVEoYSxILkouZGEpPT09WC5WLnhhO2lmKCFifHxhLmV2ZW50TmFtZT09PUYuRC5JYnx8YS5NLmlzR3RtRXZlbnQpYS5jb3B5VG9IaXREYXRhKEYuRC5IYSksYiYmKGEuY29weVRvSGl0RGF0YShGLkQuRmYpLGEuY29weVRvSGl0RGF0YShGLkQuRGYpLGEuY29weVRvSGl0RGF0YShGLkQuRWYpLGEuY29weVRvSGl0RGF0YShGLkQuQ2YpLFUoYSxGLkQud2ksRi5ELkliKSxhLmNvcHlUb0hpdERhdGEoRi5ELlNkKSxhLmNvcHlUb0hpdERhdGEoRi5ELlFkKSxhLmNvcHlUb0hpdERhdGEoRi5ELlJkKSl9O3ZhciByTD1mdW5jdGlvbigpe3ZhciBhPUhjJiZIYy51c2VyQWdlbnR8fCIiO2lmKGEuaW5kZXhPZigiU2FmYXJpIik8MHx8L0Nocm9tZXxDb2FzdHxPcGVyYXxFZGd8U2lsa3xBbmRyb2lkLy50ZXN0KGEpKXJldHVybiExO3ZhciBiPSgvVmVyc2lvblwvKFtcZFwuXSspLy5leGVjKGEpfHxbXSlbMV18fCIiO2lmKGI9PT0iIilyZXR1cm4hMTtmb3IodmFyIGM9WyIxNCIsIjEiLCIxIl0sZD1iLnNwbGl0KCIuIiksZT0wO2U8ZC5sZW5ndGg7ZSsrKXtpZihjW2VdPT09dm9pZCAwKXJldHVybiEwO2lmKGRbZV0hPT1jW2VdKXJldHVybiBOdW1iZXIoZFtlXSk+TnVtYmVyKGNbZV0pfXJldHVybiBkLmxlbmd0aD49Yy5sZW5ndGh9O2Z1bmN0aW9uIHNMKCl7dmFyIGE7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7dmFyIGI7cmV0dXJuISgoYj1hLmZlYXR1cmVQb2xpY3kpPT1udWxsfHwhYi5hbGxvd2VkRmVhdHVyZXMoKS5pbmNsdWRlcygiYXR0cmlidXRpb24tcmVwb3J0aW5nIikpfTt2YXIgdEw9ZnVuY3Rpb24oYSl7WG8oRi5ELm1hKSYmKEEuX2d0bXBjbT09PSEwfHxyTCgpP1UoYSxGLkQuRmUsIjIiKTpzTCgpJiZVKGEsRi5ELkZlLCIxIikpOyhPYygpfHxRYygpKSYmVihhLEguSi5vYiwhMCk7VihhLEguSi5ZZSxRKGEsSC5KLlhlKSYmIVhvKGZwKSk7UShhLEguSi5zYSkmJlUoYSxGLkQuc2EsITApO2EuTS5ldmVudE1ldGFkYXRhW0guSi5hZV0mJlUoYSxGLkQuVm0sITApfTt2YXIgdUw9ZnVuY3Rpb24oYSl7YS5jb3B5VG9IaXREYXRhKEYuRC5QYSk7YS5jb3B5VG9IaXREYXRhKEYuRC5RYSk7YS5jb3B5VG9IaXREYXRhKEYuRC5lYik7UShhLEguSi5vYik/VShhLEYuRC5XaSwid3d3Lmdvb2dsZS5jb20iKTpVKGEsRi5ELldpLCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iKTt2YXIgYj1PKGEuTSxGLkQuV2IpO2IhPT0hMCYmYiE9PSExfHxVKGEsRi5ELldiLGIpfTt2YXIgdkw9ZnVuY3Rpb24oYSl7dmFyIGI9YS50YXJnZXQuaWRzW2RDWzBdXTtpZihiKXtVKGEsRi5ELnlpLGIpO3ZhciBjPWEudGFyZ2V0Lmlkc1tkQ1sxXV07YyYmVShhLEYuRC5HZCxjKTtPKGEuTSxGLkQuaWgpPT09ITAmJlYoYSxILkoucG4sITApfWVsc2UgYS5pc0Fib3J0ZWQ9ITB9O2Z1bmN0aW9uIHdMKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlPUZwKCksZj1EcChlKTtpZihmLnVybClpZihkKXt2YXIgZz1jKGYudXJsKTtiIT09ZyYmVShhLEYuRC5QZSxnKX1lbHNle3ZhciBoPWYudXJsO2IhPT1oJiZVKGEsRi5ELlBlLGMoaCkpfX07dmFyIHpMPWZ1bmN0aW9uKGEpe2lmKCFRKGEsSC5KLnNhKSl7dmFyIGI9UihhLEYuRC5NZSksYz1PKGEuTSxGLkQuemEpLGQ9YztkfHwoZD1iPT09MT9BLnRvcC5sb2NhdGlvbi5ocmVmOkEubG9jYXRpb24uaHJlZik7VShhLEYuRC56YSx4TChkKSk7YS5jb3B5VG9IaXREYXRhKEYuRC5VYSxCLnJlZmVycmVyKTtVKGEsRi5ELk1iLHlMKCkpO2EuY29weVRvSGl0RGF0YShGLkQudGIpO3ZhciBlPXFJKCk7VShhLEYuRC5iZCxlLndpZHRoKyJ4IitlLmhlaWdodCk7dmFyIGY9TSg1ODMpJiYhIWM7d0woYSxkLGZ1bmN0aW9uKGcpe3ZhciBoPXhMKGcpO2YmJihoPWguc3BsaXQoIj8iKVswXSk7cmV0dXJuIGh9KX19Owp2YXIgeEw9ZnVuY3Rpb24oYSl7aWYoYSE9bnVsbCl7dmFyIGI9U3RyaW5nKGEpLnN1YnN0cmluZygwLDUxMiksYz1iLmluZGV4T2YoIiMiKTtyZXR1cm4gYz09PS0xP2I6Yi5zdWJzdHJpbmcoMCxjKX1yZXR1cm4iIn0seUw9ZnVuY3Rpb24oKXt2YXIgYT1CLnRpdGxlO2lmKGE9PT12b2lkIDB8fGE9PT0iIilyZXR1cm4iIjthPWVuY29kZVVSSUNvbXBvbmVudChhKTtmb3IodmFyIGI9MjU2O2I+MCYmS2ooYS5zdWJzdHJpbmcoMCxiKSk9PT12b2lkIDA7KWItLTtyZXR1cm4gS2ooYS5zdWJzdHJpbmcoMCxiKSl8fCIifTtmdW5jdGlvbiBBTChhKXtWKGEsSC5KLkphLCEwKTtWKGEsSC5KLkViLE5iKCkpO1YoYSxILkoueW4sYS5NLmV2ZW50TWV0YWRhdGFbSC5KLkphXSl9O3ZhciBCTD1mdW5jdGlvbihhKXtNKDQ3KSYmYS5jb3B5VG9IaXREYXRhKEYuRC5raCl9O3ZhciBDTD1mdW5jdGlvbihhKXt2YXIgYj1NKDQ0MyksYz1NKDU3MCk7aWYoKGJ8fGMpJiZYbyhmcCkpe3ZhciBkPVEoYSxILkouWWEpO2lmKGh3KGQpKXt2YXIgZT1RKGEsSC5KLkdhKTtpZihiKXt2YXIgZj1RKGEsSC5KLnpqKXx8VHYoZSk7VShhLEYuRC54YyxmKX1pZihjKXt2YXIgZz1TdihlLHtYaDohMH0pLmlrO2cmJlUoYSwiXyZlY3NpZDIiLGcpfX19fTt2YXIgREw9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5RbSk7YiYmVShhLEYuRC5XYyxiKX07dmFyIEVMPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi5fX2dzYUV4cCYmYi5fX2dzYUV4cC5pZCl7dmFyIGM9Yi5fX2dzYUV4cC5pZDtpZih5YihjKSl0cnl7dmFyIGQ9TnVtYmVyKGMoKSk7aXNOYU4oZCl8fFUoYSxGLkQuUGwsZCl9Y2F0Y2goZSl7fX19O3ZhciBGTD1mdW5jdGlvbihhKXthLmNvcHlUb0hpdERhdGEoRi5ELk5lKTthLmNvcHlUb0hpdERhdGEoRi5ELkdlKTthLmNvcHlUb0hpdERhdGEoRi5ELlVkKTthLmNvcHlUb0hpdERhdGEoRi5ELkllKTthLmNvcHlUb0hpdERhdGEoRi5ELlRjKTthLmNvcHlUb0hpdERhdGEoRi5ELkxkKX07dmFyIEdMPWZ1bmN0aW9uKGEpe2lmKFhvKEYuRC5tYSkpe2EuY29weVRvSGl0RGF0YShGLkQuZmIpO3ZhciBiPW5tKGptLmJhLlpxKTtpZihiPT09dm9pZCAwKW1tKGptLmJhLmFyLCEwKTtlbHNle3ZhciBjPW5tKGptLmJhLnNqKTtVKGEsRi5ELlpmLGMrIi4iK2IpfX19Owp2YXIgTUw9ZnVuY3Rpb24oYSxiKXtpZihhJiYoemIoYSkmJihhPWJDKGEpKSxhKSl7dmFyIGM9dm9pZCAwLGQ9ITEsZT1PKGIsRi5ELmtxKTtpZihlJiZBcnJheS5pc0FycmF5KGUpKXtjPVtdO2Zvcih2YXIgZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1iQyhlW2ZdKTtnJiYoYy5wdXNoKGcpLChhLmlkPT09Zy5pZHx8YS5pZD09PWEuZGVzdGluYXRpb25JZCYmYS5kZXN0aW5hdGlvbklkPT09Zy5kZXN0aW5hdGlvbklkKSYmKGQ9ITApKX19aWYoIWN8fGQpe3ZhciBoPU8oYixGLkQuWWwpLGw7aWYoaCl7bD1BcnJheS5pc0FycmF5KGgpP2g6W2hdO3ZhciBuPU8oYixGLkQuV2wpLHA9TyhiLEYuRC5YbCkscT1PKGIsRi5ELlpsKSxyPVFvKE8oYixGLkQuanEpKSx0PW58fHAsdT0xO2EucHJlZml4IT09IlVBInx8Y3x8KHU9NSk7Zm9yKHZhciB2PTA7djxsLmxlbmd0aDt2KyspaWYodjx1KWlmKGMpSEwoYyxsW3ZdLHIsYix7b2U6dCxvcHRpb25zOnF9KTtlbHNlIGlmKGEucHJlZml4PT09CiJBVyImJmEuaWRzW2RDWzFdXSl7dmFyIHg9YS5pZHNbZENbMF1dLHk9YS5pZHNbZENbMV1dLHo9bFt2XSxDPWIsRD17b2U6dCxvcHRpb25zOnF9O1AoMjIpO2lmKHope0Q9RHx8e307dmFyIEk9SUwoSkwsRCx4LEMpLEc9e2FrOngsY2w6eX07RC5vZT09PXZvaWQgMCYmKEcuYXV0b3JlcGxhY2U9eik7S0woRyxDKTtJKDIsRC5vZSxHLHosMCxNYigpLEQub3B0aW9ucyl9fWVsc2UgaWYoYS5wcmVmaXg9PT0iVUEiKXt2YXIgTj1hLmRlc3RpbmF0aW9uSWQsUz1sW3ZdLFc9e29lOnR9O1AoMjMpO2lmKFMpe1c9V3x8e307dmFyIGVhPUlMKExMLFcsTiksamE9e307Vy5vZSE9PXZvaWQgMD9qYS5yZWNlaXZlcj1XLm9lOmphLnJlcGxhY2U9UztqYS5nYV93cGlkPU47amEuZGVzdGluYXRpb249UztlYSgyLE1iKCksamEpfX19fX19LEhMPWZ1bmN0aW9uKGEsYixjLGQsZSl7UCgyMSk7aWYoYiYmYyl7ZT1lfHx7fTtmb3IodmFyIGY9e2NvdW50cnlOYW1lQ29kZTpjLGRlc3RpbmF0aW9uTnVtYmVyOmIsCnJldHJpZXZhbFRpbWU6TWIoKX0sZz1hbCg0LGZ1bmN0aW9uKCl7cmV0dXJue319KSxoPTA7aDxhLmxlbmd0aDtoKyspe3ZhciBsPWFbaF07Z1tsLmlkXXx8KGwmJmwucHJlZml4PT09IkFXIiYmIWYuYWREYXRhJiZsLmlkcy5sZW5ndGg+PTI/KGYuYWREYXRhPXthazpsLmlkc1tkQ1swXV0sY2w6bC5pZHNbZENbMV1dfSxLTChmLmFkRGF0YSxkKSxnW2wuaWRdPSEwKTpsJiZsLnByZWZpeD09PSJVQSImJiFmLmdhRGF0YSYmKGYuZ2FEYXRhPXtnYVdwaWQ6bC5kZXN0aW5hdGlvbklkfSxnW2wuaWRdPSEwKSl9KGYuZ2FEYXRhfHxmLmFkRGF0YSkmJklMKE5MLGUsdm9pZCAwLGQpKGUub2UsZixlLm9wdGlvbnMpfX0sS0w9ZnVuY3Rpb24oYSxiKXthLmRtYT0kdCgpO2F1KCkmJihhLmRtYUNwcz1adCgpKTtTdChiKT9hLm5wYT0iMCI6YS5ucGE9IjEifSxJTD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1BO2lmKGVbYS5mdW5jdGlvbk5hbWVdKXJldHVybiBiLnJvJiZiZChiLnJvKSxlW2EuZnVuY3Rpb25OYW1lXTsKdmFyIGY9T0woKTtlW2EuZnVuY3Rpb25OYW1lXT1mO2lmKGEuYWRkaXRpb25hbFF1ZXVlcylmb3IodmFyIGc9MDtnPGEuYWRkaXRpb25hbFF1ZXVlcy5sZW5ndGg7ZysrKWVbYS5hZGRpdGlvbmFsUXVldWVzW2ddXT1lW2EuYWRkaXRpb25hbFF1ZXVlc1tnXV18fE9MKCk7YS5pZEtleSYmZVthLmlkS2V5XT09PXZvaWQgMCYmKGVbYS5pZEtleV09Yyk7Wm4oe2Rlc3RpbmF0aW9uSWQ6RSg1KSxlbmRwb2ludDowLGV2ZW50SWQ6ZD09bnVsbD92b2lkIDA6ZC5ldmVudElkLHByaW9yaXR5SWQ6ZD09bnVsbD92b2lkIDA6ZC5wcmlvcml0eUlkfSxkQSgiaHR0cHM6Ly8iLCJodHRwOi8vIixhLnNjcmlwdFVybCksYi5ybyxiLnR2KTtyZXR1cm4gZn0sT0w9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7YS5xPWEucXx8W107YS5xLnB1c2goYXJndW1lbnRzKX1yZXR1cm4gYX0sSkw9e2Z1bmN0aW9uTmFtZToiX2dvb2dXY21JbXBsIixpZEtleToiX2dvb2dXY21BayIsc2NyaXB0VXJsOiJ3d3cuZ3N0YXRpYy5jb20vd2NtL2xvYWRlci5qcyJ9LApMTD17ZnVuY3Rpb25OYW1lOiJfZ2FQaG9uZUltcGwiLGlkS2V5OiJnYV93cGlkIixzY3JpcHRVcmw6Ind3dy5nc3RhdGljLmNvbS9nYXBob25lL2xvYWRlci5qcyJ9LFBMPXtZbzpMZigyKSxncjoiNSJ9LE5MPXtmdW5jdGlvbk5hbWU6Il9nb29nQ2FsbFRyYWNraW5nSW1wbCIsYWRkaXRpb25hbFF1ZXVlczpbTEwuZnVuY3Rpb25OYW1lLEpMLmZ1bmN0aW9uTmFtZV0sc2NyaXB0VXJsOiJ3d3cuZ3N0YXRpYy5jb20vY2FsbC10cmFja2luZy9jYWxsLXRyYWNraW5nXyIrKFBMLllvfHxQTC5ncikrIi5qcyJ9O3ZhciBRTD1mdW5jdGlvbihhKXtRKGEsSC5KLnNhKXx8TUwoYS50YXJnZXQsYS5NKTthLmlzQWJvcnRlZD0hMH07dmFyIFJMPWZ1bmN0aW9uKGEpe1hvKEYuRC5rYSkmJmN4KGEpfTt2YXIgU0w9ZnVuY3Rpb24oYSl7dmFyIGI9WG8oRi5ELmthKT9taigicHNjZGwiKToiZGVuaWVkIjtiIT1udWxsJiZVKGEsRi5ELmpoLGIpfTt2YXIgVEw9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9fTt2YXIgVUw9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLk07aWYoYj09PXZvaWQgMD8wOmIpe3ZhciBkPWMuZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSk7WWIoZCkmJlUoYSxGLkQuTGksWWIoZCkpfXZhciBlPU9vKGZEKEYuRC5PYSkpLGY9Yy5nZXRNZXJnZWRWYWx1ZXMoRi5ELk9hLDEsZSksZz1jLmdldE1lcmdlZFZhbHVlcyhGLkQuT2EsMiksaD1ZYihuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGYsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxUTC5IKSksIi4iKSxsPVliKGcsIi4iKTtoJiZVKGEsRi5ELlhjLGgpO2wmJlUoYSxGLkQuVmMsbCl9O3ZhciBWTD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLnRxKTtiJiZVKGEsRi5ELklsLGIpfTtmdW5jdGlvbiBXTChhKXt2YXIgYj1LQighMSk7aWYoYiE9bnVsbCYmYi5zdGF0dXMpe3ZhciBjPXtndGI6Yi5zdGF0dXN9O2IuZGVsYXkmJihjLmd0YmQ9Yi5kZWxheSk7YS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLGMpfX07dmFyIFhMPWZ1bmN0aW9uKGEpe3ptKCk9PT0iVVMtQ08iJiZVKGEsRi5ELkxlLDEpfTt2YXIgWUw9e1JhOntDazoxLHpuOjIsSG46MyxJbjo0LEpuOjUsd246Nn19O1lMLlJhW1lMLlJhLkNrXT0iQURPQkVfQ09NTUVSQ0UiO1lMLlJhW1lMLlJhLnpuXT0iU1FVQVJFU1BBQ0UiO1lMLlJhW1lMLlJhLkhuXT0iV09PX0NPTU1FUkNFIjtZTC5SYVtZTC5SYS5Jbl09IldPT19DT01NRVJDRV9MRUdBQ1kiO1lMLlJhW1lMLlJhLkpuXT0iV09SRF9QUkVTUyI7WUwuUmFbWUwuUmEud25dPSJTSE9QSUZZIjtmdW5jdGlvbiBaTChhKXt2YXIgYj1BO3JldHVybiBLaihiLmVzY2FwZShiLmF0b2IoYSkpKX0KZnVuY3Rpb24gJEwoKXt0cnl7aWYoIU0oNDk4KSYmIU0oNDI1KSlyZXR1cm5bXTt2YXIgYT1ubShqbS5iYS5sbik7aWYoQXJyYXkuaXNBcnJheShhKSlyZXR1cm4gYTt2YXIgYj1bXSxjO2E6e3RyeXtjPSEhQi5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbZGF0YS1yZXF1aXJlbW9kdWxlXj0ibWFnZS8iXScpO2JyZWFrIGF9Y2F0Y2goeSl7fWM9ITF9YyYmYi5wdXNoKFlMLlJhLkNrKTt2YXIgZDthOnt0cnl7dmFyIGU9WkwoIllYTnpaWFJ6TG5OeGRXRnlaWE53WVdObExtTnZiUzg9Iik7ZD1lPyEhQi5xdWVyeVNlbGVjdG9yKCdzY3JpcHRbc3JjXj0iLy8nK2UrJyJdJyk6ITE7YnJlYWsgYX1jYXRjaCh5KXt9ZD0hMX1kJiZiLnB1c2goWUwuUmEuem4pO3ZhciBmO2E6e2lmKE0oNDI1KSl0cnl7dmFyIGc9WkwoImMyaHZjR2xtZVM1amIyMD0iKSxoPVpMKCJjMmh2Y0dsbWVXTmtiaTVqYjIwPSIpO2Y9ZyYmaD8hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyYyo9ImNkbi4nK2crJyJdLG1ldGFbcHJvcGVydHk9Im9nOmltYWdlIl1bY29udGVudCo9ImNkbi4nKwooZysnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iY2RuLicpKyhnKyciXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJmb250cy4nKSsoaCsnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iaXRlcmFibGUtc2hvcGlmeSJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9InYuJykrKGcrJyJdJykpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fWY9ITF9ZiYmYi5wdXNoKFlMLlJhLnduKTt2YXIgbDthOnt0cnl7bD0hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyYyo9Indvb2NvbW1lcmNlIl0sbGlua1tocmVmKj0id29vY29tbWVyY2UiXSxbY2xhc3N8PSJ3b29jb21tZXJjZSJdJyk7YnJlYWsgYX1jYXRjaCh5KXt9bD0hMX1sJiZiLnB1c2goWUwuUmEuSW4pO3ZhciBuO2E6e3RyeXt2YXIgcCxxPSgocD1CLmxvY2F0aW9uKT09bnVsbD92b2lkIDA6cC5ob3N0bmFtZSl8fCIiLHIsdD0oKHI9Qi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOnIub3JpZ2luKXx8CiIiLHU9WkwoIkxuZHZjbVJ3Y21WemN5NWpiMjA9Iiksdj1aTCgiTHk5ekxuY3ViM0puIik7bj11JiZ2P1RiKHEsdSl8fCEhQi5xdWVyeVNlbGVjdG9yKCdbc3JjXj0iJyt0Kycvd3AtY29udGVudCJdLG1ldGFbbmFtZT0iZ2VuZXJhdG9yIl1bY29udGVudF49IldvcmRQcmVzcyAiXSxsaW5rW3JlbD0iZG5zLXByZWZldGNoIl1baHJlZj0iJysodisnIl0nKSk6ITE7YnJlYWsgYX1jYXRjaCh5KXt9bj0hMX1uJiZiLnB1c2goWUwuUmEuSm4pO3ZhciB4O2E6e3RyeXt4PSEhQi5xdWVyeVNlbGVjdG9yKCdbY2xhc3MqPSJ3b29jb21tZXJjZSJdLG1ldGFbbmFtZT0iZ2VuZXJhdG9yIl1bY29udGVudF49Ildvb0NvbW1lcmNlICJdJyk7YnJlYWsgYX1jYXRjaCh5KXt9eD0hMX14JiZiLnB1c2goWUwuUmEuSG4pO1VCKCkmJm1tKGptLmJhLmxuLGIpO3JldHVybiBifWNhdGNoKHkpe31yZXR1cm5bXX07ZnVuY3Rpb24gd00oYSl7aWYoTSg0MjUpJiZRKGEsSC5KLkZjKSl7dmFyIGI9TmYoNjcsMTUwMCksYz1hLm1lcmdlSGl0RGF0YUZvcktleSxkPUYuRC5UYSxlPXt9O2MuY2FsbChhLGQsZSl9fTt2YXIgeE09InBsYXRmb3JtIHBsYXRmb3JtVmVyc2lvbiBhcmNoaXRlY3R1cmUgbW9kZWwgdWFGdWxsVmVyc2lvbiBiaXRuZXNzIGZ1bGxWZXJzaW9uTGlzdCB3b3c2NCIuc3BsaXQoIiAiKTtmdW5jdGlvbiB5TShhKXt2YXIgYjtyZXR1cm4oYj1hLmdvb2dsZV90YWdfZGF0YSkhPW51bGw/YjphLmdvb2dsZV90YWdfZGF0YT17fX1mdW5jdGlvbiB6TShhKXt2YXIgYixjO3JldHVybihjPShiPWEuZ29vZ2xlX3RhZ19kYXRhKT09bnVsbD92b2lkIDA6Yi51YWNoX3Byb21pc2UpIT1udWxsP2M6bnVsbH1mdW5jdGlvbiBBTShhKXt2YXIgYixjO3JldHVybiB0eXBlb2YoKGI9YS5uYXZpZ2F0b3IpPT1udWxsP3ZvaWQgMDooYz1iLnVzZXJBZ2VudERhdGEpPT1udWxsP3ZvaWQgMDpjLmdldEhpZ2hFbnRyb3B5VmFsdWVzKT09PSJmdW5jdGlvbiJ9CmZ1bmN0aW9uIEJNKGEpe2lmKCFBTShhKSlyZXR1cm4gbnVsbDt2YXIgYj15TShhKTtpZihiLnVhY2hfcHJvbWlzZSlyZXR1cm4gYi51YWNoX3Byb21pc2U7dmFyIGM9YS5uYXZpZ2F0b3IudXNlckFnZW50RGF0YS5nZXRIaWdoRW50cm9weVZhbHVlcyh4TSkudGhlbihmdW5jdGlvbihkKXtiLnVhY2ghPW51bGx8fChiLnVhY2g9ZCk7cmV0dXJuIGR9KTtyZXR1cm4gYi51YWNoX3Byb21pc2U9Y307CnZhciBDTT1mdW5jdGlvbigpe3RoaXMud2luZG93PUE7dGhpcy5OPU5ifTtDTS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe2lmKEFNKHRoaXMud2luZG93KSYmKHRoaXMuWj10aGlzLk4oKSwhek0odGhpcy53aW5kb3cpKSl7dmFyIGE9Qk0odGhpcy53aW5kb3cpO2EmJmEudGhlbihmdW5jdGlvbigpe1AoOTUpfSkuY2F0Y2goZnVuY3Rpb24oKXtQKDk2KX0pfX07Q00ucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLndpbmRvdy5nb29nbGVfdGFnX2RhdGEsYjtpZihhIT1udWxsJiZhLnVhY2gpe3ZhciBjPWEudWFjaCxkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyk7Yy5mdWxsVmVyc2lvbkxpc3QmJihkLmZ1bGxWZXJzaW9uTGlzdD1jLmZ1bGxWZXJzaW9uTGlzdC5zbGljZSgwKSk7Yj1kfWVsc2UgYj1udWxsO3JldHVybiBifTtDTS5wcm90b3R5cGUuZmE9ZnVuY3Rpb24oYSl7dmFyIGI9MCxjPXRoaXMsZD1mdW5jdGlvbihoLGwpe3RyeXthKGgsbCl9Y2F0Y2gobil7fX0sCmU9dGhpcy5IKCk7aWYoZSlkKGUpO2Vsc2V7dmFyIGY9ek0odGhpcy53aW5kb3cpO2lmKGYpe2I9TWF0aC5taW4oTWF0aC5tYXgoaXNGaW5pdGUoYik/YjowLDApLDFFMyk7dmFyIGc9dGhpcy53aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpe2QuS2d8fChkLktnPSEwLFAoMTA2KSxkKG51bGwsRXJyb3IoIlRpbWVvdXQiKSkpfSxiKTtmLnRoZW4oZnVuY3Rpb24oaCl7ZC5LZ3x8KGQuS2c9ITAsUCgxMDQpLGMud2luZG93LmNsZWFyVGltZW91dChnKSxkKGgpKX0pLmNhdGNoKGZ1bmN0aW9uKGgpe2QuS2d8fChkLktnPSEwLFAoMTA1KSxjLndpbmRvdy5jbGVhclRpbWVvdXQoZyksZChudWxsLGgpKX0pfWVsc2UgZChudWxsKX19O0NNLnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuWiE9PXZvaWQgMH07dmFyIERNPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwP0E6YTtyZXR1cm4gQU0oYSl9LEVNPWZ1bmN0aW9uKGEpe3ZhciBiPXt9O2JbRi5ELmNnXT1hLmFyY2hpdGVjdHVyZTsKYltGLkQuZGddPWEuYml0bmVzczthLmZ1bGxWZXJzaW9uTGlzdCYmKGJbRi5ELmVnXT1hLmZ1bGxWZXJzaW9uTGlzdC5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChjLmJyYW5kfHwiIikrIjsiK2VuY29kZVVSSUNvbXBvbmVudChjLnZlcnNpb258fCIiKX0pLmpvaW4oInwiKSk7YltGLkQuZmddPWEubW9iaWxlPyIxIjoiMCI7YltGLkQuZ2ddPWEubW9kZWw7YltGLkQuaGddPWEucGxhdGZvcm07YltGLkQuaWddPWEucGxhdGZvcm1WZXJzaW9uO2JbRi5ELmpnXT1hLndvdzY0PyIxIjoiMCI7cmV0dXJuIGJ9LEZNPW5ldyBDTTt2YXIgR009ZnVuY3Rpb24oYSl7aWYoIURNKCkpUCg4Nyk7ZWxzZSBpZihGTS5LKCkpe1AoODUpO3ZhciBiPUZNLkgoKTtpZihiKXtpZihiKWZvcih2YXIgYz1FTShiKSxkPW0oT2JqZWN0LmtleXMoYykpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO1UoYSxmLGNbZl0pfX1lbHNlIFAoODYpfX07ZnVuY3Rpb24gSE0oYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1RKGEsSC5KLnNnKSxkPWRJKGEsImN1c3RvbV9ldmVudF9hY2NlcHRfcnVsZXMiLCExKSYmIWI7aWYoYyl7dmFyIGU9Yy5pbmRleE9mKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpPj0wLGY9ITA7UShhLEguSi5DYykmJihmPVEoYSxILkouTmIpPT09dmsoKSk7ZSYmZj9WKGEsSC5KLmtpLCEwKTooVihhLEguSi5raSwhMSksZHx8KGEuaXNBYm9ydGVkPSEwKSk7aWYoYS5jYW5CZUFjY2VwdGVkKCkpe3ZhciBnPXVrKCkuaW5kZXhPZihhLnRhcmdldC5kZXN0aW5hdGlvbklkKT49MCxoPSExO2lmKCFnKXt2YXIgbCxuPShsPW5rKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpKT09bnVsbD92b2lkIDA6bC5jYW5vbmljYWxDb250YWluZXJJZDtuJiYoaD12aygpPT09bil9Z3x8aD9RKGEsSC5KLmtpKSYmYS5hY2NlcHQoKTphLmlzQWJvcnRlZD0hMH1lbHNlIGEuaXNBYm9ydGVkPSEwfX07dmFyIElNPWZ1bmN0aW9uKGEpe3ZhciBiPU8oYS5NLEYuRC5aYyksYz1PKGEuTSxGLkQuWWMpO2ImJiFjPyhhLmV2ZW50TmFtZSE9PUYuRC53YSYmYS5ldmVudE5hbWUhPT1GLkQueWYmJlAoMTMxKSxhLmlzQWJvcnRlZD0hMCk6IWImJmMmJihQKDEzMiksYS5pc0Fib3J0ZWQ9ITApfTt2YXIgSk09ZnVuY3Rpb24oYSl7aWYoYS5ldmVudE5hbWU9PT1GLkQud2Epe3ZhciBiPUlmKDExKSxjPVEoYSxILkouSHEpOyEoIU0oNTUwKSYmYnx8Yyl8fGEudGFyZ2V0LkpjKCl8fFlHKCJpZGNfY29uZmlnX3B2IixhLnRhcmdldC5kZXN0aW5hdGlvbklkKXx8KGEuaXNBYm9ydGVkPSEwKX19O3ZhciBMTT1mdW5jdGlvbihhLGIpe0tNLk4oYSxiKX0sTU09ZnVuY3Rpb24oKXt0aGlzLkg9e319O01NLnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5IW2FdO2N8fChjPXRoaXMuSFthXT1bXSk7Yy5wdXNoKGIpfTtNTS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLkhbYS50YXJnZXQuZGVzdGluYXRpb25JZF07aWYoIWEuaXNBYm9ydGVkJiZiKWZvcih2YXIgYz1mSShhKSxkPTA7ZDxiLmxlbmd0aDsrK2Qpe3RyeXtiW2RdKGMpfWNhdGNoKGUpe2EuaXNBYm9ydGVkPSEwfWlmKGEuaXNBYm9ydGVkKWJyZWFrfX07dmFyIEtNPW5ldyBNTTt2YXIgTk09ZnVuY3Rpb24oYSl7S00uSyhhKTt9O3ZhciBPTT1mdW5jdGlvbihhKXthJiYoQXAoNDk1LGEpLEFwKDU2NyxhKSxBcCg0NTAsYSksQXAoNDQzLGEpLEFwKDU4NyxhKSxBcCg1NzYsYSksQXAoNTcwLGEpLEFwKDU4MSxhKSxBcCg2MDIsYSkpfSxQTT1mdW5jdGlvbihhKXtpZihRKGEsSC5KLndmKSYmWG8oZnApKXt2YXIgYj1RKGEsSC5KLkdhKSxjPVEoYSxILkouZGEpIT09WC5WLnViJiZRKGEsSC5KLmRhKSE9PVguVi5PYiYmUShhLEguSi5kYSkhPT1YLlYuRmImJmEuZXZlbnROYW1lIT09Ri5ELkpiO0h2KGIsYyk7dmFyIGQ9RHZbR3YoYi5wcmVmaXgpXTtPTShkKTtVKGEsRi5ELkVkLGQpfX07ZnVuY3Rpb24gUU0oKXtyZXR1cm4ga2ooImRlZHVwZV9nY2xpZCIsZnVuY3Rpb24oKXtyZXR1cm4gQXYoKX0pfTt2YXIgUk09L14od3d3XC4pP2dvb2dsZShcLmNvbT8pPyhcLlthLXpdezJ9dD8pPyQvLFNNPS9ed3d3Lmdvb2dsZWFkc2VydmljZXMuY29tJC87ZnVuY3Rpb24gVE0oYSl7YXx8KGE9VU0oKSk7cmV0dXJuIGEuTnQ/ITE6YS5uc3x8YS5xc3x8YS52c3x8YS5yc3x8YS5EZ3x8YS5UaHx8YS5Ucnx8YS5WaD09PSJhdy5kcyJ8fE0oMjM1KSYmYS5WaD09PSJhdy5kdiJ8fGEuWXI/ITA6ITF9CmZ1bmN0aW9uIFVNKCl7dmFyIGE9e30sYj1VcSghMCk7YS5OdD0hIWIuX3VwO3ZhciBjPWVzKCksZD1hdCgpO2EubnM9Yy5hdyE9PXZvaWQgMDthLnFzPWMuZGMhPT12b2lkIDA7YS52cz1jLndicmFpZCE9PXZvaWQgMDthLnJzPWMuZ2JyYWlkIT09dm9pZCAwO2EuVmg9dHlwZW9mIGMuZ2Nsc3JjPT09InN0cmluZyI/Yy5nY2xzcmM6dm9pZCAwO2EuRGc9ZC5EZzthLlRoPWQuVGg7dmFyIGU9Qi5yZWZlcnJlcj9MaihSaihCLnJlZmVycmVyKSwiaG9zdCIpOiIiO2EuWXI9Uk0udGVzdChlKTthLlRyPVNNLnRlc3QoZSk7cmV0dXJuIGF9O2Z1bmN0aW9uIFZNKCl7dmFyIGE9QS5fX3VzcGFwaTtpZih5YihhKSl7dmFyIGI9IiI7dHJ5e2EoImdldFVTUERhdGEiLDEsZnVuY3Rpb24oYyxkKXtpZihkJiZjKXt2YXIgZT1jLnVzcFN0cmluZztlJiZSZWdFeHAoIl5bXFxkYS16QS1aLV17MSwyMH0kIikudGVzdChlKSYmKGI9ZSl9fSl9Y2F0Y2goYyl7fXJldHVybiBifX07CnZhciBXTT1mdW5jdGlvbihhKXt2YXIgYj1YbyhmcCk7VihhLEguSi5ZZSxPKGEuTSxGLkQubWIpIT1udWxsJiZPKGEuTSxGLkQubWIpIT09ITEmJiFiKTt2YXIgYz1RKGEsSC5KLmRqKSxkPU8oYS5NLEYuRC51YykhPT0hMSxlPUxLKGEpO2R8fFUoYSxGLkQuSGQsIjEiKTt2YXIgZj1IcihlLnByZWZpeCksZz1RKGEsSC5KLnNhKXx8UShhLEguSi51Zyl8fFEoYSxILkouV2UpO2N8fGd8fFUoYSwiXyZhcHZjIiwiMCIpO2EuTS5pc0d0bUV2ZW50JiZVKGEsRi5ELklsLCJnIik7VShhLEYuRC5FZCk7VShhLEYuRC5NYik7aWYoYiYmKFUoYSxGLkQuTWIseUwoKSksZCkpe0h2KGUpO3ZhciBoPUR2W0d2KGUucHJlZml4KV07VShhLEYuRC5FZCxoKTtPTShoKX1pZihhLmV2ZW50TmFtZT09PUYuRC53YSYmIWcpe3ZhciBsPU8oYS5NLEYuRC56Yyksbj1PKGEuTSxGLkQuRGIpfHx7fTtQSyh7VG46ZCxtbzpuLFFvOmwsVW46ZX0pOyFjJiZZcyhmKSYmKFYoYSxILkoudmQsITApLFUoYSwiXyZhcHZjIiwKIjEiKSl9aWYoYylhLmlzQWJvcnRlZD0hMDtlbHNle2EudGFyZ2V0LmRlc3RpbmF0aW9uSWQmJlUoYSxGLkQuUWUsYS50YXJnZXQuZGVzdGluYXRpb25JZCk7VShhLEYuRC5VYixhLmV2ZW50TmFtZSk7YS5ldmVudE5hbWU9PT1GLkQud2EmJlUoYSxGLkQuVWIsRi5ELnNjKTtpZihRKGEsSC5KLnNhKSlVKGEsRi5ELlViLEYuRC53cCksVShhLEYuRC5zYSwiMSIpO2Vsc2UgaWYoUShhLEguSi51ZykpVShhLEYuRC5VYixGLkQuSHApO2Vsc2UgaWYoUShhLEguSi5XZSkpVShhLEYuRC5VYixGLkQuRXApO2Vsc2V7dmFyIHA9ZXMoKTtVKGEsRi5ELkRkLHAuZ2NsaWQpO1UoYSxGLkQuS2QscC5kY2xpZCk7VShhLEYuRC5BbCxwLmdjbHNyYyk7aWYoIVIoYSxGLkQuRGQpJiYhUihhLEYuRC5LZCl8fE0oNDIxKSlVKGEsRi5ELkVlLHAud2JyYWlkKSxVKGEsRi5ELkJmLHAuZ2JyYWlkKTt2YXIgcT1NKDU4OSkscj1mdW5jdGlvbihmYSl7cmV0dXJuIGZhLnJlcGxhY2UoL1tcPyNdLiokLywiIil9LAp0PSEhTyhhLk0sRi5ELnphKSx1PXE/dD9mdW5jdGlvbihmYSl7cmV0dXJuIHhMKHIoZmEpKX06ZnVuY3Rpb24oZmEpe3JldHVybiB4TChmYS5yZXBsYWNlKC8jLiokLywiIikpfTpyLHY9YnQodSk7VShhLEYuRC56YSx2KTt2YXIgeD0hIU8oYS5NLEYuRC5VYSkseT1CLnJlZmVycmVyO1UoYSxGLkQuVWEscT94P3IoeSk6eS5yZXBsYWNlKC8jLiokLywiIik6Qi5yZWZlcnJlcj9MaihSaihCLnJlZmVycmVyKSwiaG9zdCIpOiIiKTt3TChhLHYsdSwhMCk7aWYoS2Mpe3ZhciB6PUxqKFJqKEtjKSwiaG9zdCIpO3omJlUoYSxGLkQuYm0seil9aWYoIVEoYSxILkouV2UpKXt2YXIgQz1hdCgpO1UoYSxGLkQuemYsQy5EZyk7VShhLEYuRC5BZixDLlNyKX12YXIgRD1VTSgpO1RNKEQpJiZVKGEsRi5ELlBkLCIxIik7VShhLEYuRC5EbCxRTSgpKTtVcSghMSkuX3VwPT09IjEiJiZVKGEsRi5ELlFsLCIxIil9d28uSD0hMDtVKGEsRi5ELlNiKTtVKGEsRi5ELmxiKTtpZihNKDQyMSkpe3ZhciBJPUZyKGUpOwpJLmxlbmd0aD4wJiZVKGEsRi5ELlNiLEkuam9pbigiLiIpKTt2YXIgRz1EcihmKyJfYXciKTtHLmxlbmd0aD4wJiZVKGEsRi5ELmxiLEcuam9pbigiLiIpKX1lbHNlIGlmKCFSKGEsRi5ELkRkKSYmIVIoYSxGLkQuS2QpJiZXcyhmKSl7dmFyIE49RnIoZSk7Ti5sZW5ndGg+MCYmVShhLEYuRC5TYixOLmpvaW4oIi4iKSl9ZWxzZSBpZighUihhLEYuRC5FZSkmJmIpe3ZhciBTPURyKGYrIl9hdyIpO1MubGVuZ3RoPjAmJlUoYSxGLkQubGIsUy5qb2luKCIuIikpfVUoYSxGLkQuVWwscWQoKSk7YS5NLmlzR3RtRXZlbnQmJihhLk0uRWFbRi5ELlJjXT1mRChGLkQuUmMpKTtTdChhLk0pP1UoYSxGLkQuZGUsITEpOlUoYSxGLkQuZGUsITApO1YoYSxILkouQmssITApO3ZhciBXPVZNKCk7VyE9PXZvaWQgMCYmVShhLEYuRC5rZyxXfHwiZXJyb3IiKTt2YXIgZWE9THQoKTtlYSYmVShhLEYuRC5LZSxlYSk7dmFyIGphPUt0KCk7amEmJlUoYSxGLkQuT2UsamEpO1EoYSxILkouUGMpfHxWKGEsSC5KLkphLAohMSl9fTsKdmFyIFhNPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITA6YjtjPWM9PT12b2lkIDA/e306YztpZihhLmV2ZW50TmFtZT09PUYuRC5KYiYmIWEuTS5pc0d0bUV2ZW50KXt2YXIgZD1PKGEuTSxGLkQuU2YpO2lmKHR5cGVvZiBkPT09ImZ1bmN0aW9uIiYmIVEoYSxILkouc2EpKXt2YXIgZT1TdHJpbmcoTyhhLk0sRi5ELlRmKSksZj1lO2NbZV0mJihmPWNbZV0pO3ZhciBnPVIoYSxmKXx8TyhhLk0sZSk7aWYoYil7aWYodHlwZW9mIGQ9PT0iZnVuY3Rpb24iKWlmKGU9PT1GLkQubGImJmchPT12b2lkIDApe3ZhciBoPWcuc3BsaXQoIi4iKTtoLmxlbmd0aD09PTA/ZCh2b2lkIDApOmgubGVuZ3RoPT09MT9kKGhbMF0pOmQoaCl9ZWxzZSBpZihlPT09Ri5ELnFxJiZNKDI1OCkpe3ZhciBsLG49e307WG8oZnApJiYobi5hdWlkPVIoYSxGLkQuRWQpKTt2YXIgcD1VTSgpO2lmKFRNKHApKW4uZ2FkX3NvdXJjZT1wLkRnLG4uZ2FkX2NhbXBhaWduaWQ9cC5UaCxuLnNlc3Npb25fc3RhcnRfdGltZV91c2VjPQooRGF0ZS5ub3coKSoxRTMpLnRvU3RyaW5nKCksbi5sYW5kaW5nX3BhZ2VfdXJsPUEubG9jYXRpb24uaHJlZixuLmxhbmRpbmdfcGFnZV9yZWZlcnJlcj1CLnJlZmVycmVyLG4ubGFuZGluZ19wYWdlX3VzZXJfYWdlbnQ9SGMudXNlckFnZW50O2Vsc2V7dmFyIHE9UShhLEguSi5HYSk7bi5nYWRfc291cmNlPVJzKHEucHJlZml4KS5FZ31sPWJ0b2EoSlNPTi5zdHJpbmdpZnkobikpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIik7ZChsKX1lbHNlIGQoZyl9ZWxzZSBkKGcpfWEuaXNBYm9ydGVkPSEwfX07dmFyIFlNPWZ1bmN0aW9uKGEpe2lmKE0oNDI1KSYmUShhLEguSi5GYykpe2Zvcih2YXIgYj1bIl8mYXB2YyIsInRpZHMiLEYuRC5UYSxGLkQuUWksRi5ELlViLEYuRC5RZSxGLkQuVmMsRi5ELlhjXSxjPW0oZXUoYSkpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2lmKGU9PT1GLkQuemEpe3ZhciBmPVIoYSxlKTtmJiYoZj1mLnJlcGxhY2UoL1tcPyNdLiokLywiIikpO1UoYSxlLGYpfWVsc2UgYi5pbmNsdWRlcyhlKXx8VShhLGUpfVYoYSxILkouWGcpO1YoYSxILkouaGQpfX07ZnVuY3Rpb24gWk0oYSl7aWYoZm4uSylpZih3by5IPSEwLGEuZXZlbnROYW1lPT09Ri5ELndhKXpvKGEuTSxhLnRhcmdldC5pZCk7ZWxzZXtRKGEsSC5KLlBjKXx8KHdvLktbYS50YXJnZXQuaWRdPSEwKTt2YXIgYj1RKGEsSC5KLk5iKTtaQihiKX19O3ZhciAkTT1mdW5jdGlvbihhLGIpe3ZhciBjLGQsZSxmPWI9PT12b2lkIDA/e306YjtjPWYuU2o9PT12b2lkIDA/ITE6Zi5TajtkPWYuTWo9PT12b2lkIDA/ITE6Zi5NajtlPWYua289PT12b2lkIDA/ITE6Zi5rbztkfHwoYS5NLmlzR3RtRXZlbnQ/UShhLEguSi5kYSkhPT1YLlYueGEmJmEuZXZlbnROYW1lJiZVKGEsRi5ELlViLGEuZXZlbnROYW1lKTpVKGEsRi5ELlViLGEuZXZlbnROYW1lKSk7R2IoYS5NLkVhLGZ1bmN0aW9uKGcsaCl7TXpbZ118fGMmJkJvW2ddfHxlJiZPeltnXXx8VShhLGcsaCl9KX07dmFyIGFOPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1tKFtGLkQuUGEsRi5ELlFhLEYuRC5lYixGLkQuTmUsRi5ELkdlLEYuRC5VZCxGLkQuSWUsRi5ELlRjLEYuRC5MZCxGLkQua2gsRi5ELkZmLEYuRC5EZixGLkQuRWYsRi5ELkNmLEYuRC53aSxGLkQuU2QsRi5ELlFkLEYuRC5SZCxGLkQudGJdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSlhLmNvcHlUb0hpdERhdGEoYy52YWx1ZSl9O2Z1bmN0aW9uIGJOKGEsYil7cmV0dXJuIGtyKCJnc2lkX2RjIix7dmFsdWU6e2pvaW5JZDphLGxhc3RKb2luZWRUaW1lTXM6Yn0sZXhwaXJlczpiKzNFNX0pPT09MD8hMDohMX07CnZhciBjTj1mdW5jdGlvbihhKXtpZihYbyhmcCkpe3ZhciBiO2E6e3ZhciBjPW5yKCJnc2lkX2RjIik7aWYoYy5lcnJvcj09PTAmJmMudmFsdWUmJnR5cGVvZiBjLnZhbHVlPT09Im9iamVjdCIpe3ZhciBkPWMudmFsdWU7aWYoZC52YWx1ZSYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGU9ZC52YWx1ZTtpZihlLmpvaW5JZCYmZS5sYXN0Sm9pbmVkVGltZU1zJiZ0eXBlb2YgZS5qb2luSWQ9PT0ic3RyaW5nIiYmdHlwZW9mIGUubGFzdEpvaW5lZFRpbWVNcz09PSJudW1iZXIiKXtiPWU7YnJlYWsgYX19fWI9dm9pZCAwfXZhciBmPWIsZz1mPT1udWxsP3ZvaWQgMDpmLmpvaW5JZCxoPU5iKCk7aWYoIWZ8fCFnfHxmLmxhc3RKb2luZWRUaW1lTXM8aC0zRTUpe3ZhciBsPWNjKCk7Zz1sJiZiTihsLE5iKCkpP2w6dm9pZCAwO2cmJlYoYSxILkouaGQsITApfWVsc2UgZyYmZi5sYXN0Sm9pbmVkVGltZU1zPGgtNkU0JiZiTihmLmpvaW5JZCxoKSYmVihhLEguSi5oZCwhMCk7ZyYmTSg0NzQpJiYKVihhLEguSi5YZyxnKX19O3ZhciBkTj1mdW5jdGlvbihhKXtWKGEsSC5KLndmLE8oYS5NLEYuRC51YykhPT0hMSk7VihhLEguSi5HYSxMSyhhKSk7VihhLEguSi5YZSxPKGEuTSxGLkQubWIpIT1udWxsJiZPKGEuTSxGLkQubWIpIT09ITEpO1YoYSxILkoud2QsU3QoYS5NKSl9O3ZhciBlTj17enE6e1V0OiJjZCIsZnA6ImNlIixWdDoiY2YiLFd0OiJjcGYiLFh0OiJjdSJ9fTt2YXIgZk49ZnVuY3Rpb24oYSl7dmFyIGI9ZU4uenEuZnAsYz1PKGEuTSxGLkQuQ2IpO1IoYSxGLkQuZWQpfHxVKGEsRi5ELmVkLHt9KTtSKGEsRi5ELmVkKVtiXT1jfTtmdW5jdGlvbiBnTihhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjPXdiKHJiLkdUQUdfRVZFTlRfRkVBVFVSRV9DSEFOTkVMfHxbXSk7YyYmKFUoYSxGLkQuVmYsYyksYiYmdWIoKSl9O3ZhciBoTj1mdW5jdGlvbihhKXt2YXIgYj1hLk0uZ2V0TWVyZ2VkVmFsdWVzKEYuRC5UYSk7YiYmYS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLGIpfTt2YXIgaU49ZnVuY3Rpb24oYSl7dmFyIGI9T3AoITEpO1UoYSxGLkQuTWUsYil9O3ZhciBqTj1mdW5jdGlvbihhKXtRKGEsSC5KLndkKT9VKGEsRi5ELmRlLCIwIik6VShhLEYuRC5kZSwiMSIpfTt2YXIga049ZnVuY3Rpb24oYSxiKXtpZihiPT09dm9pZCAwfHxiKXt2YXIgYz1WTSgpO2MhPT12b2lkIDAmJlUoYSxGLkQua2csY3x8ImVycm9yIil9dmFyIGQ9THQoKTtkJiZVKGEsRi5ELktlLGQpO3ZhciBlPUt0KCk7ZSYmVShhLEYuRC5PZSxlKX07dmFyIGxOPWZ1bmN0aW9uKGEpe3ZhciBiPW5tKGptLmJhLmtqKSxjPUUoNSk7YiYmYltjXSYmYS5tZXJnZUhpdERhdGFGb3JLZXkoRi5ELlRhLHtyZXRyeToiMSJ9KX07dmFyIG1OPWZ1bmN0aW9uKGEpe1VxKCExKS5fdXA9PT0iMSImJlUoYSxGLkQuS2ksIjEiKX07CnZhciBuTj1mdW5jdGlvbihhLGIsYyl7aWYoYSE9PXZvaWQgMClyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hLm1hcChmdW5jdGlvbigpe3JldHVybnttb2RlOiJtIixsb2NhdGlvbjpiLHNlbGVjdG9yOmN9fSk6e21vZGU6Im0iLGxvY2F0aW9uOmIsc2VsZWN0b3I6Y319LG9OPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCFjKXJldHVybiExO2Zvcih2YXIgZT1TdHJpbmcoYy52YWx1ZSksZixnPXZvaWQgMCxoPWUucmVwbGFjZSgvXFsiPyc/L2csIi4iKS5yZXBsYWNlKC8iPyc/XF0vZywiIikuc3BsaXQoIiwiKS5tYXAoZnVuY3Rpb24odSl7cmV0dXJuIHUudHJpbSgpfSkuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiB1JiYhU2IodSwiIyIpJiYhU2IodSwiLiIpfSksbD0wO2w8aC5sZW5ndGg7bCsrKXt2YXIgbj1oW2xdO2lmKFNiKG4sImRhdGFMYXllci4iKSlmPXVBKG4uc3Vic3RyaW5nKDEwKSksZz1uTihmLCJkIixuKTtlbHNle3ZhciBwPW4uc3BsaXQoIi4iKTtmPUFbcC5zaGlmdCgpXTsKZm9yKHZhciBxPTA7cTxwLmxlbmd0aDtxKyspZj1mJiZmW3BbcV1dO2c9bk4oZiwiaiIsbil9aWYoZiE9PXZvaWQgMClicmVha31pZihmPT09dm9pZCAwKXRyeXt2YXIgcj1CLnF1ZXJ5U2VsZWN0b3JBbGwoZSk7aWYociYmci5sZW5ndGg+MCl7Zj1bXTtmb3IodmFyIHQ9MDt0PHIubGVuZ3RoJiZ0PChiPT09ImVtYWlsInx8Yj09PSJwaG9uZV9udW1iZXIiPzU6MSk7dCsrKWYucHVzaChmZChyW3RdKXx8TGIoclt0XS52YWx1ZSkpO2Y9Zi5sZW5ndGg9PT0xP2ZbMF06ZjtnPW5OKGYsImMiLGUpfX1jYXRjaCh1KXtQKDE0OSl9cmV0dXJuIGY/KGFbYl09ZixkJiZnJiYoZFtiXT1nKSwhMCk6ITF9Owp2YXIgcE49ZnVuY3Rpb24oYSl7aWYoZEkoYSwiY2NkX2FkZF8xcF9kYXRhIiwhMSkmJlhvKGZwKSl7dmFyIGI9YS5NLmliW0YuRC5sbV07aWYoQ2QoYikmJmIuZW5hYmxlX2NvZGUpe3ZhciBjPU8oYS5NLEYuRC5BYyk7aWYoYz09PW51bGwpVihhLEguSi5HbixudWxsKTtlbHNlIGlmKGIuZW5hYmxlX2NvZGUmJkNkKGMpJiYoWnYoYyksVihhLEguSi5HbixjKSksQ2QoYi5zZWxlY3RvcnMpKXt2YXIgZD1ILkouaXIsZTt2YXIgZj1iLnNlbGVjdG9ycyxnPU0oNTIzKTtnPWc9PT12b2lkIDA/ITE6ZztpZihmKXt2YXIgaD17fSxsPSExLG49e307bD1vTihoLCJlbWFpbCIsZi5lbWFpbCxuKXx8bDtsPW9OKGgsInBob25lX251bWJlciIsZi5waG9uZSxuKXx8bDtoLmFkZHJlc3M9W107Zm9yKHZhciBwPWYubmFtZV9hbmRfYWRkcmVzc3x8W10scT0wO3E8cC5sZW5ndGg7cSsrKXt2YXIgcj17fSx0PXt9O2w9b04ociwiZmlyc3RfbmFtZSIscFtxXS5maXJzdF9uYW1lLHQpfHxsO2w9b04ociwKImxhc3RfbmFtZSIscFtxXS5sYXN0X25hbWUsdCl8fGw7bD1vTihyLCJzdHJlZXQiLHBbcV0uc3RyZWV0LHQpfHxsO2w9b04ociwiY2l0eSIscFtxXS5jaXR5LHQpfHxsO2w9b04ociwicmVnaW9uIixwW3FdLnJlZ2lvbix0KXx8bDtsPW9OKHIsImNvdW50cnkiLHBbcV0uY291bnRyeSx0KXx8bDtsPW9OKHIsInBvc3RhbF9jb2RlIixwW3FdLnBvc3RhbF9jb2RlLHQpfHxsO2guYWRkcmVzcy5wdXNoKHIpO2cmJihyLl90YWdfbWV0YWRhdGE9dCl9ZyYmKGguX3RhZ19tZXRhZGF0YT1uKTtlPWw/aDp2b2lkIDB9ZWxzZSBlPXZvaWQgMDtWKGEsZCxlKX19fX07CnZhciBxTj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihlKXtVTChlLCEwKX0sYz1mdW5jdGlvbihlKXtwTihlKX0sZD1mdW5jdGlvbihlKXskTShlLHtTajohMCxNajohMH0pfTtzd2l0Y2goYSl7Y2FzZSBYLlYuUWs6cmV0dXJuW1BGLEFMLE1GLEhNLEpNLElNXTtjYXNlIFguVi5LYTpyZXR1cm5bZk4sWEwsWk0saU4sY04sV00sZCxTSyxhTixHTCxiLHdNLGxOLGhOLFZMLG9MLE5NLGZ1bmN0aW9uKGUpe2dOKGUsITEpfSxXTCxZTSxwTF07Y2FzZSBYLlYuTWs6cmV0dXJuW1pNLFFMXTtjYXNlIFguVi54YTpyZXR1cm5bVUssWEwsWk0sZE4sdkwsdEwsJE0sU0ssaU4sVkwsekwsR0wsYixxTCxGTCxCTCxFTCx1TCxqTixvTCxrTixtTixMRixjLGZOLFNMLGxOLGhOLFBNLFhNLEdNLE5NLFRLLERMLFFLLFJMLGdOLFdMLHBMXTtjYXNlIFguVi51YjpyZXR1cm5bWEwsWk0sZE4sdkwsJE0sU0ssaU4sekwsR0wsYixWTCxxTCxFTCx1TCxqTixvTCxrTixMRixTTCxmTixsTixoTixQTSxHTSwKTk0sVEssZ04sV0wscExdO2Nhc2UgWC5WLk9iOnJldHVybltYTCxaTSxkTix2TCxTSyxHTCxiLGpOLG9MLGlOLExGLGMsU0wsZk4sbE4saE4sVkwsUE0sR00sTk0sVEssZ04sV0wscExdO2Nhc2UgWC5WLkZiOnJldHVybltYTCxaTSxkTix2TCxTSyxHTCxiLGpOLG9MLGlOLFZMLExGLGMsU0wsZk4sbE4saE4sUE0sR00sTk0sVEssQ0wsZ04sV0wscExdO2RlZmF1bHQ6cmV0dXJuW119fSxyTj1mdW5jdGlvbihhKXtmb3IodmFyIGI9cU4oUShhLEguSi5kYSkpLGM9MDtjPGIubGVuZ3RoJiYoYltjXShhKSwhYS5pc0Fib3J0ZWQpO2MrKyk7fSxzTj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1uZXcgYUkoYi50YXJnZXQsYi5ldmVudE5hbWUsYi5NKSxkPW0oZXUoYikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO1UoYyxmLFIoYixmKSl9Zm9yKHZhciBnPW0oT2JqZWN0LmtleXMoYi5tZXRhZGF0YSkpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD0KaC52YWx1ZTtWKGMsbCxRKGIsbCkpfVYoYyxILkouZGEsYSk7cmV0dXJuIGN9LHROPWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUodSx2KXtmb3IodmFyIHg9bShsKSx5PXgubmV4dCgpOyF5LmRvbmU7eT14Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTt6LmlzQWJvcnRlZD0hMTtWKHosSC5KLkphLCEwKTtWKHosSC5KLnNhLCEwKTtWKHosSC5KLkViLE5iKCkpO1YoeixILkoudWYsdSk7Vih6LEguSi52Zix2KX19ZnVuY3Rpb24gZih1KXtmb3IodmFyIHY9e30seD0wO3g8bC5sZW5ndGg7dj17VmE6dm9pZCAwfSx4KyspaWYodi5WYT1sW3hdLCF1fHx1KFEodi5WYSxILkouZGEpKSlpZighUSh2LlZhLEguSi5zYSl8fFEodi5WYSxILkouZGEpIT09WC5WLkthfHxRKHYuVmEsSC5KLnZkKSlpZighUSh2LlZhLEguSi5zYSl8fFEodi5WYSxILkouZGEpPT09WC5WLkthfHxYbyhyKSlyTihsW3hdKSxRKHYuVmEsSC5KLkphKXx8di5WYS5pc0Fib3J0ZWR8fFEodi5WYSxILkouZGEpIT09WC5WLkthfHwKIVEodi5WYSxILkoudmQpfHwoTUsodi5WYSxmdW5jdGlvbigpe2YoZnVuY3Rpb24oeSl7cmV0dXJuIHk9PT1YLlYuS2F9KX0pLFIodi5WYSxGLkQuWmYpPT09dm9pZCAwJiZ0PT09dm9pZCAwJiYodD1wbShqbS5iYS5zaixmdW5jdGlvbih5KXtyZXR1cm4gZnVuY3Rpb24oKXtxbShqbS5iYS5zaix0KTt0PXZvaWQgMDtYbyhGLkQubWEpJiYoVih5LlZhLEguSi51ZywhMCksVih5LlZhLEguSi5zYSwhMSksVSh5LlZhLEYuRC5zYSksZihmdW5jdGlvbih6KXtyZXR1cm4gej09PVguVi5LYX0pLFYoeS5WYSxILkoudWcsITEpKX19KHYpKSkpfXZhciBnPWQuaXNHdG1FdmVudCYmYT09PSIiP3tpZDoiIixwcmVmaXg6IiIsZGVzdGluYXRpb25JZDoiIixpZHM6W10sSmM6ZnVuY3Rpb24oKXtyZXR1cm4hMX19OmJDKGEsZC5pc0d0bUV2ZW50KTtpZihnKXt2YXIgaD1uZXcgYUkoZyxiLGQpO1YoaCxILkouZGEsWC5WLlFrKTtyTihoKTtpZighaC5pc0Fib3J0ZWQpe3ZhciBsPVtdO2lmKGQuZXZlbnRNZXRhZGF0YVtILkouRGNdKXt2YXIgbj0KZC5ldmVudE1ldGFkYXRhW0guSi5EY107QXJyYXkuaXNBcnJheShuKXx8KG49W25dKTtmb3IodmFyIHA9MDtwPG4ubGVuZ3RoO3ArKyl7dmFyIHE9c04obltwXSxoKTtNKDQ4OCl8fFYocSxILkouSmEsITEpO2wucHVzaChxKX19ZWxzZSBiPT09Ri5ELndhJiZsLnB1c2goc04oWC5WLk1rLGgpKSxiIT09Ri5ELkpiJiZsLnB1c2goc04oWC5WLkthLGgpKSxsLnB1c2goc04oWC5WLnhhLGgpKSxiIT09Ri5ELkpiJiYobC5wdXNoKHNOKFguVi5PYixoKSksbC5wdXNoKHNOKFguVi5GYixoKSksbC5wdXNoKHNOKFguVi51YixoKSkpO3ZhciByPVtGLkQua2EsRi5ELm1hXSx0PXZvaWQgMDticChmdW5jdGlvbigpe2YoKTt2YXIgdT0hWG8oW0YuRC5YYV0pO2lmKCFYbyhyKXx8dSl7dmFyIHY9cjt1JiYodj1bXS5jb25jYXQodyh2KSxbRi5ELlhhXSkpO2FwKGZ1bmN0aW9uKHgpe3ZhciB5LHosQzt5PXguY29uc2VudEV2ZW50SWQ7ej14LmNvbnNlbnRQcmlvcml0eUlkO0M9eC5jb25zZW50VHlwZXM7CmUoeSx6KTtDJiZDLmxlbmd0aD09PTEmJkNbMF09PT1GLkQuWGE/ZihmdW5jdGlvbihEKXtyZXR1cm4gRD09PVguVi51Yn0pOmYoKX0sdil9fSxyKX19fTtmdW5jdGlvbiBGTyhhLGIsYyxkKXt9Rk8uUD0iaW50ZXJuYWwuZXhlY3V0ZUV2ZW50UHJvY2Vzc29yIjtmdW5jdGlvbiBHTyhhKXt2YXIgYjtyZXR1cm4gVWQoYix0aGlzLlQsMSl9R08uUD0iaW50ZXJuYWwuZXhlY3V0ZUphdmFzY3JpcHRTdHJpbmciO2Z1bmN0aW9uIEhPKGEpe3ZhciBiO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgYz1BO3RyeXtiPUtqKGMuZXNjYXBlKGMuYXRvYihhKSkpfWNhdGNoKGQpe3JldHVybn1yZXR1cm4gYn07ZnVuY3Rpb24gSU8oYSl7dmFyIGI9IiI7cmV0dXJuIGJ9SU8uUD0iaW50ZXJuYWwuZ2VuZXJhdGVDbGllbnRJZCI7ZnVuY3Rpb24gSk8oYSl7dmFyIGI9e307cmV0dXJuIFVkKGIpfUpPLlA9ImludGVybmFsLmdldEFkc0Nvb2tpZVdyaXRpbmdPcHRpb25zIjtmdW5jdGlvbiBLTyhhLGIpe3ZhciBjPSExO3JldHVybiBjfUtPLlA9ImludGVybmFsLmdldEFsbG93QWRQZXJzb25hbGl6YXRpb24iO2Z1bmN0aW9uIExPKCl7dmFyIGE7cmV0dXJuIGF9TE8uUD0iaW50ZXJuYWwuZ2V0QW5kUmVzZXRFdmVudFVzYWdlIjtmdW5jdGlvbiBNTyhhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjO3JldHVybiBjfU1PLlA9ImludGVybmFsLmdldEF1aWQiO2Z1bmN0aW9uIE5PKCl7dmFyIGE9W107cmV0dXJuIFVkKGEpfU5PLlA9ImludGVybmFsLmdldENvbnRhaW5lcklkcyI7ZnVuY3Rpb24gT08oKXt2YXIgYT1uZXcga2I7cmV0dXJuIGF9T08ucHVibGljTmFtZT0iZ2V0Q29udGFpbmVyVmVyc2lvbiI7ZnVuY3Rpb24gUE8oYSxiKXtiPWI9PT12b2lkIDA/ITA6Yjt2YXIgYztyZXR1cm4gY31QTy5wdWJsaWNOYW1lPSJnZXRDb29raWVWYWx1ZXMiO2Z1bmN0aW9uIFFPKCl7dmFyIGE9IiI7cmV0dXJuIGF9UU8uUD0iaW50ZXJuYWwuZ2V0Q29yZVBsYXRmb3JtU2VydmljZXNQYXJhbSI7ZnVuY3Rpb24gUk8oKXtyZXR1cm4geW0oKX1STy5QPSJpbnRlcm5hbC5nZXRDb3VudHJ5Q29kZSI7ZnVuY3Rpb24gU08oKXt2YXIgYT1bXTthPXRrKCk7cmV0dXJuIFVkKGEpfVNPLlA9ImludGVybmFsLmdldERlc3RpbmF0aW9uSWRzIjtmdW5jdGlvbiBUTyhhKXt2YXIgYj1uZXcga2I7cmV0dXJuIGJ9VE8uUD0iaW50ZXJuYWwuZ2V0RGV2ZWxvcGVySWRzIjtmdW5jdGlvbiBVTyhhKXt2YXIgYjtyZXR1cm4gYn1VTy5QPSJpbnRlcm5hbC5nZXRFY3NpZENvb2tpZVZhbHVlIjtmdW5jdGlvbiBWTyhhLGIpe3ZhciBjPW51bGw7cmV0dXJuIGN9Vk8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudEF0dHJpYnV0ZSI7ZnVuY3Rpb24gV08oYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1XTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50QnlJZCI7ZnVuY3Rpb24gWE8oYSl7dmFyIGI9IiI7cmV0dXJuIGJ9WE8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudElubmVyVGV4dCI7ZnVuY3Rpb24gWU8oYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1ZTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UGFyZW50IjtmdW5jdGlvbiBaTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVpPLlA9ImludGVybmFsLmdldEVsZW1lbnRQcmV2aW91c1NpYmxpbmciO2Z1bmN0aW9uICRPKGEsYil7dmFyIGM9bnVsbDtyZXR1cm4gVWQoYyl9JE8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFByb3BlcnR5IjtmdW5jdGlvbiBhUChhKXt2YXIgYjtyZXR1cm4gYn1hUC5QPSJpbnRlcm5hbC5nZXRFbGVtZW50VmFsdWUiO2Z1bmN0aW9uIGJQKGEpe3ZhciBiPTA7cmV0dXJuIGJ9YlAuUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFZpc2liaWxpdHlSYXRpbyI7ZnVuY3Rpb24gY1AoYSl7dmFyIGI9bnVsbDtyZXR1cm4gYn1jUC5QPSJpbnRlcm5hbC5nZXRFbGVtZW50c0J5Q3NzU2VsZWN0b3IiOwpmdW5jdGlvbiBkUChhKXt2YXIgYjtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7TCh0aGlzLCJyZWFkX2V2ZW50X2RhdGEiLGEpO3ZhciBjO2E6e3ZhciBkPWEsZT1YRih0aGlzKS5vcmlnaW5hbEV2ZW50RGF0YTtpZihlKXtmb3IodmFyIGY9ZSxnPXt9LGg9e30sbD17fSxuPVtdLHA9ZC5zcGxpdCgiXFxcXCIpLHE9MDtxPHAubGVuZ3RoO3ErKyl7Zm9yKHZhciByPXBbcV0uc3BsaXQoIlxcLiIpLHQ9MDt0PHIubGVuZ3RoO3QrKyl7Zm9yKHZhciB1PXJbdF0uc3BsaXQoIi4iKSx2PTA7djx1Lmxlbmd0aDt2Kyspbi5wdXNoKHVbdl0pLHYhPT11Lmxlbmd0aC0xJiZuLnB1c2gobCk7dCE9PXIubGVuZ3RoLTEmJm4ucHVzaChoKX1xIT09cC5sZW5ndGgtMSYmbi5wdXNoKGcpfWZvcih2YXIgeD1bXSx5PSIiLHo9bShuKSxDPXoubmV4dCgpOyFDLmRvbmU7Qz0Kei5uZXh0KCkpe3ZhciBEPUMudmFsdWU7RD09PWw/KHgucHVzaCh5KSx5PSIiKTp5PUQ9PT1nP3krIlxcIjpEPT09aD95KyIuIjp5K0R9eSYmeC5wdXNoKHkpO2Zvcih2YXIgST1tKHgpLEc9SS5uZXh0KCk7IUcuZG9uZTtHPUkubmV4dCgpKXtpZihmPT1udWxsKXtjPXZvaWQgMDticmVhayBhfWY9ZltHLnZhbHVlXX1jPWZ9ZWxzZSBjPXZvaWQgMH1iPVVkKGMsdGhpcy5ULDEpO3JldHVybiBifWRQLlA9ImludGVybmFsLmdldEV2ZW50RGF0YSI7ZnVuY3Rpb24gZVAoYSl7dmFyIGI9bnVsbDtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7TCh0aGlzLCJyZWFkX2RvbV9lbGVtZW50cyIsImNzcyIsYSk7dHJ5e3ZhciBjPUIucXVlcnlTZWxlY3RvcihhKTtjJiYoYj1uZXcgUGQoYykpfWNhdGNoKGQpe3JldHVybiBudWxsfXJldHVybiBifWVQLlA9ImludGVybmFsLmdldEZpcnN0RWxlbWVudEJ5Q3NzU2VsZWN0b3IiO2Z1bmN0aW9uIGZQKCl7dmFyIGE7cmV0dXJuIGF9ZlAuUD0iaW50ZXJuYWwuZ2V0R3NhRXhwZXJpbWVudElkIjtmdW5jdGlvbiBnUCgpe3JldHVybiBuZXcgUGQoUGspfWdQLlA9ImludGVybmFsLmdldEh0bWxJZCI7ZnVuY3Rpb24gaFAoKXt2YXIgYTtyZXR1cm4gYX1oUC5QPSJpbnRlcm5hbC5nZXRJZnJhbWluZ1N0YXRlIjtmdW5jdGlvbiBpUChhLGIpe3ZhciBjPXt9O3JldHVybiBVZChjKX1pUC5QPSJpbnRlcm5hbC5nZXRMaW5rZXJWYWx1ZUZyb21Mb2NhdGlvbiI7ZnVuY3Rpb24galAoKXt2YXIgYT1uZXcga2I7aWYoYXJndW1lbnRzLmxlbmd0aCE9PTApdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbXSxhcmd1bWVudHMpO3ZhciBiPVZNKCk7YiE9PXZvaWQgMCYmYS5zZXQoRi5ELmtnLGJ8fCJlcnJvciIpO3ZhciBjPUx0KCk7YyYmYS5zZXQoRi5ELktlLGMpO3ZhciBkPUt0KCk7ZCYmYS5zZXQoRi5ELk9lLGQpO3ZhciBlPWtGLmdwcFN0cmluZztlJiZhLnNldChGLkQudWgsZSk7dmFyIGY9a0YuSDtmJiZhLnNldChGLkQudGgsZik7cmV0dXJuIGF9alAuUD0iaW50ZXJuYWwuZ2V0UHJpdmFjeVN0cmluZ3MiO2Z1bmN0aW9uIGtQKGEsYil7dmFyIGM7aWYoIWxoKGEpfHwhbGgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInN0cmluZyJdLGFyZ3VtZW50cyk7dmFyIGQ9JEgoYSl8fHt9O2M9VWQoZFtiXSx0aGlzLlQpO3JldHVybiBjfWtQLlA9ImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciI7ZnVuY3Rpb24gbFAoYSxiKXt2YXIgYztyZXR1cm4gY31sUC5wdWJsaWNOYW1lPSJnZXRRdWVyeVBhcmFtZXRlcnMiO2Z1bmN0aW9uIG1QKGEsYil7dmFyIGM7cmV0dXJuIGN9bVAucHVibGljTmFtZT0iZ2V0UmVmZXJyZXJRdWVyeVBhcmFtZXRlcnMiO2Z1bmN0aW9uIG5QKGEpe3ZhciBiPSIiO3JldHVybiBifW5QLnB1YmxpY05hbWU9ImdldFJlZmVycmVyVXJsIjtmdW5jdGlvbiBvUCgpe3JldHVybiB6bSgpfW9QLlA9ImludGVybmFsLmdldFJlZ2lvbkNvZGUiO2Z1bmN0aW9uIHBQKGEsYil7dmFyIGM7cmV0dXJuIGN9cFAuUD0iaW50ZXJuYWwuZ2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIjtmdW5jdGlvbiBxUChhLGIpe3ZhciBjPW51bGw7CnJldHVybiBjfXFQLlA9ImludGVybmFsLmdldFNjb3BlZEVsZW1lbnRzQnlDc3NTZWxlY3RvciI7ZnVuY3Rpb24gclAoKXt2YXIgYT1uZXcga2I7YS5zZXQoIndpZHRoIiwwKTthLnNldCgiaGVpZ2h0IiwwKTtyZXR1cm4gYX1yUC5QPSJpbnRlcm5hbC5nZXRTY3JlZW5EaW1lbnNpb25zIjtmdW5jdGlvbiBzUCgpe3ZhciBhPSIiO3JldHVybiBhfXNQLlA9ImludGVybmFsLmdldFRvcFNhbWVEb21haW5VcmwiO2Z1bmN0aW9uIHRQKCl7dmFyIGE9IiI7cmV0dXJuIGF9dFAuUD0iaW50ZXJuYWwuZ2V0VG9wV2luZG93VXJsIjtmdW5jdGlvbiB1UChhKXt2YXIgYj0iIjtpZighbWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZ3x1bmRlZmluZWQiXSxhcmd1bWVudHMpO0wodGhpcywiZ2V0X3VybCIsYSk7Yj1MaihSaihBLmxvY2F0aW9uLmhyZWYpLGEpO3JldHVybiBifXVQLnB1YmxpY05hbWU9ImdldFVybCI7ZnVuY3Rpb24gdlAoKXtMKHRoaXMsImdldF91c2VyX2FnZW50Iik7cmV0dXJuIEhjLnVzZXJBZ2VudH12UC5wdWJsaWNOYW1lPSJnZXRVc2VyQWdlbnQiO3ZQLlA9ImludGVybmFsLmdldFVzZXJBZ2VudCI7ZnVuY3Rpb24gd1AoKXt2YXIgYTtyZXR1cm4gYT9VZChFTShhKSk6YX13UC5QPSJpbnRlcm5hbC5nZXRVc2VyQWdlbnRDbGllbnRIaW50cyI7ZnVuY3Rpb24gelAoKXt2YXIgYT1BO3JldHVybiBhLmdhR2xvYmFsPWEuZ2FHbG9iYWx8fHt9fWZ1bmN0aW9uIEFQKGEsYil7dmFyIGM9elAoKTtpZihjLnZpZD09PXZvaWQgMHx8YiYmIWMuZnJvbV9jb29raWUpYy52aWQ9YSxjLmZyb21fY29va2llPWJ9O2Z1bmN0aW9uIGJRKGEpeyhiayhaSyhhKSl8fFdqKCkpJiZVKGEsRi5ELm9tLHptKCl8fHltKCkpOyFiayhaSyhhKSkmJldqKCkmJlUoYSxGLkQuWWksIjo6Iil9ZnVuY3Rpb24gY1EoYSl7V2ooKSYmKGJrKFpLKGEpKXx8RG0oKXx8VShhLEYuRC5TbCwhMCkpfTtmdW5jdGlvbiBoUShhLGIsYyxkKXt2YXIgZTtpZigobmQoKXx8a2QoKSkmJlhqKCkmJlhqKCkhPT0iLyIpe3ZhciBmPVJqKGEpO2U9SWYoNTApJiZkJiZUYihmLnBhdGhuYW1lLCIvZy9jb2xsZWN0Iik/MjooZHx8IVdqKCl8fERtKCk/MDpUYihmLnBhdGhuYW1lLCIvZ2EvZy9jIil8fFRiKGYucGF0aG5hbWUsIi9hZy9nL2MiKSk/MTowfWVsc2UgZT0wO3N3aXRjaChlKXtjYXNlIDI6dmFyIGc7aWYoTSg1NDYpKXt2YXIgaD1UYihhLCIvZy9jb2xsZWN0Iik/YS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0xMCk6YSxsPWlRKCksbj1oK2wscD1qUSgiL2cvY29sbGVjdCIsYixjKTtnPXtJYzpuLGtmOiIiLGJvZHk6cH19ZWxzZSBnPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gZztjYXNlIDE6dmFyIHE7aWYoTSg1NDcpKXt2YXIgcj1pUSgpLHQ9YS5pbmRleE9mKHIpLHU9YS5zdWJzdHJpbmcoMCx0KStyLHY9alEoYS5zdWJzdHJpbmcodCtyLmxlbmd0aC0xKSxiLGMpO3E9e0ljOnUsa2Y6IiIsCmJvZHk6dn19ZWxzZSBxPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gcTtkZWZhdWx0OnJldHVybntJYzphLGtmOmIsYm9keTpjfX19ZnVuY3Rpb24gaVEoKXt2YXIgYT1YaigpO2lmKCFhKXJldHVybiIiO1NiKGEsIi8iKXx8KGE9Ii8iK2EpO1RiKGEsIi8iKXx8KGErPSIvIik7cmV0dXJuIGF9ZnVuY3Rpb24galEoYSxiLGMpe3ZhciBkPVthXTtiJiZkLnB1c2goIj8iLGIpO2MmJmQucHVzaCgiXHJcbiIsYyk7cmV0dXJuIGQuam9pbigiIil9O2Z1bmN0aW9uIHNSKGEpe2EuY29weVRvSGl0RGF0YShGLkQuZmIpO3ZhciBiPU8oYS5NLEYuRC5XZCk7YiYmKEtDKGIsZnVuY3Rpb24oKXt9KSxVKGEsRi5ELldkLGIpKX07ZnVuY3Rpb24gdlIoYSl7dmFyIGI9ZnVuY3Rpb24oYyl7cmV0dXJuISFjJiZjLmNvbnZlcnNpb259O1YoYSxILkoubWcsYihYSyhhKSkpO1EoYSxILkoubmcpJiZWKGEsSC5KLlltLGIoWEsoYSwiZmlyc3RfdmlzaXQiKSkpO1EoYSxILkouVGUpJiZWKGEsSC5KLmJuLGIoWEsoYSwic2Vzc2lvbl9zdGFydCIpKSl9O3ZhciBBUj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1TdHJpbmcoelIuY29va2llKS5zcGxpdCgiOyIpLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9Y1tkXS5zcGxpdCgiPSIpLGY9ZVswXS50cmltKCk7aWYoZiYmYShmKSl7dmFyIGc9ZS5zbGljZSgxKS5qb2luKCI9IikudHJpbSgpO2cmJihnPWRlY29kZVVSSUNvbXBvbmVudChnKSk7dmFyIGg9dm9pZCAwLGw9dm9pZCAwOygoaD1iKVtsPWZdfHwoaFtsXT1bXSkpLnB1c2goZyl9fXJldHVybiBifTt2YXIgQlI9d2luZG93LHpSPWRvY3VtZW50LENSPWZ1bmN0aW9uKGEpe3ZhciBiPUJSLl9nYVVzZXJQcmVmcztpZihiJiZiLmlvbyYmYi5pb28oKXx8elIuZG9jdW1lbnRFbGVtZW50Lmhhc0F0dHJpYnV0ZSgiZGF0YS1nb29nbGUtYW5hbHl0aWNzLW9wdC1vdXQiKXx8YSYmQlJbImdhLWRpc2FibGUtIithXT09PSEwKXJldHVybiEwO3RyeXt2YXIgYz1CUi5leHRlcm5hbDtpZihjJiZjLl9nYVVzZXJQcmVmcyYmYy5fZ2FVc2VyUHJlZnM9PSJvbyIpcmV0dXJuITB9Y2F0Y2goZil7fWZvcih2YXIgZD1BUihmdW5jdGlvbihmKXtyZXR1cm4gZj09PSJBTVBfVE9LRU4ifSkuQU1QX1RPS0VOfHxbXSxlPTA7ZTxkLmxlbmd0aDtlKyspaWYoZFtlXT09IiRPUFRfT1VUIilyZXR1cm4hMDtyZXR1cm4gelIuZ2V0RWxlbWVudEJ5SWQoIl9fZ2FPcHRPdXRFeHRlbnNpb24iKT8hMDohMX07dmFyIE1SPSJnY2xpZCBkY2xpZCBnY2xzcmMgd2JyYWlkIGdicmFpZCBnYWRfc291cmNlIGdhZF9jYW1wYWlnbmlkIHV0bV9zb3VyY2UgdXRtX21lZGl1bSB1dG1fY2FtcGFpZ24gdXRtX3Rlcm0gdXRtX2NvbnRlbnQgdXRtX2lkIi5zcGxpdCgiICIpO2Z1bmN0aW9uIE5SKCl7dmFyIGE9Qi5sb2NhdGlvbixiLGM9YT09bnVsbD92b2lkIDA6KGI9YS5zZWFyY2gpPT1udWxsP3ZvaWQgMDpiLnJlcGxhY2UoIj8iLCIiKSxkO2lmKGMpe2Zvcih2YXIgZT1bXSxmPUpqKGMsITApLGc9bShNUiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWUsbj1mW2xdO2lmKG4pZm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07cSE9PXZvaWQgMCYmZS5wdXNoKHtuYW1lOmwsdmFsdWU6cX0pfX1kPWV9ZWxzZSBkPVtdO3JldHVybiBkfTt2YXIgUFI9W0YuRC5yYSxGLkQua2FdLFFSPVtGLkQucmEsRi5ELmthLEYuRC5tYV07CmZ1bmN0aW9uIFJSKGEpe3ZhciBiLGM9TSg1MDYpJiYhZEkoYSwiY2NkX2dhX2Fkc19pZHNfb3B0X291dCIsITEpLGQ9ISFkSShhLCJnb29nbGVfbmciLCExKSxlPVhvKGM/ZD9RUjpmcDpQUiksZjtmPWRJKGEsRi5ELlVmLE8oYS5NLEYuRC5VZikpfHwhIWRJKGEsImdvb2dsZV9uZyIsITEpO2I9e2hmOmMsRXM6ZCxHbzplLGZmOmYsTGc6ISFkSShhLCJnYTRfYWRzX2xpbmtlZCIsITEpLGJpOkFtKCksR2o6IVZLKCksRnM6YmsoWksoYSkpLERzOiEhUShhLEguSi5iZSksR3M6ISFRKGEsSC5KLlRlKSx1czohIU8oYS5NLEYuRC5ObCksS3M6ISFRKGEsSC5KLmVqKSx4ZzpPKGEuTSxGLkQuU2MpLG5yOk8oYS5NLEYuRC5TYyx2b2lkIDAsNCksSHM6ISFRKGEsSC5KLkZjKX07VihhLEguSi5jaixiLmZmKTtWKGEsSC5KLmJqLFNSKGIpKTtiLmhmJiYhYi5mZiYmYi5MZyYmU1IoYikmJlUoYSwiXyZpYnQiLCIxIik7U1IoYikmJmIuR28mJihiLmhmP2IueGchPT0hMXx8Yi5MZzoxKSYmVihhLApILkoucm4sITApO2IuRXMmJiFiLmJpJiZVKGEsRi5ELkxlLDEpOyhiLmhmP2IueGc6Yi5ucik9PT0hMSYmVShhLCJfJm5ncyIsIjEiKTtWKGEsSC5KLmhkLFRSKGIpJiYoYi5Hc3x8Yi51cykpO1YoYSxILkoucmcsVFIoYikmJmIuS3MmJiFiLmJpKX1mdW5jdGlvbiBTUihhKXtyZXR1cm4gYS5oZj8oYS5MZ3x8YS5mZikmJiFhLmJpJiYhYS5HajphLmZmJiZhLnhnIT09ITEmJiFhLkdqJiYhYS5iaX1mdW5jdGlvbiBUUihhKXtpZihhLkhzKXJldHVybiExO2lmKGEuaGYpe2lmKCFhLmZmJiYhYS5MZylyZXR1cm4hMX1lbHNlIGlmKCFhLmZmKXJldHVybiExO3JldHVybiBhLkZzfHxhLkRzfHxhLkdqfHwoYS5oZj9hLnhnPT09ITEmJiFhLkxnOmEueGc9PT0hMSl8fCFhLkdvPyExOiEwfTt2YXIgYlM9ZnVuY3Rpb24oYSl7dmFyIGI9ITA7Yj1iPT09dm9pZCAwPyExOmI7aWYoTSg0MjUpJiYhKHBsKCl8fGImJlEoYSxILkouZGopfHxhLmV2ZW50TmFtZSE9PUYuRC53YXx8UShhLEguSi5GYykpKXt2YXIgYz17fSxkPXt9LGU9e2V2ZW50TWV0YWRhdGE6bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLk0uZXZlbnRNZXRhZGF0YSwoY1tILkouRmNdPSEwLGMpLGI/e306KGRbSC5KLkRjXT1YLlYuS2EsZCkpLG5vR3RtRXZlbnQ6ITB9LGY9c0MoYS50YXJnZXQuZGVzdGluYXRpb25JZCwic3RydWN0dXJlZF9kYXRhIixhLk0uRWEpO21EKGYsYS5NLmV2ZW50SWQsZSl9fTtmdW5jdGlvbiBoUyhhKXt9ZnVuY3Rpb24gaVMoYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O3JldHVybiBifQpmdW5jdGlvbiBqUyhhLGIpe312YXIga1M9Si5VLnFsLGxTPUouVS5ybDtmdW5jdGlvbiBtUyhhLGIpe3ZhciBjPXRrKCk7YyYmYy5pbmRleE9mKGIpPi0xJiYoYVtILkouQ2NdPSEwKX1mdW5jdGlvbiBvUyhhLGIsYyl7dmFyIGQ9dGhpczt9b1MuUD0iaW50ZXJuYWwuZ3RhZ0NvbmZpZyI7ZnVuY3Rpb24gcFMoYSxiLGMsZCl7dmFyIGU9dGhpczt9cFMuUD0iaW50ZXJuYWwuZ3RhZ0Rlc3RpbmF0aW9uQ29uZmlnIjsKZnVuY3Rpb24gclMoYSxiKXt9CnJTLnB1YmxpY05hbWU9Imd0YWdTZXQiO2Z1bmN0aW9uIHNTKCl7dmFyIGE9e307cmV0dXJuIGF9O2Z1bmN0aW9uIHRTKGEpe310Uy5QPSJpbnRlcm5hbC5pbml0aWFsaXplU2VydmljZVdvcmtlciI7ZnVuY3Rpb24gdVMoYSxiKXt9dVMucHVibGljTmFtZT0iaW5qZWN0SGlkZGVuSWZyYW1lIjtmdW5jdGlvbiB2UyhhLGIsYyxkLGUpe312Uy5QPSJpbnRlcm5hbC5pbmplY3RIdG1sIjt2YXIgQVM9e2RsOjEsaWQ6MX07CmZ1bmN0aW9uIEJTKGEsYixjLGQpe31CUy5wdWJsaWNOYW1lPSJpbmplY3RTY3JpcHQiO2Z1bmN0aW9uIENTKCl7dmFyIGE9dm0sYj0hMTtiPSEhYS5IWyI1Il07cmV0dXJuIGJ9Q1MuUD0iaW50ZXJuYWwuaXNBdXRvUGlpRWxpZ2libGUiO2Z1bmN0aW9uIERTKGEpe3ZhciBiPSEwO3JldHVybiBifURTLnB1YmxpY05hbWU9ImlzQ29uc2VudEdyYW50ZWQiO2Z1bmN0aW9uIEVTKGEpe3ZhciBiPSExO3JldHVybiBifUVTLlA9ImludGVybmFsLmlzRGVidWdNb2RlIjtmdW5jdGlvbiBGUyhhKXt2YXIgYj0hMTtyZXR1cm4gYn1GUy5QPSJpbnRlcm5hbC5pc0Rlc3RpbmF0aW9uSW5pdGlhbGl6ZWQiO2Z1bmN0aW9uIEdTKCl7cmV0dXJuIEJtKCl9R1MuUD0iaW50ZXJuYWwuaXNEbWFSZWdpb24iO2Z1bmN0aW9uIEhTKCl7cmV0dXJuIFVCKCl9SFMuUD0iaW50ZXJuYWwuaXNEb21SZWFkeSI7ZnVuY3Rpb24gSVMoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9SVMuUD0iaW50ZXJuYWwuaXNFbnRpdHlJbmZyYXN0cnVjdHVyZSI7ZnVuY3Rpb24gSlMoYSl7dmFyIGI9ITE7aWYoIXFoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJudW1iZXIiXSxbYV0pO2I9TShhKTtyZXR1cm4gYn1KUy5QPSJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIjtmdW5jdGlvbiBLUygpe3ZhciBhPSExO2E9SWYoNDcpO3JldHVybiBhfUtTLlA9ImludGVybmFsLmlzRnBmZSI7ZnVuY3Rpb24gTFMoKXt2YXIgYT0hMTtyZXR1cm4gYX1MUy5QPSJpbnRlcm5hbC5pc0djcEJyb3dzZXIiO2Z1bmN0aW9uIE1TKCl7dmFyIGE9ITE7cmV0dXJuIGF9TVMuUD0iaW50ZXJuYWwuaXNMYW5kaW5nUGFnZSI7ZnVuY3Rpb24gTlMoKXt2YXIgYT0hMTtyZXR1cm4gYX1OUy5QPSJpbnRlcm5hbC5pc09ndCI7ZnVuY3Rpb24gT1MoKXt2YXIgYTtyZXR1cm4gYX1PUy5QPSJpbnRlcm5hbC5pc1NhZmFyaVBjbUVsaWdpYmxlQnJvd3NlciI7ZnVuY3Rpb24gUFMoKXt2YXIgYT1RaChmdW5jdGlvbihiKXtYRih0aGlzKS5sb2coImVycm9yIixiKX0pO2EucHVibGljTmFtZT0iSlNPTiI7cmV0dXJuIGF9O2Z1bmN0aW9uIFFTKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYil9UVMuUD0iaW50ZXJuYWwubGVnYWN5UGFyc2VVcmwiO2Z1bmN0aW9uIFJTKCl7cmV0dXJuITF9CnZhciBTUz17Z2V0SXRlbTpmdW5jdGlvbihhKXt2YXIgYj1udWxsO3JldHVybiBifSxzZXRJdGVtOmZ1bmN0aW9uKGEsYil7cmV0dXJuITF9LHJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7fX07ZnVuY3Rpb24gVFMoKXt9VFMucHVibGljTmFtZT0ibG9nVG9Db25zb2xlIjtmdW5jdGlvbiBVUyhhLGIpe31VUy5QPSJpbnRlcm5hbC5tZXJnZVJlbW90ZUNvbmZpZyI7ZnVuY3Rpb24gVlMoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMDpjO3ZhciBkPVtdO3JldHVybiBVZChkKX1WUy5QPSJpbnRlcm5hbC5wYXJzZUNvb2tpZVZhbHVlc0Zyb21TdHJpbmciO2Z1bmN0aW9uIFdTKGEpe3ZhciBiPXZvaWQgMDsKcmV0dXJuIGJ9V1MucHVibGljTmFtZT0icGFyc2VVcmwiO2Z1bmN0aW9uIFhTKGEpe2lmKCFlaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgYj1UZChhLHRoaXMuVCwxKS5yYigpLGM9e307RWQoYi5NLkVhLGMpO2JJKGIsYyk7dmFyIGQ9e307Y0koYixkKTtkW0guSi5Cbl09ITA7dmFyIGU9e2V2ZW50TWV0YWRhdGE6ZH0sZj1iLk0uZXZlbnRJZCxnPXNDKGIudGFyZ2V0LmRlc3RpbmF0aW9uSWQsYi5ldmVudE5hbWUsYyk7bUQoZyxmLGUpO31YUy5QPSJpbnRlcm5hbC5wcm9jZXNzQXNOZXdFdmVudCI7ZnVuY3Rpb24gWVMoYSxiLGMpe3ZhciBkO3JldHVybiBkfVlTLlA9ImludGVybmFsLnB1c2hUb0RhdGFMYXllciI7ZnVuY3Rpb24gWlMoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpLGM9ITE7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO2Zvcih2YXIgZD1bdGhpcyxhXSxlPW0oYiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpZC5wdXNoKFRkKGYudmFsdWUsdGhpcy5ULDEpKTt0cnl7TC5hcHBseShudWxsLGQpLGM9ITB9Y2F0Y2goZyl7cmV0dXJuITF9cmV0dXJuIGN9WlMucHVibGljTmFtZT0icXVlcnlQZXJtaXNzaW9uIjtmdW5jdGlvbiAkUyhhKXt2YXIgYj10aGlzO30kUy5QPSJpbnRlcm5hbC5xdWV1ZUFkc1RyYW5zbWlzc2lvbiI7ZnVuY3Rpb24gYVQoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBifWFULnB1YmxpY05hbWU9InJlYWRBbmFseXRpY3NTdG9yYWdlIjtmdW5jdGlvbiBiVCgpe3ZhciBhPSIiO3JldHVybiBhfWJULnB1YmxpY05hbWU9InJlYWRDaGFyYWN0ZXJTZXQiO2Z1bmN0aW9uIGNUKCl7cmV0dXJuIEUoMTkpfWNULlA9ImludGVybmFsLnJlYWREYXRhTGF5ZXJOYW1lIjtmdW5jdGlvbiBkVCgpe3ZhciBhPSIiO3JldHVybiBhfWRULnB1YmxpY05hbWU9InJlYWRUaXRsZSI7ZnVuY3Rpb24gZVQoYSxiKXt2YXIgYz10aGlzO2lmKCFsaChhKXx8IWhoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJmdW5jdGlvbiJdLGFyZ3VtZW50cyk7TE0oYSxmdW5jdGlvbihkKXtiLmludm9rZShjLlQsVWQoZCxjLlQsMSkpfSk7fWVULlA9ImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siO2Z1bmN0aW9uIGZUKGEsYil7aWYoIWxoKGEpfHwhZWgoYikmJiFnaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoQmgoWEYodGhpcykuUGIoKSkpcmV0dXJuITE7dmFyIGMsZCxlPWJDKGEsITApO2lmKCFlKXJldHVybiExO3N3aXRjaChlLnByZWZpeCl7Y2FzZSAiQVciOmM9dE47ZD1jby5pYS5jYjticmVhaztjYXNlICJEQyI6Yz1JTjtkPWNvLmlhLmNiO2JyZWFrO2Nhc2UgIkdGIjpjPU5OO2Q9Y28uaWEuZ2Q7YnJlYWs7Y2FzZSAiSEEiOmM9UE47ZD1jby5pYS5nZDticmVhaztjYXNlICJVQSI6Yz1mTztkPWNvLmlhLmdkO2JyZWFrO2Nhc2UgIk1DIjpjPWlTKGUpO2Q9Y28uaWEueGQ7YnJlYWs7Y2FzZSAiRyI6cmV0dXJuIGhTKGEpLCEwO2RlZmF1bHQ6cmV0dXJuITF9dmFyIGY9YSwKZz1jLGg9ZCxsPVRkKGIsdGhpcy5ULDEpLG49WUMoKSxwPWJDKGYsITApO3AmJm4uSC5yZWdpc3RlcihwLGcsaCxsKTtyZXR1cm4hMH1mVC5QPSJpbnRlcm5hbC5yZWdpc3RlckRlc3RpbmF0aW9uIjt2YXIgZ1Q9WyJldmVudCJdO2Z1bmN0aW9uIGhUKGEsYixjKXt9aFQuUD0iaW50ZXJuYWwucmVnaXN0ZXJHdGFnQ29tbWFuZExpc3RlbmVyIjtmdW5jdGlvbiBpVChhLGIpe3ZhciBjPSExO3JldHVybiBjfWlULlA9ImludGVybmFsLnJlbW92ZURhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIGpUKGEsYil7fQpqVC5QPSJpbnRlcm5hbC5yZW1vdmVGb3JtRGF0YSI7ZnVuY3Rpb24ga1QoKXt9a1QucHVibGljTmFtZT0icmVzZXREYXRhTGF5ZXIiO2Z1bmN0aW9uIGxUKGEsYixjKXt2YXIgZD12b2lkIDA7cmV0dXJuIGR9bFQuUD0iaW50ZXJuYWwuc2NydWJVcmxQYXJhbXMiO2Z1bmN0aW9uIG1UKGEpe31tVC5QPSJpbnRlcm5hbC5zZW5kQWRzSGl0IjtmdW5jdGlvbiBuVChhLGIsYyxkKXtpZihhcmd1bWVudHMubGVuZ3RoPDJ8fCFmaChkKXx8IWZoKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJhbnkiLCJhbnkiLCJPYmplY3R8dW5kZWZpbmVkIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGU9Yz9UZChjLHRoaXMuVCwxKTp7fSxmPVRkKGEpLGc9QXJyYXkuaXNBcnJheShmKT9mOltmXTtiPVN0cmluZyhiKTt2YXIgaD1kP1RkKGQpOnt9LGw9WEYodGhpcyk7aC5vcmlnaW5hdGluZ0VudGl0eT10RyhsKTtsLnByaW9yaXR5UXVldWUmJihoLnByaW9yaXR5UXVldWU9bC5wcmlvcml0eVF1ZXVlKTtmb3IodmFyIG49MDtuPGcubGVuZ3RoO24rKyl7dmFyIHA9Z1tuXTtpZih0eXBlb2YgcD09PSJzdHJpbmciKXt2YXIgcT17fTtFZChlLHEpO3ZhciByPXt9O0VkKGgscik7dmFyIHQ9c0MocCxiLHEpO21EKHQsCmguZXZlbnRJZHx8bC5ldmVudElkLHIpfX19blQuUD0iaW50ZXJuYWwuc2VuZEd0YWdFdmVudCI7ZnVuY3Rpb24gb1QoYSxiLGMpe31vVC5wdWJsaWNOYW1lPSJzZW5kUGl4ZWwiO2Z1bmN0aW9uIHBUKGEsYil7fXBULlA9ImludGVybmFsLnNldEFuY2hvckhyZWYiO2Z1bmN0aW9uIHFUKGEpe31xVC5QPSJpbnRlcm5hbC5zZXRDb250YWluZXJDb25zZW50RGVmYXVsdHMiO2Z1bmN0aW9uIHJUKGEsYixjLGQpe3ZhciBlPXRoaXM7ZD1kPT09dm9pZCAwPyEwOmQ7dmFyIGY9ITE7CnJldHVybiBmfXJULnB1YmxpY05hbWU9InNldENvb2tpZSI7ZnVuY3Rpb24gc1QoYSl7fXNULlA9ImludGVybmFsLnNldENvcmVQbGF0Zm9ybVNlcnZpY2VzIjtmdW5jdGlvbiB0VChhLGIpe310VC5QPSJpbnRlcm5hbC5zZXREYXRhTGF5ZXJWYWx1ZSI7ZnVuY3Rpb24gdVQoYSl7fXVULnB1YmxpY05hbWU9InNldERlZmF1bHRDb25zZW50U3RhdGUiO2Z1bmN0aW9uIHZUKGEsYil7fXZULlA9ImludGVybmFsLnNldERlbGVnYXRlZENvbnNlbnRUeXBlIjtmdW5jdGlvbiB3VChhLGIpe313VC5QPSJpbnRlcm5hbC5zZXRGb3JtQWN0aW9uIjtmdW5jdGlvbiB4VChhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aWYoIWxoKGEpfHwhb2goYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZigha20oYSkpdGhyb3cgRXJyb3IoInNldEluQ3Jvc3NDb250YWluZXJEYXRhIHJlcXVpcmVzIHZhbGlkIENyb3NzQ29udGFpbmVyU2NoZW1hIGtleS4iKTsoY3x8bm0oYSk9PT12b2lkIDApJiZtbShhLFRkKGIsdGhpcy5ULDEpKTt9eFQuUD0iaW50ZXJuYWwuc2V0SW5Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIHlUKGEsYixjKXtyZXR1cm4hMX15VC5wdWJsaWNOYW1lPSJzZXRJbldpbmRvdyI7ZnVuY3Rpb24gelQoYSxiLGMpe316VC5QPSJpbnRlcm5hbC5zZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiO2Z1bmN0aW9uIEFUKGEsYixjKXtpZighbGgoYSl8fCFsaChiKXx8YXJndW1lbnRzLmxlbmd0aCE9PTMpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7Zm9yKHZhciBkPWIuc3BsaXQoIi4iKSxlPWVEKGEpLGY9MDtmPGQubGVuZ3RoLTE7ZisrKXtpZihlW2RbZl1dPT09dm9pZCAwKWVbZFtmXV09e307ZWxzZSBpZighQ2QoZVtkW2ZdXSkpdGhyb3cgRXJyb3IoInNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciBmYWlsZWQsIHBhdGggY29udGFpbnMgYSBub24tb2JqZWN0IHR5cGU6ICIrZFtmXSk7ZT1lW2RbZl1dfWVbZFtmXV09VGQoYyx0aGlzLlQsMSk7fUFULlA9ImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gQlQoYSxiKXt9CkJULlA9ImludGVybmFsLnNldFRyYW5zbWlzc2lvbk1vZGUiO2Z1bmN0aW9uIENUKGEsYixjLGQpe3ZhciBlPXRoaXM7fUNULnB1YmxpY05hbWU9InNoYTI1NiI7ZnVuY3Rpb24gRFQoYSxiLGMpe30KRFQuUD0iaW50ZXJuYWwuc29ydFJlbW90ZUNvbmZpZ1BhcmFtZXRlcnMiO2Z1bmN0aW9uIEVUKGEpe31FVC5QPSJpbnRlcm5hbC5zdG9yZUFkc0JyYWlkTGFiZWxzIjtmdW5jdGlvbiBGVChhLGIpe3ZhciBjPXZvaWQgMDtyZXR1cm4gY31GVC5QPSJpbnRlcm5hbC5zdWJzY3JpYmVUb0Nyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24gR1QoYSl7fUdULlA9ImludGVybmFsLnRhc2tTZW5kQWRzSGl0cyI7dmFyIEhUPXtnZXRJdGVtOmZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBjPVhGKHRoaXMpLlBiKCksZD1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtkW2NdJiYoYj1kW2NdLmhhc093blByb3BlcnR5KCJndG0uIithKT9kW2NdWyJndG0uIithXTpudWxsKTtyZXR1cm4gYn0sc2V0SXRlbTpmdW5jdGlvbihhLGIpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYz1YRih0aGlzKS5QYigpLGQ9YWwoNyxmdW5jdGlvbigpe3JldHVybnt9fSk7ZFtjXT1kW2NdfHx7fTtkW2NdWyJndG0uIithXT1iO30sCnJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBiPVhGKHRoaXMpLlBiKCksYz1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtpZighY1tiXXx8IWNbYl0uaGFzT3duUHJvcGVydHkoImd0bS4iK2EpKXJldHVybjtkZWxldGUgY1tiXVsiZ3RtLiIrYV07fSxjbGVhcjpmdW5jdGlvbigpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYT1YRih0aGlzKS5QYigpO2RlbGV0ZSBhbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KVthXTt9LApwdWJsaWNOYW1lOiJ0ZW1wbGF0ZVN0b3JhZ2UifTtmdW5jdGlvbiBJVChhLGIpe3ZhciBjPSExO3JldHVybiBjfUlULlA9ImludGVybmFsLnRlc3RSZWdleCI7ZnVuY3Rpb24gSlQoYSl7dmFyIGI7cmV0dXJuIGJ9O2Z1bmN0aW9uIEtUKGEsYil7fUtULlA9ImludGVybmFsLnRyYWNrVXNhZ2UiO2Z1bmN0aW9uIExUKGEsYil7dmFyIGM7cmV0dXJuIGN9TFQuUD0iaW50ZXJuYWwudW5zdWJzY3JpYmVGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBNVChhKXt9TVQucHVibGljTmFtZT0idXBkYXRlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBOVChhKXt2YXIgYj0hMTtyZXR1cm4gYn1OVC5QPSJpbnRlcm5hbC51c2VyRGF0YU5lZWRzRW5jcnlwdGlvbiI7dmFyIE9UPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBhaX0sUVQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGI7dmFyIGM9UFQuSDtpZihjLmNvbnRhaW5zKGEpKWI9Yy5nZXQoYSx0aGlzKTtlbHNle3ZhciBkO2lmKGQ9Yy5ILmhhc093blByb3BlcnR5KGEpKXt2YXIgZT10aGlzLlQueGIoKTtpZihlKXt2YXIgZj0hMSxnPWUuUGIoKTtpZihnKXtCaChnKXx8KGY9ITApO31kPWZ9ZWxzZSBkPSEwfWlmKGQpe3ZhciBoPWMuSC5oYXNPd25Qcm9wZXJ0eShhKT9jLkhbYV06dm9pZCAwO2I9aH1lbHNlIHRocm93IEVycm9yKGErIiBpcyBub3QgYSB2YWxpZCBBUEkgbmFtZS4iKTt9cmV0dXJuIGJ9fSxQVDtmdW5jdGlvbiBSVChhLGIsYyl7UFR8fChQVD1uZXcgT1QpO1BULkguYWRkKGEsYixjKX1mdW5jdGlvbiBTVChhLGIpe1BUfHwoUFQ9bmV3IE9UKTt2YXIgYz1QVC5IO2lmKGMuSC5oYXNPd25Qcm9wZXJ0eShhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYSBwcml2YXRlIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZihjLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIHByaXZhdGUgZnVuY3Rpb24gd2l0aCBhbiBleGlzdGluZyBBUEkgbmFtZTogIithKyIuIik7Yy5IW2FdPXliKGIpP3RoKGEsYik6dWgoYSxiKX07ZnVuY3Rpb24gVFQoYSxiKXtmdW5jdGlvbiBjKGQpe2lmKCFlaChkKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgZT1UZChkLHRoaXMuVCwxKS5yYigpO2EoZSl9Yy5QPSJpbnRlcm5hbC4iK2I7cmV0dXJuIGN9O2Z1bmN0aW9uIFVUKCl7dmFyIGE9ZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgU1QoYy5QLGMpfSxiPWZ1bmN0aW9uKGMpe3JldHVybiB2b2lkIFJUKGMucHVibGljTmFtZSxjKX07YihSRik7YihZRik7YihSRyk7YihURyk7YihVRyk7YihkSCk7YihmSCk7YihoSSk7YihQUygpKTtiKGpJKTtiKE9PKTtiKFBPKTtiKGxQKTtiKG1QKTtiKG5QKTtiKHVQKTtiKHZQKTtiKHJTKTtiKHVTKTtiKEJTKTtiKERTKTtiKFRTKTtiKFdTKTtiKFpTKTtiKGFUKTtiKGJUKTtiKGRUKTtiKG9UKTtiKHJUKTtiKHVUKTtiKHlUKTtiKENUKTtiKEhUKTtiKE1UKTtSVCgiTWF0aCIsemgoKSk7UlQoIk9iamVjdCIsWmgpO1JUKCJUZXN0SGVscGVyIixjaSgpKTtSVCgiYXNzZXJ0QXBpIix3aCk7UlQoImFzc2VydFRoYXQiLHhoKTtSVCgiZGVjb2RlVXJpIixDaCk7UlQoImRlY29kZVVyaUNvbXBvbmVudCIsRGgpO1JUKCJlbmNvZGVVcmkiLEVoKTtSVCgiZW5jb2RlVXJpQ29tcG9uZW50IixGaCk7UlQoImZhaWwiLApMaCk7UlQoImdlbmVyYXRlUmFuZG9tIixOaCk7UlQoImdldFRpbWVzdGFtcCIsT2gpO1JUKCJnZXRUaW1lc3RhbXBNaWxsaXMiLE9oKTtSVCgiZ2V0VHlwZSIsUGgpO1JUKCJtYWtlSW50ZWdlciIsUmgpO1JUKCJtYWtlTnVtYmVyIixTaCk7UlQoIm1ha2VTdHJpbmciLFRoKTtSVCgibWFrZVRhYmxlTWFwIixVaCk7UlQoIm1vY2siLFhoKTtSVCgibW9ja09iamVjdCIsWWgpO1JUKCJmcm9tQmFzZTY0IixITywhKCJhdG9iImluIEEpKTtSVCgibG9jYWxTdG9yYWdlIixTUywhUlMoKSk7UlQoInRvQmFzZTY0IixKVCwhKCJidG9hImluIEEpKTthKFFGKTthKFVGKTthKG5HKTthKHNHKTthKElHKTthKFBHKTthKFNHKTthKFZHKTthKFdHKTthKFpHKTthKCRHKTthKGFIKTthKGJIKTthKGNIKTthKGVIKTthKGdIKTthKGdJKTthKGlJKTthKGtJKTthKGxJKTthKG1JKTthKG5JKTthKG9JKTthKGZKKTthKG1KKTthKHRKKTthKHVKKTthKEFKKTthKEZKKTthKEtKKTthKFJKKTthKFdKKTthKGdLKTsKYShpSyk7YSh2Syk7YSh3Syk7YSh4Syk7YShGTyk7YShHTyk7YShJTyk7YShKTyk7YShLTyk7YShMTyk7YShNTyk7YShOTyk7YShRTyk7YShSTyk7YShTTyk7YShUTyk7YShVTyk7YShWTyk7YShXTyk7YShYTyk7YShZTyk7YShaTyk7YSgkTyk7YShhUCk7YShiUCk7YShjUCk7YShkUCk7YShlUCk7YShmUCk7YShnUCk7YShoUCk7YShpUCk7YShqUCk7YShrUCk7YShvUCk7YShwUCk7YShxUCk7YShyUCk7YShzUCk7YSh0UCk7YSh3UCk7YShvUyk7YShwUyk7YSh0Uyk7YSh2Uyk7YShDUyk7YShFUyk7YShGUyk7YShHUyk7YShIUyk7YShJUyk7YShKUyk7YShLUyk7YShMUyk7YShNUyk7YShOUyk7YShPUyk7YShRUyk7YShHRyk7YShVUyk7YShWUyk7YShYUyk7YShZUyk7YSgkUyk7YShjVCk7YShlVCk7YShmVCk7YShoVCk7YShpVCk7YShqVCk7YShsVCk7YShtVCk7YShuVCk7YShwVCk7YShxVCk7YShzVCk7YSh0VCk7YSh2VCk7YSh3VCk7YSh4VCk7YSh6VCk7YShBVCk7YShCVCk7YShEVCk7CmEoRVQpO2EoRlQpO2EoR1QpO2EoSVQpO2EoS1QpO2EoTFQpO2EoTlQpO1NUKCJpbnRlcm5hbC5JZnJhbWluZ1N0YXRlU2NoZW1hIixzUygpKTtTVCgiaW50ZXJuYWwucXVpY2tIYXNoIixNaCk7YShUVChNRiwidGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiKSksYShUVChQRiwidGFza1NldFVuaXZlcnNhbFBhcmFtcyIpKTthKFRUKExGLCJ0YXNrQWRkQWRzQ2xpY2tJZHMiKSk7UFR8fChQVD1uZXcgT1QpO3JldHVybiBRVCgpfTt2YXIgSkY7ZnVuY3Rpb24gVlQoKXtKRi5zZChmdW5jdGlvbihhLGIsYyl7bGooKTt2YXIgZD1qajtkLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRT1kLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRXx8MDtkLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRSsrO3RyeXtyZXR1cm4gYS5hcHBseShiLGMpfWZpbmFsbHl7bGooKSxqai5ILlNBTkRCT1hFRF9KU19TRU1BUEhPUkUtLX19KX1mdW5jdGlvbiBXVChhKXtpZihhJiZhLmxlbmd0aClmb3IodmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pLGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9YVtjXS5yZXBsYWNlKC9eXyovLCIiKTtiW2RdPVsic2FuZGJveGVkU2NyaXB0cyJdfX0KZnVuY3Rpb24gWFQoYSl7aWYoYSl7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO0diKGEsZnVuY3Rpb24oYyxkKXtmb3IodmFyIGU9MDtlPGQubGVuZ3RoO2UrKyl7dmFyIGY9ZFtlXS5yZXBsYWNlKC9eXyovLCIiKTtiW2ZdPWJbZl18fFtdO2JbZl0ucHVzaChjKX19KX19O2Z1bmN0aW9uIFpUKGEpe21EKHBDKCJkZXZlbG9wZXJfaWQuIithLCEwKSwwLHt9KX07ZnVuY3Rpb24gJFQoYSxiKXtyZXR1cm4gRWQoYSxifHxudWxsKX1mdW5jdGlvbiBZKGEpe3JldHVybiB3aW5kb3cuZW5jb2RlVVJJQ29tcG9uZW50KGEpfWZ1bmN0aW9uIGFVKGEpe1pjKGEsdm9pZCAwLHZvaWQgMCl9ZnVuY3Rpb24gYlUoYSl7dmFyIGI9WyJ2ZWludGVyYWN0aXZlLmNvbSIsInZlLWludGVyYWN0aXZlLmNuIl07aWYoIWEpcmV0dXJuITE7dmFyIGM9TGooUmooYSksImhvc3QiKTtpZighYylyZXR1cm4hMTtmb3IodmFyIGQ9MDtiJiZkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXSYmYltkXS50b0xvd2VyQ2FzZSgpO2lmKGUpe3ZhciBmPWMubGVuZ3RoLWUubGVuZ3RoO2Y+MCYmZS5jaGFyQXQoMCkhPT0iLiImJihmLS0sZT0iLiIrZSk7aWYoZj49MCYmYy5pbmRleE9mKGUsZik9PT1mKXJldHVybiEwfX1yZXR1cm4hMX0KZnVuY3Rpb24gY1UoYSxiLGMpe2Zvcih2YXIgZD17fSxlPSExLGY9MDthJiZmPGEubGVuZ3RoO2YrKylhW2ZdJiZhW2ZdLmhhc093blByb3BlcnR5KGIpJiZhW2ZdLmhhc093blByb3BlcnR5KGMpJiYoZFthW2ZdW2JdXT1hW2ZdW2NdLGU9ITApO3JldHVybiBlP2Q6bnVsbH1mdW5jdGlvbiBkVShhLGIpe3ZhciBjPXt9O2lmKGEpZm9yKHZhciBkIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbZF09YVtkXSk7aWYoYil7dmFyIGU9Y1UoYiwicGFyYW1ldGVyIiwicGFyYW1ldGVyVmFsdWUiKTtlJiYoYz0kVChlLGMpKX1yZXR1cm4gY31mdW5jdGlvbiBlVShhLGIsYyl7cmV0dXJuIGE9PT12b2lkIDB8fGE9PT1jP2I6YX1mdW5jdGlvbiBmVShhLGIsYyl7cmV0dXJuIFVjKGEsYixjLHZvaWQgMCl9ZnVuY3Rpb24gZ1UoYSxiKXtBW2FdPWJ9ZnVuY3Rpb24gaFUoYSxiLGMpe3ZhciBkPUE7YiYmKGRbYV09PT12b2lkIDB8fGMmJiFkW2FdKSYmKGRbYV09Yik7cmV0dXJuIGRbYV19dmFyIGlVPXt9LGpVPVguVjt2YXIgWj17c2VjdXJpdHlHcm91cHM6e319OwoKWi5zZWN1cml0eUdyb3Vwcy5hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZT1bImdvb2dsZSJdLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZT1mdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LGFhOmZ1bmN0aW9uKCl7cmV0dXJue319fX0sWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlLk89ImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIixaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UuaXNWZW5kb3JUZW1wbGF0ZT0hMCxaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UucHJpb3JpdHlPdmVycmlkZT0wLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5pc0luZnJhc3RydWN0dXJlPSExLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZVsiNSJdPSExLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZVsiNiJdPSExOwoKCgpaLnNlY3VyaXR5R3JvdXBzLnJlYWRfZXZlbnRfZGF0YT1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMpe3JldHVybntrZXk6Y319KGZ1bmN0aW9uKGIpe1ouX19yZWFkX2V2ZW50X2RhdGE9YjtaLl9fcmVhZF9ldmVudF9kYXRhLk89InJlYWRfZXZlbnRfZGF0YSI7Wi5fX3JlYWRfZXZlbnRfZGF0YS5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19yZWFkX2V2ZW50X2RhdGEucHJpb3JpdHlPdmVycmlkZT0wO1ouX19yZWFkX2V2ZW50X2RhdGEuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fcmVhZF9ldmVudF9kYXRhWyI1Il09ITE7Wi5fX3JlYWRfZXZlbnRfZGF0YVsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfZXZlbnREYXRhQWNjZXNzLGQ9Yi52dHBfa2V5UGF0dGVybnN8fFtdLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnKXtpZihnIT1udWxsJiYhemIoZykpdGhyb3cgZShmLHtrZXk6Z30sIktleSBtdXN0IGJlIGEgc3RyaW5nLiIpOwppZihjIT09ImFueSIpe3RyeXtpZihjPT09InNwZWNpZmljIiYmZyE9bnVsbCYmRWcoZyxkKSlyZXR1cm59Y2F0Y2goaCl7dGhyb3cgZShmLHtrZXk6Z30sIkludmFsaWQga2V5IGZpbHRlci4iKTt9dGhyb3cgZShmLHtrZXk6Z30sIlByb2hpYml0ZWQgcmVhZCBmcm9tIGV2ZW50IGRhdGEuIik7fX0sYWE6YX19KX0oKTsKCgoKCgoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3JldHVybnt9fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1iO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLk89ImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSxhYTphfX0pfSgpOwoKClouc2VjdXJpdHlHcm91cHMubGlzdGVuX2RhdGFfbGF5ZXI9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57ZXZlbnROYW1lOmN9fShmdW5jdGlvbihiKXtaLl9fbGlzdGVuX2RhdGFfbGF5ZXI9YjtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIuTz0ibGlzdGVuX2RhdGFfbGF5ZXIiO1ouX19saXN0ZW5fZGF0YV9sYXllci5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19saXN0ZW5fZGF0YV9sYXllci5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyWyI1Il09ITE7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9hY2Nlc3NUeXBlLGQ9Yi52dHBfYWxsb3dlZEV2ZW50c3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcpe2lmKCF6YihnKSl0aHJvdyBlKGYse2V2ZW50TmFtZTpnfSwKIkV2ZW50IG5hbWUgbXVzdCBiZSBhIHN0cmluZy4iKTtpZighKGM9PT0iYW55Inx8Yz09PSJzcGVjaWZpYyImJmQuaW5kZXhPZihnKT49MCkpdGhyb3cgZShmLHtldmVudE5hbWU6Z30sIlByb2hpYml0ZWQgbGlzdGVuIG9uIGRhdGEgbGF5ZXIgZXZlbnQuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGE9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57ZGF0YVNvdXJjZTpjfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGE9YjtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5PPSJkZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhIjtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhWyI1Il09ITE7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGFbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGQsCmUpe2lmKGUhPT0iYXV0byImJmUhPT0ibWFudWFsIiYmZSE9PSJjb2RlIil0aHJvdyBjKGQse30sIlVua25vd24gdXNlciBwcm92aWRlZCBkYXRhIHNvdXJjZS4iKTtpZihiLnZ0cF9saW1pdERhdGFTb3VyY2VzKWlmKGUhPT0iYXV0byJ8fGIudnRwX2FsbG93QXV0b0RhdGFTb3VyY2VzKXtpZihlPT09Im1hbnVhbCImJiFiLnZ0cF9hbGxvd01hbnVhbERhdGFTb3VyY2VzKXRocm93IGMoZCx7fSwiRGV0ZWN0aW9uIG9mIHVzZXIgcHJvdmlkZWQgZGF0YSB2aWEgbWFudWFsbHkgc3BlY2lmaWVkIENTUyBzZWxlY3RvcnMgaXMgbm90IGFsbG93ZWQuIik7aWYoZT09PSJjb2RlIiYmIWIudnRwX2FsbG93Q29kZURhdGFTb3VyY2VzKXRocm93IGMoZCx7fSwiRGV0ZWN0aW9uIG9mIHVzZXIgcHJvdmlkZWQgZGF0YSBmcm9tIGFuIGluLXBhZ2UgdmFyaWFibGUgaXMgbm90IGFsbG93ZWQuIik7fWVsc2UgdGhyb3cgYyhkLHt9LCJBdXRvbWF0aWMgZGV0ZWN0aW9uIG9mIHVzZXIgcHJvdmlkZWQgZGF0YSBpcyBub3QgYWxsb3dlZC4iKTsKfSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmdldF91cmw9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybntjb21wb25lbnQ6YyxxdWVyeUtleTpkfX0oZnVuY3Rpb24oYil7Wi5fX2dldF91cmw9YjtaLl9fZ2V0X3VybC5PPSJnZXRfdXJsIjtaLl9fZ2V0X3VybC5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19nZXRfdXJsLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZ2V0X3VybC5pc0luZnJhc3RydWN0dXJlPSExO1ouX19nZXRfdXJsWyI1Il09ITE7Wi5fX2dldF91cmxbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX3VybFBhcnRzPT09ImFueSI/bnVsbDpbXTtjJiYoYi52dHBfcHJvdG9jb2wmJmMucHVzaCgicHJvdG9jb2wiKSxiLnZ0cF9ob3N0JiZjLnB1c2goImhvc3QiKSxiLnZ0cF9wb3J0JiZjLnB1c2goInBvcnQiKSxiLnZ0cF9wYXRoJiZjLnB1c2goInBhdGgiKSxiLnZ0cF9leHRlbnNpb24mJmMucHVzaCgiZXh0ZW5zaW9uIiksYi52dHBfcXVlcnkmJgpjLnB1c2goInF1ZXJ5IiksYi52dHBfZnJhZ21lbnQmJmMucHVzaCgiZnJhZ21lbnQiKSk7dmFyIGQ9YyYmYi52dHBfcXVlcmllc0FsbG93ZWQhPT0iYW55Ij9iLnZ0cF9xdWVyeUtleXN8fFtdOm51bGwsZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcsaCl7aWYoZyl7aWYoIXpiKGcpKXRocm93IGUoZix7fSwiVVJMIGNvbXBvbmVudCBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKGMmJmMuaW5kZXhPZihnKTwwKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBVUkwgY29tcG9uZW50OiAiK2cpO2lmKGc9PT0icXVlcnkiJiZkKXtpZighaCl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgZnJvbSBnZXR0aW5nIGVudGlyZSBVUkwgcXVlcnkgd2hlbiBxdWVyeSBrZXlzIGFyZSBzcGVjaWZpZWQuIik7aWYoIXpiKGgpKXRocm93IGUoZix7fSwiUXVlcnkga2V5IG11c3QgYmUgYSBzdHJpbmcuIik7aWYoZC5pbmRleE9mKGgpPDApdGhyb3cgZShmLHt9LAoiUHJvaGliaXRlZCBxdWVyeSBrZXk6ICIraCk7fX1lbHNlIGlmKGMpdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIGZyb20gZ2V0dGluZyBlbnRpcmUgVVJMIHdoZW4gY29tcG9uZW50cyBhcmUgc3BlY2lmaWVkLiIpO30sYWE6YX19KX0oKTsKCgoKWi5zZWN1cml0eUdyb3Vwcy5yZWFkX2RvbV9lbGVtZW50cz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShiLGMsZCl7cmV0dXJue3R5cGU6Yyx2YWx1ZTpkfX0oZnVuY3Rpb24oYil7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzPWI7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLk89InJlYWRfZG9tX2VsZW1lbnRzIjtaLl9fcmVhZF9kb21fZWxlbWVudHMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fcmVhZF9kb21fZWxlbWVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19yZWFkX2RvbV9lbGVtZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19yZWFkX2RvbV9lbGVtZW50c1siNSJdPSExO1ouX19yZWFkX2RvbV9lbGVtZW50c1siNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWxsb3dlZEVsZW1lbnRJZHN8fCJub25lIixkPWIudnRwX2FsbG93ZWRDc3NTZWxlY3RvcnN8fCJub25lIixlPWIudnRwX2VsZW1lbnRJZHN8fFtdLGY9Yi52dHBfY3NzU2VsZWN0b3JzfHxbXSxnPQpiLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihoLGwsbil7c3dpdGNoKGwpe2Nhc2UgImlkIjppZihjPT09Im5vbmUiKWJyZWFrO2lmKGM9PT0iYW55Inx8ZS5pbmRleE9mKG4pPi0xKXJldHVybjticmVhaztjYXNlICJjc3MiOmlmKGQ9PT0ibm9uZSIpYnJlYWs7aWYoZD09PSJhbnkifHxmLmluZGV4T2Yobik+LTEpcmV0dXJuO2JyZWFrO2RlZmF1bHQ6dGhyb3cgZyhoLHt9LCJVbmtub3duIHNlbGVjdG9yIHR5cGUgIitsKyIuIik7fXRocm93IGcoaCx7fSwiUHJvaGliaXRlZCBzZWxlY3RvciB2YWx1ZSAiK24rIiBmb3Igc2VsZWN0b3IgdHlwZSAiK2wrIi4iKTt9LGFhOmF9fSl9KCk7CgoKCmZ1bmN0aW9uIGtVKCl7dmFyIGE9e30sYj17ZGF0YUxheWVyOnRBLGNhbGxiYWNrOmZ1bmN0aW9uKGMpe2EuaGFzT3duUHJvcGVydHkoYykmJnliKGFbY10pJiZhW2NdKCk7ZGVsZXRlIGFbY119LGJvb3RzdHJhcDowfTtyZXR1cm4gYn0KZnVuY3Rpb24gbFUoKXt2YXIgYT1rVSgpO29qKGEpO0NrKCk7akEoKTt2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSk7UWIoYixaLnNlY3VyaXR5R3JvdXBzKTt2YXIgYz15ayh6aygpKSxkLGU9Yz09bnVsbD92b2lkIDA6KGQ9Yy5jb250ZXh0KT09bnVsbD92b2lkIDA6ZC5zb3VyY2U7S2woZSxjPT1udWxsP3ZvaWQgMDpjLnBhcmVudCk7ZSE9PTImJmUhPT00JiZlIT09M3x8UCgxNDIpO3JldHVybiBhfWZ1bmN0aW9uIG1VKCl7dmFyIGE9RSg2MCk7aWYoYSlmb3IodmFyIGI9YS5zcGxpdCgiLiIpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXSxlPVRMO2QmJihlLkhbZF09ITApfX0KZnVuY3Rpb24gblUoKXt6cCgpO2xqKCk7Zm9yKHZhciBhPWRhdGEucmVzb3VyY2V8fHt9LGI9Y0EsYz1hLm1hY3Jvc3x8W10sZD0wO2Q8Yy5sZW5ndGg7ZCsrKWIubWFjcm9zLnB1c2gobmV3IFV6KGNbZF0sZCxiLnRhZ3MsYi5tYWNyb3MpKTtmb3IodmFyIGU9YS50YWdzfHxbXSxmPTA7ZjxlLmxlbmd0aDtmKyspYi50YWdzLnB1c2gobmV3IFl6KGVbZl0sZixiLnRhZ3MsYi5tYWNyb3MpKTtmb3IodmFyIGc9YS5wcmVkaWNhdGVzfHxbXSxoPTA7aDxnLmxlbmd0aDtoKyspYi5wcmVkaWNhdGVzLnB1c2gobmV3IFZ6KGdbaF0sYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBsPWEucnVsZXN8fFtdLG49MDtuPGwubGVuZ3RoO24rKyliLnJ1bGVzLnB1c2gobmV3IFd6KGxbbl0sbikpO1F6PVo7dmFyIHA9ZGF0YS5wZXJtaXNzaW9uc3x8e30scT1aO2RnPW5ldyBnZyhFKDUpLHAscSk7dmFyIHI9ZGF0YS5zYW5kYm94ZWRfc2NyaXB0cyx0PWRhdGEuc2VjdXJpdHlfZ3JvdXBzLHU9ZGF0YS5ydW50aW1lfHwKW10sdj1kYXRhLnJ1bnRpbWVfbGluZXM7SkY9bmV3IHBmO1ZUKCk7UHo9SUYoKTt2YXIgeD1KRix5PVVUKCksej1uZXcgTGQoInJlcXVpcmUiLHkpO3ouWmEoKTt4LkguSC5zZXQoInJlcXVpcmUiLHopO2RiLnNldCgicmVxdWlyZSIseik7Zm9yKHZhciBDPTA7Qzx1Lmxlbmd0aDtDKyspe3ZhciBEPXVbQ107aWYoIUFycmF5LmlzQXJyYXkoRCl8fEQubGVuZ3RoPDMpe2lmKEQubGVuZ3RoPT09MCljb250aW51ZTticmVha312JiZ2W0NdJiZ2W0NdLmxlbmd0aCYmUGYoRCx2W0NdKTt0cnl7SkYuZXhlY3V0ZShEKX1jYXRjaChvVSl7fX1XVChyKTtYVCh0KTt2YXIgST1sVSgpO2lGKCk7dm0uYmluZCgpO2lmKCFEailmb3IodmFyIEc9Qm0oKT9lcChMZig1KSk6ZXAoTGYoNCkpLE49bShSbyksUz1OLm5leHQoKTshUy5kb25lO1M9Ti5uZXh0KCkpe3ZhciBXPVMudmFsdWUsZWE9VyxqYT1HW1ddPyJncmFudGVkIjoiZGVuaWVkIjt0bCgpLmltcGxpY2l0KGVhLGphKX1oRS5iaW5kKCk7VEIoKTsKT0IoKTtmbi5OJiYoZ3ooKSxmeihBRiksZ0EoKSxjQj1uZXcgYkIsZnooaXopLE9DKCksREZ8fChERj1uZXcgQkYpLGZCfHwoZkI9bmV3IGVCKSxGRj1uZXcgRUYpO2lmKGZuLkspe0RFLmJpbmQoKTttQy5iaW5kKCk7d0UuYmluZCgpO3ZhciBmYT1BaygpO2lmKGZhKXt2YXIgc2E7YTp7dmFyIGRhLG1hPShkYT1mYS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6ZGEuc3JjO2lmKG1hKXt2YXIgUGE7dHJ5e3ZhciBGYTtQYT0oRmE9cmQoKSk9PW51bGw/dm9pZCAwOkZhLmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIil9Y2F0Y2gob1Upe31pZihQYSl7Zm9yKHZhciBxYT0tMSxpYj1tKFBhKSxYYj1pYi5uZXh0KCk7IVhiLmRvbmU7WGI9aWIubmV4dCgpKXt2YXIgTGM9WGIudmFsdWU7aWYoTGMuaW5pdGlhdG9yVHlwZT09PQoic2NyaXB0IiYmKHFhKz0xLExjLm5hbWUucmVwbGFjZShORSwiIik9PT1tYS5yZXBsYWNlKE5FLCIiKSkpe3NhPXFhO2JyZWFrIGF9fVAoMTQ2KX1lbHNlIFAoMTQ1KX1zYT12b2lkIDB9dmFyIFFkPXNhO1FkIT09dm9pZCAwJiYoZmEuY2Fub25pY2FsQ29udGFpbmVySWQmJlVtKCJydGciLFN0cmluZyhmYS5jYW5vbmljYWxDb250YWluZXJJZCkpLFVtKCJzbG8iLFN0cmluZyhRZCkpLFVtKCJobG8iLGZhLmh0bWxMb2FkT3JkZXJ8fCItMSIpLFVtKCJsc3QiLFN0cmluZyhmYS5sb2FkU2NyaXB0VHlwZXx8IjAiKSkpfWVsc2UgUCgxNDQpO3ZhciBZYzt2YXIgRGQ9eGsoKTtpZihEZClpZihEZC5jYW5vbmljYWxDb250YWluZXJJZClZYz1EZC5jYW5vbmljYWxDb250YWluZXJJZDtlbHNle3ZhciBqZix2aD1EZC5zY3JpcHRDb250YWluZXJJZHx8KChqZj1EZC5kZXN0aW5hdGlvbnMpPT1udWxsP3ZvaWQgMDpqZlswXSk7WWM9dmg/Il8iK3ZoOnZvaWQgMH1lbHNlIFljPXZvaWQgMDt2YXIgSkU9ClljO0pFJiZVbSgicGNpZCIsSkUpO1VtKCJidCIsU3RyaW5nKElmKDQ3KT8yOklmKDUwKT8xOjApKTtVbSgiY3QiLFN0cmluZyhJZig0Nyk/MDpJZig1MCk/MTozKSk7QUUuYmluZCgpO2Zvcih2YXIgV3I9W10sWHI9W10sS0U9bShPYmplY3Qua2V5cyhHRSkpLFlyPUtFLm5leHQoKTshWXIuZG9uZTtZcj1LRS5uZXh0KCkpe3ZhciBybT1Zci52YWx1ZTtpZih3aW5kb3cuaXNTZWN1cmVDb250ZXh0fHwhSUVbcm1dKXt2YXIgTEU9R0Vbcm1dKCk7aWYoeWIoTEUpKXt2YXIgTUU9RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoTEUpO1RiKE1FLCJ7IFtuYXRpdmUgY29kZV0gfSIpfHxUYihNRSwie1xuICAgIFtuYXRpdmUgY29kZV1cbn0iKXx8WHIucHVzaChybSl9ZWxzZSBXci5wdXNoKHJtKX19V3IubGVuZ3RoPjAmJlVtKCJqc20iLFdyLmpvaW4oIn4iKSk7WHIubGVuZ3RoPjAmJlVtKCJqc3AiLFhyLmpvaW4oIn4iKSk7RXl8fChFeT1uZXcgRHkpfWhGKCk7aW0oMSk7RUcoKTtyZXR1cm4gSX0KZnVuY3Rpb24gdW0oKXt0cnl7aWYoIWhrKCkmJihJZig0Nyl8fCFOaygpKSl7SWYoNjQpJiZ3ai5ILksuYWRkKDExODUxNzkxNyk7emooKTtmbi5IJiZzeigpO1dmWzVdPSEwO3ZhciBhPWtqKCJkZWJ1Z0dyb3VwSWQiLGZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyhNYXRoLmZsb29yKE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKk1hdGgucmFuZG9tKCkpKX0pO1NsKGEpO2t0KCk7ekYoKTtGdCgpO1BCKCk7aWYoRGsoKSl7RSg1KTtERygpO2lCKCkucmVtb3ZlRXh0ZXJuYWxSZXN0cmljdGlvbnModmsoKSk7fWVsc2V7Rk0uUigpO25VKCkuYm9vdHN0cmFwPU5iKCk7SWYoNTEpJiZwRSgpOwpmbi5IJiZ0eigpO3R5cGVvZiBBLm5hbWU9PT0ic3RyaW5nIiYmU2IoQS5uYW1lLCJ3ZWItcGl4ZWwtc2FuZGJveC1DVVNUT00iKSYmc2QoKT9aVCgiZE1EZzBZeiIpOkEuU2hvcGlmeSYmKFpUKCJkTjJaa01qIiksc2QoKSYmWlQoImROVFUwWXoiKSk7bVUoKX19fWNhdGNoKGIpe2ltKDUpLGh6KCl9fQooZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe249Qi5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLXRhZy1hc3Npc3RhbnQtcHJlc2VudCIpO2dsKG4pJiYobD1oLnhtKX1mdW5jdGlvbiBjKCl7bCYmS2M/ZyhsKTphKCl9aWYoIUFbRSgzNyldKXt2YXIgZD0hMTtpZihCLnJlZmVycmVyKXt2YXIgZT1SaihCLnJlZmVycmVyKTtkPU5qKGUsImhvc3QiKT09PUUoMzgpfWlmKCFkKXt2YXIgZj1jcShFKDM5KSk7ZD0hKCFmLmxlbmd0aHx8IWZbMF0ubGVuZ3RoKX1kJiYoQVtFKDM3KV09ITAsVWMoRSg0MCkpKX12YXIgZz1mdW5jdGlvbih1KXt2YXIgdj0iR1RNIix4PSJHVE0iO0lmKDQ1KSYmKHY9Ik9HVCIseD0iR1RBRyIpO3ZhciB5PUUoMjMpLHo9QVt5XTt6fHwoej1bXSxBW3ldPXosVWMoImh0dHBzOi8vIitFKDMpKyIvZGVidWcvYm9vdHN0cmFwP2lkPSIrRSg1KSsiJnNyYz0iK3grIiZjb25kPSIrU3RyaW5nKHUpKyImZ3RtPSIrZHUoKSkpO3ZhciBDPXttZXNzYWdlVHlwZToiQ09OVEFJTkVSX1NUQVJUSU5HIiwKZGF0YTp7c2NyaXB0U291cmNlOktjLGNvbnRhaW5lclByb2R1Y3Q6dixkZWJ1ZzohMSxpZDpFKDUpLHRhcmdldFJlZjp7Y3RpZDpFKDUpLGlzRGVzdGluYXRpb246c2soKSxjYW5vbmljYWxJZDpFKDYpfSxhbGlhc2VzOndrKCksZGVzdGluYXRpb25zOnRrKCl9fSxEPUMuZGF0YTtELnJlc3VtZT1mdW5jdGlvbigpe2EoKX07RC5yZXN1bWVXaXRoTWVtb3M9ZnVuY3Rpb24oKXtzbCgxKTthKCl9O0lmKDIpJiYoQy5kYXRhLmluaXRpYWxQdWJsaXNoPSEwKTt6LnB1c2goQyl9LGg9e0dxOjEsUG06MixvbjozLGpsOjQseG06NX07aFtoLkdxXT0iR1RNX0RFQlVHX0xFR0FDWV9QQVJBTSI7aFtoLlBtXT0iR1RNX0RFQlVHX1BBUkFNIjtoW2gub25dPSJSRUZFUlJFUiI7aFtoLmpsXT0iQ09PS0lFIjtoW2gueG1dPSJFWFRFTlNJT05fUEFSQU0iO3ZhciBsPXZvaWQgMCxuPXZvaWQgMCxwPUxqKEEubG9jYXRpb24sInF1ZXJ5IiwhMSx2b2lkIDAsImd0bV9kZWJ1ZyIpO2dsKHApJiYobD1oLlBtKTsKaWYoIWwmJkIucmVmZXJyZXIpe3ZhciBxPVJqKEIucmVmZXJyZXIpO05qKHEsImhvc3QiKT09PUUoMjQpJiYobD1oLm9uKX1pZighbCl7dmFyIHI9Y3EoIl9fVEFHX0FTU0lTVEFOVCIpO3IubGVuZ3RoJiZyWzBdLmxlbmd0aCYmKGw9aC5qbCl9bHx8YigpO2lmKCFsJiZmbChuKSl7dmFyIHQ9ITE7JGMoQiwiVEFEZWJ1Z1NpZ25hbCIsZnVuY3Rpb24oKXt0fHwodD0hMCxiKCksYygpKX0sITEpO0Euc2V0VGltZW91dChmdW5jdGlvbigpe3R8fCh0PSEwLGIoKSxjKCkpfSwyMDApfWVsc2UgYygpfSkoZnVuY3Rpb24oKXshSWYoNDcpfHx0bSgpWyIwIl0/dW0oKTp4bSgpfSk7Cgp9KSgpCgo="}},"time_used":136,"timings":{"blocked":-1,"dns":2,"connect":18,"send":0,"wait":41,"receive":42,"ssl":34},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/assets/js/wc-gateway-ppec-order-review.js?ver=2.1.3","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.949Z","timestamp":1785148618949,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/woocommerce-gateway-paypal-express-checkout/assets/js/wc-gateway-ppec-order-review.js?ver=2.1.3 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 706\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:26 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":706,"size_decoded":921,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"d649457dc0514cfb294fe661a232ca96","sha1":"f7b27531870677185ad2dfce5e98dc1864a1ef49","sha256":"e6715392125611b5df168bbef4886e935ec0b98d1afe2eb31e0b4ae725964c58","sha512":"af9dc98c69e2cb1e9d2730ec2e4997071ce7a63d3b1cefb7a62e3b12bec4cde7488e7ffe890c8360eab2c6376cea2ba8e38b43780481135be8c41f94bf7c1f2e","ssdeep":"","tlshash":"aa01c59ef7a500370171b1f49a1f5e7c361468144a00a8237d5c87f45b4883b9a7f275","first_seen":"2023-03-07T12:03:17Z","last_seen":"2026-08-11T12:37:44.05632Z","times_seen":634,"resource_available":true,"data":"OyhmdW5jdGlvbiAoICQsIHdpbmRvdywgZG9jdW1lbnQgKSB7CgkndXNlIHN0cmljdCc7CgoJJCggJ2Zvcm0uY2hlY2tvdXQnICkub24oICdjbGljaycsICdpbnB1dFtuYW1lPSJwYXltZW50X21ldGhvZCJdJywgZnVuY3Rpb24oKSB7CgkJLy8gQXZvaWQgdG9nZ2xpbmcgc3VibWl0IGJ1dHRvbiBpZiBvbiBjb25maXJtYXRpb24gc2NyZWVuCgkJaWYgKCAkKCAnI3BheW1lbnQnICkuZmluZCggJy53Yy1nYXRld2F5LXBwZWMtY2FuY2VsJyApLmxlbmd0aCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIGlzUFBFQyAgICAgICA9ICQoIHRoaXMgKS5pcyggJyNwYXltZW50X21ldGhvZF9wcGVjX3BheXBhbCcgKTsKCQl2YXIgdG9nZ2xlUFBFQyAgID0gaXNQUEVDID8gJ3Nob3cnIDogJ2hpZGUnOwoJCXZhciB0b2dnbGVTdWJtaXQgPSBpc1BQRUMgPyAnaGlkZScgOiAnc2hvdyc7CgoJCSQoICcjd29vX3BwX2VjX2J1dHRvbl9jaGVja291dCcgKS5hbmltYXRlKCB7IG9wYWNpdHk6IHRvZ2dsZVBQRUMsIGhlaWdodDogdG9nZ2xlUFBFQywgcGFkZGluZzogdG9nZ2xlUFBFQyB9LCAyMzAgKTsKCQkkKCAnI3BsYWNlX29yZGVyJyApLmFuaW1hdGUoIHsgb3BhY2l0eTogdG9nZ2xlU3VibWl0LCBoZWlnaHQ6IHRvZ2dsZVN1Ym1pdCwgcGFkZGluZzogdG9nZ2xlU3VibWl0IH0sIDIzMCApOwoJfSApOwp9KSggalF1ZXJ5LCB3aW5kb3csIGRvY3VtZW50ICk7Cg=="}},"time_used":439,"timings":{"blocked":345,"dns":0,"connect":0,"send":0,"wait":94,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"stats.wp.com/e-202241.js","fqdn":"stats.wp.com","domain":"wp.com","tld":"com"},"ip":{"addr":"192.0.76.3","port":443,"asn":2635,"as":"AUTOMATTIC","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.959Z","timestamp":1785148618959,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"wp.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Tue, 02 Jun 2026 19:44:51 GMT","end":"Mon, 31 Aug 2026 19:44:50 GMT"},"fingerprint":{"sha1":"42:51:7D:8E:5C:5A:69:84:E1:DE:81:56:09:A0:5E:F0:DF:73:81:69","sha256":"B2:9B:2E:37:90:1C:35:4E:9E:08:7C:C5:EC:0E:FE:B8:B4:39:CE:28:20:4B:53:FF:4D:20:89:3B:86:65:6D:4D"}}},"request":{"raw":"GET /e-202241.js HTTP/1.1\r\nHost: stats.wp.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 10:36:58 GMT\r\ncontent-type: application/javascript\r\nvary: Accept-Encoding\r\nx-minify: t\r\nx-minify-cache: hit\r\netag: W/7134-1748959715313.3396\r\na8c-edge-cache: cache\r\ncontent-encoding: br\r\nexpires: Thu, 15 Oct 2026 06:44:08 GMT\r\ncache-control: max-age=31536000\r\naccess-control-allow-methods: GET, HEAD\r\naccess-control-allow-origin: *\r\nx-nc: HIT arn\r\nalt-svc: h3=\":443\"; ma=86400\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":3812,"size_decoded":1897,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (3812), with no line terminators","md5":"b1e85b83d13876fefcf2d873fde8da3e","sha1":"09d271f2a7dd17e66a19fcbfca887734d951ed2f","sha256":"2abd616c43c16e7a2d01f1f1c761d6c12acf4b2ed9a9a411289ee3bb5a681ffe","sha512":"a1ab2e32190702e46c440606a45e51dd073168fa11828683764aef077fb2b495343bd91ee784974244c37d0a52a8225d1a6359ffe0ddf0ec6971aeb7c50e3ec8","ssdeep":"","tlshash":"6b71646536c5f0381af630a5235f630af5ba8b7a7d4a9044c37cd4b07c79e8b9412f9a","first_seen":"2025-06-09T00:15:30.881783Z","last_seen":"2026-08-12T08:22:16.952299Z","times_seen":75136,"resource_available":true,"data":"d2luZG93LndwY29tPXdpbmRvdy53cGNvbXx8e307d2luZG93Ll9zdHE9d2luZG93Ll9zdHF8fFtdO2Z1bmN0aW9uIHN0X2dvKHQpe3dpbmRvdy5fc3RxLnB1c2goWyJ2aWV3Iix0XSl9O2Z1bmN0aW9uIGxpbmt0cmFja2VyX2luaXQodCxlKXt3aW5kb3cuX3N0cS5wdXNoKFsiY2xpY2tUcmFja2VySW5pdCIsdCxlXSl9O3dpbmRvdy53cGNvbS5zdGF0cz1mdW5jdGlvbigpe3ZhciB0PWZ1bmN0aW9uKCl7dmFyIHQsbjt2YXIgbz1mdW5jdGlvbih0LGUsbil7aWYoImZ1bmN0aW9uIj09PXR5cGVvZiB0LmFkZEV2ZW50TGlzdGVuZXIpe3QuYWRkRXZlbnRMaXN0ZW5lcihlLG4pfWVsc2UgaWYoIm9iamVjdCI9PT10eXBlb2YgdC5hdHRhY2hFdmVudCl7dC5hdHRhY2hFdmVudCgib24iK2Usbil9fTt2YXIgaT1mdW5jdGlvbih0KXtpZigib2JqZWN0Ij09PXR5cGVvZiB0JiZ0LnRhcmdldCl7cmV0dXJuIHQudGFyZ2V0fWVsc2V7cmV0dXJuIHdpbmRvdy5ldmVudC5zcmNFbGVtZW50fX07dmFyIHI9ZnVuY3Rpb24odCl7dmFyIG49MDtpZigib2JqZWN0Ij09PXR5cGVvZiBJbnN0YWxsVHJpZ2dlciluPTEwMDtpZig3PT09ZSgpKW49MTAwO2YoaSh0KSxuKX07dmFyIGM9ZnVuY3Rpb24odCl7ZihpKHQpLDApfTt2YXIgYT1mdW5jdGlvbih0KXt2YXIgZT1kb2N1bWVudC5sb2NhdGlvbjtpZihlLmhvc3Q9PT10Lmhvc3QpcmV0dXJuIHRydWU7aWYoIiI9PT10Lmhvc3QpcmV0dXJuIHRydWU7aWYoZS5wcm90b2NvbD09PXQucHJvdG9jb2wmJmUuaG9zdD09PXQuaG9zdG5hbWUpe2lmKCJodHRwOiI9PT1lLnByb3RvY29sJiZlLmhvc3QrIjo4MCI9PT10Lmhvc3QpcmV0dXJuIHRydWU7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sJiZlLmhvc3QrIjo0NDMiPT09dC5ob3N0KXJldHVybiB0cnVlfTtyZXR1cm4gZmFsc2V9O3ZhciBmPWZ1bmN0aW9uKGUsbyl7dHJ5e2lmKCJvYmplY3QiIT09dHlwZW9mIGUpcmV0dXJuO3doaWxlKCJBIiE9PWUubm9kZU5hbWUpe2lmKCJ1bmRlZmluZWQiPT09dHlwZW9mIGUubm9kZU5hbWUpcmV0dXJuO2lmKCJvYmplY3QiIT09dHlwZW9mIGUucGFyZW50Tm9kZSlyZXR1cm47ZT1lLnBhcmVudE5vZGV9O2lmKGEoZSkmJiFlLmhyZWYuaW5jbHVkZXMoIi93cC1jb250ZW50L3VwbG9hZHMiKSlyZXR1cm47aWYoImphdmFzY3JpcHQ6Ij09PWUucHJvdG9jb2wpcmV0dXJuO3dpbmRvdy5fc3RxLnB1c2goWyJjbGljayIse3M6IjIiLHU6ZS5ocmVmLHI6InVuZGVmaW5lZCIhPT10eXBlb2YgZS5yZWw/ZS5yZWw6IjAiLGI6InVuZGVmaW5lZCIhPT10eXBlb2YgdD90OiIwIixwOiJ1bmRlZmluZWQiIT09dHlwZW9mIG4/bjoiMCJ9XSk7aWYobyl7dmFyIGk9bmV3IERhdGU7dmFyIHI9aS5nZXRUaW1lKCkrbzt3aGlsZSh0cnVlKXtpPW5ldyBEYXRlO2lmKGkuZ2V0VGltZSgpPnIpe2JyZWFrfX19fWNhdGNoKHQpe319O3ZhciB1PXtpbml0OmZ1bmN0aW9uKGUsaSl7dD1lO249aTtpZihkb2N1bWVudC5ib2R5KXtvKGRvY3VtZW50LmJvZHksImNsaWNrIixyKTtvKGRvY3VtZW50LmJvZHksImNvbnRleHRtZW51IixjKX1lbHNlIGlmKGRvY3VtZW50KXtvKGRvY3VtZW50LCJjbGljayIscik7byhkb2N1bWVudCwiY29udGV4dG1lbnUiLGMpfX19O3JldHVybiB1fSgpO3ZhciBlPWZ1bmN0aW9uKCl7dmFyIHQ9MDtpZigib2JqZWN0Ij09PXR5cGVvZiBuYXZpZ2F0b3ImJm5hdmlnYXRvci5hcHBOYW1lPT0iTWljcm9zb2Z0IEludGVybmV0IEV4cGxvcmVyIil7dmFyIGU9bmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvTVNJRSAoWzAtOV17MSx9KVtcLjAtOV17MCx9Lyk7aWYobnVsbCE9PWUpe3Q9cGFyc2VJbnQoZVsxXSl9fTtyZXR1cm4gdH07dmFyIG49ZnVuY3Rpb24odCl7dmFyIGUsbj1bXTtmb3IoZSBpbiB0KXtpZih0Lmhhc093blByb3BlcnR5KGUpKXtuLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KGUpKyI9IitlbmNvZGVVUklDb21wb25lbnQodFtlXSkpfX07cmV0dXJuIG4uam9pbigiJiIpfTt2YXIgbz1mdW5jdGlvbih0LGUsbil7dmFyIG89bmV3IEltYWdlO28uc3JjPWRvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKyIvL3BpeGVsLndwLmNvbS8iK3QrIj8iK2UrIiZyYW5kPSIrTWF0aC5yYW5kb20oKTtvLmFsdD0iIjtvLndpZHRoPSI2IjtvLmhlaWdodD0iNSI7aWYoInN0cmluZyI9PT10eXBlb2YgbiYmZG9jdW1lbnQuYm9keSl7by5pZD1uO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobyl9fTt2YXIgaT1mdW5jdGlvbih0KXt0aGlzLmE9MTtpZih0JiZ0Lmxlbmd0aCl7Zm9yKHZhciBlPTA7ZTx0Lmxlbmd0aDtlKyspe3RoaXMucHVzaCh0W2VdKX19fTtpLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKHQpe2lmKHQpe2lmKCJvYmplY3QiPT09dHlwZW9mIHQmJnQubGVuZ3RoKXt2YXIgZT10LnNwbGljZSgwLDEpO2lmKGNbZV0pY1tlXS5hcHBseShudWxsLHQpfWVsc2UgaWYoImZ1bmN0aW9uIj09PXR5cGVvZiB0KXt0KCl9fX07dmFyIHI9ZnVuY3Rpb24oKXtpZighd2luZG93Ll9zdHEuYSl7d2luZG93Ll9zdHE9bmV3IGkod2luZG93Ll9zdHEpfX07dmFyIGM9e3ZpZXc6ZnVuY3Rpb24odCl7dC5ob3N0PWRvY3VtZW50LmxvY2F0aW9uLmhvc3Q7dC5yZWY9ZG9jdW1lbnQucmVmZXJyZXI7dC5mY3A9ZCgpO3RyeXtpZih0eXBlb2Ygd2luZG93IT09InVuZGVmaW5lZCImJndpbmRvdy5sb2NhdGlvbil7dmFyIGU9bmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZikuc2VhcmNoUGFyYW1zO3ZhciBpPWUmJkFycmF5LmZyb20oZS5lbnRyaWVzKCkpLmZpbHRlcigoW3RdKT0+dC5zdGFydHNXaXRoKCJ1dG1fIikpO3ZhciByPWk/T2JqZWN0LmZyb21FbnRyaWVzKGkpOnt9O3ZhciBjPUFycmF5LmZyb20oT2JqZWN0LmVudHJpZXModCkpLmZpbHRlcigoW3RdKT0+IXQuc3RhcnRzV2l0aCgidXRtXyIpKTt0PWM/T2JqZWN0LmZyb21FbnRyaWVzKGMpOnQ7dD1PYmplY3QuYXNzaWduKHQscil9fWNhdGNoKHQpe2lmKHdpbmRvdy5jb25zb2xlJiZ3aW5kb3cuY29uc29sZS5sb2cpe3dpbmRvdy5jb25zb2xlLmxvZyh0KX19bygiZy5naWYiLG4odCksIndwc3RhdHMiKX0sY2xpY2s6ZnVuY3Rpb24odCl7bygiYy5naWYiLG4odCksZmFsc2UpfSxjbGlja1RyYWNrZXJJbml0OmZ1bmN0aW9uKGUsbil7dC5pbml0KGUsbil9fTt2YXIgYT1mdW5jdGlvbigpe3JldHVybiB0eXBlb2YgZG9jdW1lbnQuaGlkZGVuIT09InVuZGVmaW5lZCImJmRvY3VtZW50LmhpZGRlbn07dmFyIGY9ZnVuY3Rpb24oKXtpZighZG9jdW1lbnQuaGlkZGVuKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixmKTtyKCl9fTt2YXIgdT1mdW5jdGlvbigpe2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLGYpfTtmdW5jdGlvbiBkKCl7aWYod2luZG93LnBlcmZvcm1hbmNlKXt2YXIgdD13aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKTtmb3IodmFyIGU9MDtlPHQubGVuZ3RoO2UrKyl7aWYodFtlXVsibmFtZSJdPT09ImZpcnN0LWNvbnRlbnRmdWwtcGFpbnQiKXtyZXR1cm4gTWF0aC5yb3VuZCh0W2VdWyJzdGFydFRpbWUiXSl9fX1yZXR1cm4gMH1pZig2PT09ZSgpJiYiY29tcGxldGUiIT09ZG9jdW1lbnQucmVhZHlTdGF0ZSYmIm9iamVjdCI9PT10eXBlb2YgZG9jdW1lbnQuYXR0YWNoRXZlbnQpe2RvY3VtZW50LmF0dGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKHQpe2lmKCJjb21wbGV0ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlKXdpbmRvdy5zZXRUaW1lb3V0KHIsMjUwKX0pfWVsc2V7aWYoYSgpKXt1KCl9ZWxzZXtyKCl9fTtyZXR1cm4gY30oKTs="}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/plan5.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.984Z","timestamp":1785148618984,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/plan5.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmEU9fChc4.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.461Z","timestamp":1785148619461,"http_version":"HTTP/3","security_state":"","security_info":null,"request":{"raw":"GET /s/roboto/v30/KFOlCnqEu92Fr1MmEU9fChc4.woff2 HTTP/1.1\r\nHost: fonts.gstatic.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: identity\r\nOrigin: https://equinuxglobalassets.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: font\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=5\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\naccept-ranges: bytes\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/apps-themes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"apps-themes\"\r\nreport-to: {\"group\":\"apps-themes\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/apps-themes\"}]}\r\ntiming-allow-origin: *\r\ncontent-length: 22648\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Mon, 27 Jul 2026 06:26:59 GMT\r\nexpires: Tue, 27 Jul 2027 06:26:59 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Wed, 11 May 2022 19:24:54 GMT\r\ncontent-type: font/woff2\r\nage: 15000\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"font/woff2","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/woocommerce/assets/js/jquery-cookie/jquery.cookie.min.js?ver=1.4.1-wc.6.9.4","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.653Z","timestamp":1785148618653,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/woocommerce/assets/js/jquery-cookie/jquery.cookie.min.js?ver=1.4.1-wc.6.9.4 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 1392\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:12 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1392,"size_decoded":1608,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (1241)","md5":"5dc9897cc1411b13f193806a5fcb498c","sha1":"d0460d4aed2af636761b80ea87f2a075b6f79de8","sha256":"fff09637c3bdbb4988240901f1ae70e3245cbc4ba4aff028fb1053c7064b0c6c","sha512":"9c1146c296d5dbb11fde5e776aeb99f2b00f5168cceaf040cbfce53dd0ad32ccc0907c9e3da948708b08b31f6d1987361467aa5ee71cef39d5c540f82ba27a92","ssdeep":"","tlshash":"2e2144943040b449953a2335233f69af3074ea3771de505ccb76e5a42db0d4316a3fba","first_seen":"2023-03-07T01:19:17Z","last_seen":"2026-08-09T14:54:28.005312Z","times_seen":434,"resource_available":true,"data":"LyohCiAqIGpRdWVyeSBDb29raWUgUGx1Z2luIHYxLjQuMQogKiBodHRwczovL2dpdGh1Yi5jb20vY2FyaGFydGwvanF1ZXJ5LWNvb2tpZQogKgogKiBDb3B5cmlnaHQgMjAxMyBLbGF1cyBIYXJ0bAogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UKICovCiFmdW5jdGlvbihlKXsiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kP2RlZmluZShbImpxdWVyeSJdLGUpOiJvYmplY3QiPT10eXBlb2YgZXhwb3J0cz9lKHJlcXVpcmUoImpxdWVyeSIpKTplKGpRdWVyeSl9KGZ1bmN0aW9uKGEpe3ZhciBvPS9cKy9nO2Z1bmN0aW9uIHMoZSl7cmV0dXJuIHgucmF3P2U6ZW5jb2RlVVJJQ29tcG9uZW50KGUpfWZ1bmN0aW9uIG0oZSxuKXtlPXgucmF3P2U6ZnVuY3Rpb24oZSl7MD09PWUuaW5kZXhPZignIicpJiYoZT1lLnNsaWNlKDEsLTEpLnJlcGxhY2UoL1xcIi9nLCciJykucmVwbGFjZSgvXFxcXC9nLCJcXCIpKTt0cnl7cmV0dXJuIGU9ZGVjb2RlVVJJQ29tcG9uZW50KGUucmVwbGFjZShvLCIgIikpLHguanNvbj9KU09OLnBhcnNlKGUpOmV9Y2F0Y2gobil7fX0oZSk7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIG4/bihlKTplfXZhciB4PWEuY29va2llPWZ1bmN0aW9uKGUsbixvKXt2YXIgaSx0O2lmKG4hPT11bmRlZmluZWQmJiJmdW5jdGlvbiIhPXR5cGVvZiBuKXJldHVybiJudW1iZXIiPT10eXBlb2Yobz1hLmV4dGVuZCh7fSx4LmRlZmF1bHRzLG8pKS5leHBpcmVzJiYoaT1vLmV4cGlyZXMsKHQ9by5leHBpcmVzPW5ldyBEYXRlKS5zZXRUaW1lKCt0Kzg2NGU1KmkpKSxkb2N1bWVudC5jb29raWU9W3MoZSksIj0iLCh0PW4scyh4Lmpzb24/SlNPTi5zdHJpbmdpZnkodCk6U3RyaW5nKHQpKSksby5leHBpcmVzPyI7IGV4cGlyZXM9IitvLmV4cGlyZXMudG9VVENTdHJpbmcoKToiIixvLnBhdGg/IjsgcGF0aD0iK28ucGF0aDoiIixvLmRvbWFpbj8iOyBkb21haW49IitvLmRvbWFpbjoiIixvLnNlY3VyZT8iOyBzZWN1cmUiOiIiXS5qb2luKCIiKTtmb3IodmFyIHI9ZT91bmRlZmluZWQ6e30sYz1kb2N1bWVudC5jb29raWU/ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7ICIpOltdLHU9MCxmPWMubGVuZ3RoO3U8Zjt1Kyspe3ZhciBkPWNbdV0uc3BsaXQoIj0iKSxwPShwPWQuc2hpZnQoKSx4LnJhdz9wOmRlY29kZVVSSUNvbXBvbmVudChwKSksZD1kLmpvaW4oIj0iKTtpZihlJiZlPT09cCl7cj1tKGQsbik7YnJlYWt9ZXx8KGQ9bShkKSk9PT11bmRlZmluZWR8fChyW3BdPWQpfXJldHVybiByfTt4LmRlZmF1bHRzPXt9LGEucmVtb3ZlQ29va2llPWZ1bmN0aW9uKGUsbil7cmV0dXJuIGEuY29va2llKGUpIT09dW5kZWZpbmVkJiYoYS5jb29raWUoZSwiIixhLmV4dGVuZCh7fSxuLHtleHBpcmVzOi0xfSkpLCFhLmNvb2tpZShlKSl9fSk7"}},"time_used":283,"timings":{"blocked":188,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/et-cache/4625/et-core-unified-4625.min.css?ver=1662279876","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.928Z","timestamp":1785148618928,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/et-cache/4625/et-core-unified-4625.min.css?ver=1662279876 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/css\r\nContent-Length: 3675\r\nConnection: keep-alive\r\nLast-Modified: Thu, 13 Oct 2022 10:53:24 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":3675,"size_decoded":3884,"mime_type":"text/css","magic":"ASCII text, with very long lines (3675), with no line terminators","md5":"f6232ccb8fc22f67a195f69d15b07451","sha1":"f51b2b84fd0308cb8ebe15541aff0523a26ad89f","sha256":"42fea74519e2c25a5eca8671cbdf3cd98316089d032ec811e03469c2216ae29a","sha512":"a962da65cbe6e65a9c468b2446126d4c8460c86e44492cc0fc329c5701673976c508cf2c97e9ba74c68394a7e2fdcf31d77405a371a86c49548d0113b4584efa","ssdeep":"","tlshash":"16718723ed44316a716bc61471c375bd383c9065fb664e3d69283abccbca5db1163b88","first_seen":"2026-07-27T08:11:28.918306Z","last_seen":"2026-07-27T10:37:50.40588Z","times_seen":3,"resource_available":false,"data":"Lndvb2NvbW1lcmNlLW1lc3NhZ2V7YmFja2dyb3VuZDojMjg0Njg1IWltcG9ydGFudDtmb250LWZhbWlseTptb250c2VycmF0fXAuY2FydC1lbXB0eS53b29jb21tZXJjZS1pbmZve2JhY2tncm91bmQ6IzI4NDY4NSFpbXBvcnRhbnQ7Zm9udC1mYW1pbHk6bW9udHNlcnJhdH0ud29vY29tbWVyY2UtbWVzc2FnZSBhLmJ1dHRvbi53Yy1mb3J3YXJke2NvbG9yOiMwMDB9dGFibGUuY2FydCB0aCwjbWFpbi1jb250ZW50IHRhYmxlLmNhcnQgdGgsdGFibGUuY2FydCB0ZCwjbWFpbi1jb250ZW50IHRhYmxlLmNhcnQgdGQsdGFibGUuY2FydCB0ciwjbWFpbi1jb250ZW50IHRhYmxlLmNhcnQgdHIsI2NvbnRlbnQtYXJlYSB0YWJsZSB0ciwjY29udGVudC1hcmVhIHRhYmxlIHRkLCNjb250ZW50LWFyZWEgdGFibGUgdGh7Zm9udC1mYW1pbHk6bW9udHNlcnJhdH0ud29vY29tbWVyY2UgLmNhcnQgLmJ1dHRvbiwud29vY29tbWVyY2UgLmNhcnQgaW5wdXQuYnV0dG9ue2JhY2tncm91bmQtY29sb3I6IzI4NDY4NSFpbXBvcnRhbnQ7Y29sb3I6d2hpdGU7Ym9yZGVyLWNvbG9yOiMyODQ2ODV9Lndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdCwud29vY29tbWVyY2UtcGFnZSBhLmJ1dHRvbi5hbHR7YmFja2dyb3VuZC1jb2xvcjojMjg0Njg1IWltcG9ydGFudDtjb2xvcjp3aGl0ZSFpbXBvcnRhbnQ7Ym9yZGVyLWNvbG9yOiMyODQ2ODU7Zm9udC1mYW1pbHk6bW9udHNlcnJhdH0uY2FydF90b3RhbHMgaDJ7Zm9udC1mYW1pbHk6bW9udHNlcnJhdH10ci5jYXJ0LXN1YnRvdGFse2ZvbnQtZmFtaWx5OmxhdG99dHIub3JkZXItdG90YWx7Zm9udC1mYW1pbHk6bGF0b30uZXQtY2FydC1pbmZvIHNwYW57ZGlzcGxheTpub25lfS5uYXYgbGkgdWx7Ym94LXNoYWRvdzowIDJweCA1cHggcmdiYSgwLDAsMCwuNCk7LW1vei1ib3gtc2hhZG93OjAgMnB4IDVweCByZ2JhKDAsMCwwLC40KTstd2Via2l0LWJveC1zaGFkb3c6MCAycHggNXB4IHJnYmEoMCwwLDAsLjQpO21hcmdpbi10b3A6LTEwcHh9LmNyb3NzLXNlbGxze2ZvbnQtZmFtaWx5Om1vbnRzZXJyYXQ7Zm9udC1zaXplOjE4cHh9QG1lZGlhIChtYXgtd2lkdGg6OTgwcHgpeyNtYWluLWhlYWRlcntwb3NpdGlvbjpmaXhlZCFpbXBvcnRhbnR9fS55b3V0dWJlLXBsYXllcntwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLWJvdHRvbTo1Ni4yMyU7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO21heC13aWR0aDoxMDAlO2JhY2tncm91bmQ6IzAwMDttYXJnaW46NXB4fS55b3V0dWJlLXBsYXllciBpZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDoxMDA7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueW91dHViZS1wbGF5ZXIgaW1ne2JvdHRvbTowO2Rpc3BsYXk6YmxvY2s7bGVmdDowO21hcmdpbjphdXRvO21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtib3JkZXI6bm9uZTtoZWlnaHQ6YXV0bztjdXJzb3I6cG9pbnRlcjstd2Via2l0LXRyYW5zaXRpb246LjRzIGFsbDstby10cmFuc2l0aW9uOi40cyBhbGw7LW1vei10cmFuc2l0aW9uOi40cyBhbGw7dHJhbnNpdGlvbjouNHMgYWxsfS55b3V0dWJlLXBsYXllciBpbWc6aG92ZXJ7LXdlYmtpdC1maWx0ZXI6YnJpZ2h0bmVzcyg3NSUpfS55b3V0dWJlLXBsYXllciAucGxheXtoZWlnaHQ6NzJweDt3aWR0aDo3MnB4O2xlZnQ6NTAlO3RvcDo1MCU7bWFyZ2luLWxlZnQ6LTM2cHg7bWFyZ2luLXRvcDotMzZweDtwb3NpdGlvbjphYnNvbHV0ZTtiYWNrZ3JvdW5kOnVybCgiaHR0cHM6L3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIwLzA3L1R4ekM3MGYucG5nIikgbm8tcmVwZWF0O2N1cnNvcjpwb2ludGVyfSNtYWluLWhlYWRlciAuZXRfbW9iaWxlX21lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3Bvc2l0aW9uOnJlbGF0aXZlfSNtYWluLWhlYWRlciAuZXRfbW9iaWxlX21lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4+YTphZnRlcntmb250LWZhbWlseTonRVRtb2R1bGVzJzt0ZXh0LWFsaWduOmNlbnRlcjtzcGVhazpub25lO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO3RleHQtdHJhbnNmb3JtOm5vbmU7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtwb3NpdGlvbjphYnNvbHV0ZX0jbWFpbi1oZWFkZXIgLmV0X21vYmlsZV9tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuPmE6YWZ0ZXJ7Zm9udC1zaXplOjE2cHg7Y29udGVudDonXDRjJzt0b3A6MTNweDtyaWdodDoxMHB4fSNtYWluLWhlYWRlciAuZXRfbW9iaWxlX21lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4udmlzaWJsZT5hOmFmdGVye2NvbnRlbnQ6J1w0ZCd9I21haW4taGVhZGVyIC5ldF9tb2JpbGVfbWVudSB1bC5zdWItbWVudXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50O3Zpc2liaWxpdHk6aGlkZGVuIWltcG9ydGFudDt0cmFuc2l0aW9uOmFsbCAxLjVzIGVhc2UtaW4tb3V0fSNtYWluLWhlYWRlciAuZXRfbW9iaWxlX21lbnUgLnZpc2libGU+dWwuc3ViLW1lbnV7ZGlzcGxheTpibG9jayFpbXBvcnRhbnQ7dmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudH1AbWVkaWEgKG1heC13aWR0aDo5ODBweCl7LmV0X21vYmlsZV9tZW51e292ZXJmbG93OnNjcm9sbCFpbXBvcnRhbnQ7bWluLWhlaWdodDo1MHZoIWltcG9ydGFudDtoZWlnaHQ6NTB2aCFpbXBvcnRhbnR9fUBtZWRpYSAobWF4LXdpZHRoOjk4MHB4KXtoZWFkZXIjbWFpbi1oZWFkZXIgLmNvbnRhaW5lci5jbGVhcmZpeC5ldF9tZW51X2NvbnRhaW5lcnt3aWR0aDoxMDAlIWltcG9ydGFudDtwYWRkaW5nLWxlZnQ6MjBweCFpbXBvcnRhbnQ7cGFkZGluZy1yaWdodDoyMHB4IWltcG9ydGFudH19aW5wdXQudGV4dCxpbnB1dC50aXRsZSxpbnB1dFt0eXBlPWVtYWlsXSxpbnB1dFt0eXBlPXBhc3N3b3JkXSxpbnB1dFt0eXBlPXRlbF0saW5wdXRbdHlwZT10ZXh0XSxzZWxlY3QsdGV4dGFyZWF7cGFkZGluZzoxNXB4O2JhY2tncm91bmQtY29sb3I6I2Y3ZjdmN30jYWZmd3AtbG9naW4tZm9ybSBpbnB1dC5idXR0b257YmFja2dyb3VuZDojMzMzO2JvcmRlcjowO2NvbG9yOiNmN2Y3Zjc7dHJhbnNpdGlvbjphbGwgLjVzO2ZvbnQtc2l6ZToxNnB4O21hcmdpbjowO3BhZGRpbmc6MTJweDtjdXJzb3I6cG9pbnRlcn0jYWZmd3AtbG9naW4tZm9ybSBpbnB1dC5idXR0b246aG92ZXJ7YmFja2dyb3VuZDojYzRjNGM0O2NvbG9yOiM3ODc4Nzg7dHJhbnNpdGlvbjphbGwgLjVzfSNhZmZ3cC1nZW5lcmF0ZS1yZWYtdXJsIGlucHV0LmJ1dHRvbntiYWNrZ3JvdW5kOiMzMzM7Ym9yZGVyOjA7Y29sb3I6I2Y3ZjdmNzt0cmFuc2l0aW9uOmFsbCAuNXM7Zm9udC1zaXplOjE2cHg7bWFyZ2luOjA7cGFkZGluZzoxMnB4O2N1cnNvcjpwb2ludGVyfSNhZmZ3cC1nZW5lcmF0ZS1yZWYtdXJsIGlucHV0LmJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOiNjNGM0YzQ7Y29sb3I6Izc4Nzg3ODt0cmFuc2l0aW9uOmFsbCAuNXN9Lndvb2NvbW1lcmNlLW1lc3NhZ2V7ZGlzcGxheTpub25lfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDc5cHgpey53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuYnV0dG9ue3dpZHRoOjEwMCUhaW1wb3J0YW50fX0uZ3JlY2FwdGNoYS1iYWRnZXtkaXNwbGF5Om5vbmV9"}},"time_used":281,"timings":{"blocked":186,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-ticker-tape.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.931Z","timestamp":1785148618931,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /external-embedding/embed-widget-ticker-tape.js HTTP/1.1\r\nHost: s3.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 10:36:58 GMT\r\ncontent-type: text/javascript\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: public, max-age=300\r\ncontent-encoding: zstd\r\netag: \"2671d4a92091986b7abd2e1e685669ca\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:29 GMT\r\nx-amz-id-2: MmO7S7qvpk7e7uAwyKi1zjeKKbKi5IBRI9Fnw08J6tdMbbVvXvrURHIxu7TxhDm94C2BFQDD1p8=\r\nx-amz-request-id: 6FDA3NKBBMZWPGT3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: wQVqs5hr7RnUyN2oXxLylh_AKdOK0U2U\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/24/2026 10:30:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 417df560bcd5a4663cba52b9085425ed\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}],"data":{"size":13608,"size_decoded":6236,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"2671d4a92091986b7abd2e1e685669ca","sha1":"b59db96af3dd1593356058703fc7af3cd7269919","sha256":"986cfef49d6a6ccd5cb1f1cbf562e8341ed581936885830831a2f4c3dc2b5901","sha512":"c07159fc500c72469ba6dfb7ccf5afdbaf476906fb039e5bfc7ab2c95e79b0067a47e6e02ad44915b9ba426273dc39996ffb1899c029253b56e4b02f7d419883","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6Or26ZMViZMEmkfknYH:uD5Unb26nD6Or26ZkFE9fknE","tlshash":"8e52d8a9b660ecbd51d945dbe07a2321b6193944b203aca4b9ecd4c510fdccca131f7e","first_seen":"2026-07-20T13:42:57.5385Z","last_seen":"2026-08-12T03:31:21.187344Z","times_seen":1890,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3QgaT1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIHIsczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHJ8fChyPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gaVt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30saT17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0scj1PYmplY3Qua2V5cyhpKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIHIuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1pW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KGkpe2NvbnN0e3NjcmlwdFVSTDpyLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PWksaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsoaT10Lmhvc3Qscj0zLGkuc3BsaXQoIi4iKS5zbGljZSgtcikuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIGkscjtyZXR1cm4gZS53aWRnZXRIb3N0fShyKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxpPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLHI9ZXx8aTtyZXR1cm4gciYmdC5yZW1vdmVDaGlsZChyKSxyfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxiPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxTPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1TJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Uyksdm9pZCAwIT09YiYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1iKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixDPWxvY2F0aW9uLmhvc3RuYW1lLFQ9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsXz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Qyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1fLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoQyxULF8pO2NvbnN0IGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxrLEEpLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgST10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoST8odChJLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxJKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUsaSl7Y29uc3Qgcj1lLmNvbnRlbnRXaW5kb3c7aWYoIXIpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09ciYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZpKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1TJiYodC5zdHlsZS53aWR0aD1TKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IGk9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChpKT9wYXJzZUludChpKTovXihcZCslfGF1dG8pJC8udGVzdChpKT9pOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxpPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1pJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PWksITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSksaT1mdW5jdGlvbih0LGUpe2NvbnN0IGk9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCByIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihpW3JdPXRbcl0pO3JldHVybiBpfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLHJdb2YgT2JqZWN0LmVudHJpZXMoaSkpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUscil9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCBpPXt9O2UmJihpLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoaVt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoaVsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKGkpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShpKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUsaSxyLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7aSYmKG4uaWQ9aSksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLGkpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1yLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IGk9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsaS5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLGkpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3Qgcj10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO3ImJnIuZm9yRWFjaCgocj0+e2NvbnN0IHM9ci5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixpKSxyLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19Y29uc3QgZz03Njc7dmFyIHUsbSxwLGYsdzshZnVuY3Rpb24odCl7dC5BZGFwdGl2ZT0iYWRhcHRpdmUiLHQuUmVndWxhcj0icmVndWxhciIsdC5Db21wYWN0PSJjb21wYWN0In0odXx8KHU9e30pKSxmdW5jdGlvbih0KXt0LkFsbFN5bWJvbHM9ImFsbF9zeW1ib2xzIix0Lk1hcmtldD0ibWFya2V0Iix0LlN5bWJvbD0ic3ltYm9sIn0obXx8KG09e30pKSxmdW5jdGlvbih0KXt0LkNyeXB0b2N1cnJlbmNpZXM9ImNyeXB0byIsdC5DdXJyZW5jaWVzPSJmb3JleCIsdC5TdG9ja3M9InN0b2NrIix0LkluZGljZXM9ImluZGV4Iix0LkZ1dHVyZXM9ImZ1dHVyZXMiLHQuQm9uZHM9ImNmZCJ9KHB8fChwPXt9KSksZnVuY3Rpb24odCl7dC5IVE1MPSJodG1sIix0LlJlYWN0PSJyZWFjdCJ9KGZ8fChmPXt9KSksZnVuY3Rpb24odCl7CnRbdC5UaWNrZXJJdGVtSGVpZ2h0Tm9ybWFsPTQ0XT0iVGlja2VySXRlbUhlaWdodE5vcm1hbCIsdFt0LlRpY2tlckl0ZW1IZWlnaHRDb21wYWN0PTcyXT0iVGlja2VySXRlbUhlaWdodENvbXBhY3QifSh3fHwodz17fSkpO2NvbnN0IHk9ZztuZXcgY2xhc3MgZXh0ZW5kcyBke2dldCB3aWRnZXRJZCgpe3JldHVybiJ0aWNrZXItdGFwZSJ9Z2V0IHVzZVBhcmFtc0ZvckNvbm5lY3RTb2NrZXQoKXtyZXR1cm4hMH1maWx0ZXJSYXdTZXR0aW5ncyh0KXt2b2lkIDAhPT10LnRoZW1lJiYodC5jb2xvclRoZW1lPXQudGhlbWUpO2NvbnN0IGU9c3VwZXIuZmlsdGVyUmF3U2V0dGluZ3ModCk7bGV0IGk7ZS53aWR0aD0iMTAwJSI7dHJ5e2k9dGhpcy5pZnJhbWVDb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGh9ZmluYWxseXtlLmhlaWdodD1mdW5jdGlvbih0LGUsaSxyKXtsZXQgcz0obj10PT09dS5BZGFwdGl2ZSYmcj9yPD15OnQ9PT11LkNvbXBhY3Qsbj83Mjo0NCk7dmFyIG47cmV0dXJuIGV8fChzKz0yKSxpJiYocys9MzIpLHN9KHQuZGlzcGxheU1vZGUsdC5pc1RyYW5zcGFyZW50LHRoaXMuaGFzQ29weXJpZ2h0KCksaSl9cmV0dXJuIGV9Z2V0IHByb3BlcnRpZXNUb1dvcmtXaXRoKCl7cmV0dXJuWyJzeW1ib2xzIiwibG9jYWxlIiwic2hvd1N5bWJvbExvZ28iLCJjb2xvclRoZW1lIiwiaXNUcmFuc3BhcmVudCIsImxhcmdlQ2hhcnRVcmwiLCJkaXNwbGF5TW9kZSIsImN1c3RvbWVyIl19fX0pKCk7"}},"time_used":25,"timings":{"blocked":-1,"dns":4,"connect":1,"send":0,"wait":2,"receive":0,"ssl":17},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/img1.jpg","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.975Z","timestamp":1785148618975,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /img1.jpg HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/images/1000.gif","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.987Z","timestamp":1785148618987,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /images/1000.gif HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=5, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/et-cache/4625/et-divi-dynamic-tb-6728-4625-late.css?ver=1662279876","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.626Z","timestamp":1785148618626,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/et-cache/4625/et-divi-dynamic-tb-6728-4625-late.css?ver=1662279876 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=0\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:58 GMT\r\nContent-Type: text/css\r\nContent-Length: 16772\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:16 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":16772,"size_decoded":16982,"mime_type":"text/css","magic":"ASCII text, with very long lines (16772), with no line terminators","md5":"e30c1804775c1b0fc9b45cb827fba95a","sha1":"27a8fc58f91d36379d724afaed4fcdc94a5deec5","sha256":"3208b4b1e486296a399984bc45ceb0df6013f7c9103c383c39be2db7cac9a491","sha512":"f720d903fdc279fbbe27c89c7061b41ed1ebc9a395a783d00dceb0d172c399b0efacc7acfcadcd59816cb57b0966b5ab91c1d60ca0bf4dc111266d9904c1c038","ssdeep":"96:8qsrXrHDvDmWIWIuOFOaz0x8Ivx8IhkuQjlM7:LWlfOFOBx8Ivx8Ih74lM7","tlshash":"3272f7af8ac2225551234e66c7cd4e684b2dcba318611cde3751294fcb42fde72e621f","first_seen":"2023-04-10T02:23:22Z","last_seen":"2026-08-11T11:52:53.987158Z","times_seen":3703,"resource_available":false,"data":"LmV0X2FuaW1hdGVke29wYWNpdHk6MDstd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjoxczthbmltYXRpb24tZHVyYXRpb246MXM7LXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOmJvdGghaW1wb3J0YW50O2FuaW1hdGlvbi1maWxsLW1vZGU6Ym90aCFpbXBvcnRhbnR9LmV0X2FuaW1hdGVkLmluZmluaXRley13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS5ldF9oYWRfYW5pbWF0aW9ue3Bvc2l0aW9uOnJlbGF0aXZlfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9mYWRle3Rve29wYWNpdHk6MX19QGtleWZyYW1lcyBldF9wYl9mYWRle3Rve29wYWNpdHk6MX19LmV0X2FuaW1hdGVkLmZhZGV7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9mYWRlO2FuaW1hdGlvbi1uYW1lOmV0X3BiX2ZhZGV9QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX2ZhZGVUb3B7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QGtleWZyYW1lcyBldF9wYl9mYWRlVG9wezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fS5ldF9hbmltYXRlZC5mYWRlVG9wey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfZmFkZVRvcDthbmltYXRpb24tbmFtZTpldF9wYl9mYWRlVG9wfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9mYWRlUmlnaHR7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCl9dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmV9fUBrZXlmcmFtZXMgZXRfcGJfZmFkZVJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfX0uZXRfYW5pbWF0ZWQuZmFkZVJpZ2h0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfZmFkZVJpZ2h0O2FuaW1hdGlvbi1uYW1lOmV0X3BiX2ZhZGVSaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfZmFkZUJvdHRvbXswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QGtleWZyYW1lcyBldF9wYl9mYWRlQm90dG9tezAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfX0uZXRfYW5pbWF0ZWQuZmFkZUJvdHRvbXstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX2ZhZGVCb3R0b207YW5pbWF0aW9uLW5hbWU6ZXRfcGJfZmFkZUJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfZmFkZUxlZnR7MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX19QGtleWZyYW1lcyBldF9wYl9mYWRlTGVmdHswJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApfXRve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfX0uZXRfYW5pbWF0ZWQuZmFkZUxlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9mYWRlTGVmdDthbmltYXRpb24tbmFtZTpldF9wYl9mYWRlTGVmdH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfc2xpZGV7dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3NsaWRle3Rvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpO29wYWNpdHk6MX19LmV0X2FuaW1hdGVkLnNsaWRley13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfc2xpZGU7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfc2xpZGV9QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX3NsaWRlVG9we3Rvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3NsaWRlVG9we3Rvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQuc2xpZGVUb3B7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9zbGlkZVRvcDthbmltYXRpb24tbmFtZTpldF9wYl9zbGlkZVRvcH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfc2xpZGVSaWdodHt0b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO29wYWNpdHk6MX19QGtleWZyYW1lcyBldF9wYl9zbGlkZVJpZ2h0e3Rvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQuc2xpZGVSaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX3NsaWRlUmlnaHQ7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfc2xpZGVSaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfc2xpZGVCb3R0b217dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTtvcGFjaXR5OjF9fUBrZXlmcmFtZXMgZXRfcGJfc2xpZGVCb3R0b217dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTtvcGFjaXR5OjF9fS5ldF9hbmltYXRlZC5zbGlkZUJvdHRvbXstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX3NsaWRlQm90dG9tO2FuaW1hdGlvbi1uYW1lOmV0X3BiX3NsaWRlQm90dG9tfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9zbGlkZUxlZnR7dG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTtvcGFjaXR5OjF9fUBrZXlmcmFtZXMgZXRfcGJfc2xpZGVMZWZ0e3Rvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQuc2xpZGVMZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfc2xpZGVMZWZ0O2FuaW1hdGlvbi1uYW1lOmV0X3BiX3NsaWRlTGVmdH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfYm91bmNlezAlLDIwJSw0MCUsNjAlLDgwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKTt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9MjAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMSwxLjEsMS4xKX00MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguOSwuOSwuOSk7dHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpfTYwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMDMsMS4wMywxLjAzKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjAzLDEuMDMsMS4wMyl9ODAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjk3LC45NywuOTcpO3RyYW5zZm9ybTpzY2FsZTNkKC45NywuOTcsLjk3KX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9fUBrZXlmcmFtZXMgZXRfcGJfYm91bmNlezAlLDIwJSw0MCUsNjAlLDgwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKC4zLC4zLC4zKTt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9MjAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMSwxLjEsMS4xKX00MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCguOSwuOSwuOSk7dHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpfTYwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMDMsMS4wMywxLjAzKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjAzLDEuMDMsMS4wMyl9ODAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoLjk3LC45NywuOTcpO3RyYW5zZm9ybTpzY2FsZTNkKC45NywuOTcsLjk3KX10b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSl9fS5ldF9hbmltYXRlZC5ib3VuY2V7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9ib3VuY2U7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfYm91bmNlfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9ib3VuY2VUb3B7MCUsNjAlLDc1JSw5MCUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwMHB4LDApfTYwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDI1cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjVweCwwKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTBweCwwKX05MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsNXB4LDApfXRvey13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX2JvdW5jZVRvcHswJSw2MCUsNzUlLDkwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMDBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwcHgsMCl9NjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjVweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyNXB4LDApfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApfTkwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDVweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1cHgsMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTtvcGFjaXR5OjF9fS5ldF9hbmltYXRlZC5ib3VuY2VUb3B7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9ib3VuY2VUb3A7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfYm91bmNlVG9wfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9ib3VuY2VSaWdodHswJSw2MCUsNzUlLDkwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDBweCwwLDApfTYwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjVweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjVweCwwLDApfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwcHgsMCwwKX05MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTVweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNXB4LDAsMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTtvcGFjaXR5OjF9fUBrZXlmcmFtZXMgZXRfcGJfYm91bmNlUmlnaHR7MCUsNjAlLDc1JSw5MCUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAwcHgsMCwwKX02MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTI1cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTI1cHgsMCwwKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMHB4LDAsMCl9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC01cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTVweCwwLDApfXRvey13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQuYm91bmNlUmlnaHR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9ib3VuY2VSaWdodDthbmltYXRpb24tbmFtZTpldF9wYl9ib3VuY2VSaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfYm91bmNlQm90dG9tezAlLDYwJSw3NSUsOTAlLHRvey13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpfTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjAwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjAwcHgsMCl9NjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTIwcHgsMCl9NzUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApfTkwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01cHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTVweCwwKX10b3std2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO29wYWNpdHk6MX19QGtleWZyYW1lcyBldF9wYl9ib3VuY2VCb3R0b217MCUsNjAlLDc1JSw5MCUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjE1LC42MSwuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMDBweCwwKX02MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKX03NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwcHgsMCl9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTVweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNXB4LDApfXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQuYm91bmNlQm90dG9tey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfYm91bmNlQm90dG9tO2FuaW1hdGlvbi1uYW1lOmV0X3BiX2JvdW5jZUJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfYm91bmNlTGVmdHswJSw2MCUsNzUlLDkwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMHB4LDAsMCl9NjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDI1cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjVweCwwLDApfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTBweCwwLDApfTkwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg1cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoNXB4LDAsMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTtvcGFjaXR5OjF9fUBrZXlmcmFtZXMgZXRfcGJfYm91bmNlTGVmdHswJSw2MCUsNzUlLDkwJSx0b3std2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwcHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMHB4LDAsMCl9NjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDI1cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjVweCwwLDApfTc1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTBweCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTBweCwwLDApfTkwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg1cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoNXB4LDAsMCl9dG97LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZTtvcGFjaXR5OjF9fS5ldF9hbmltYXRlZC5ib3VuY2VMZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfYm91bmNlTGVmdDthbmltYXRpb24tbmFtZTpldF9wYl9ib3VuY2VMZWZ0fUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl96b29te3Rvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpO29wYWNpdHk6MX19QGtleWZyYW1lcyBldF9wYl96b29te3Rvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpO29wYWNpdHk6MX19LmV0X2FuaW1hdGVkLnpvb217LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl96b29tO2FuaW1hdGlvbi1uYW1lOmV0X3BiX3pvb219QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX3pvb21Ub3B7dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3pvb21Ub3B7dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSk7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQuem9vbVRvcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX3pvb21Ub3A7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfem9vbVRvcDstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wO3RyYW5zZm9ybS1vcmlnaW46dG9wfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl96b29tUmlnaHR7dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3pvb21SaWdodHt0b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoMSk7dHJhbnNmb3JtOnNjYWxlWCgxKTtvcGFjaXR5OjF9fS5ldF9hbmltYXRlZC56b29tUmlnaHR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl96b29tUmlnaHQ7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfem9vbVJpZ2h0Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0fUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl96b29tQm90dG9te3Rvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpO29wYWNpdHk6MX19QGtleWZyYW1lcyBldF9wYl96b29tQm90dG9te3Rvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpO29wYWNpdHk6MX19LmV0X2FuaW1hdGVkLnpvb21Cb3R0b217LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl96b29tQm90dG9tO2FuaW1hdGlvbi1uYW1lOmV0X3BiX3pvb21Cb3R0b207LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbTt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfem9vbUxlZnR7dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKDEpO3RyYW5zZm9ybTpzY2FsZVgoMSk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3pvb21MZWZ0e3Rvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgxKTt0cmFuc2Zvcm06c2NhbGVYKDEpO29wYWNpdHk6MX19LmV0X2FuaW1hdGVkLnpvb21MZWZ0ey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfem9vbUxlZnQ7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfem9vbUxlZnQ7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0fUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9mbGlwe3Rve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVYKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGVYKDBkZWcpfX1Aa2V5ZnJhbWVzIGV0X3BiX2ZsaXB7dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVgoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVgoMGRlZyl9fS5ldF9hbmltYXRlZC5mbGlwey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfZmxpcDthbmltYXRpb24tbmFtZTpldF9wYl9mbGlwfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9mbGlwVG9we3Rve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVYKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGVYKDBkZWcpfX1Aa2V5ZnJhbWVzIGV0X3BiX2ZsaXBUb3B7dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVgoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVgoMGRlZyl9fS5ldF9hbmltYXRlZC5mbGlwVG9wey13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfZmxpcFRvcDthbmltYXRpb24tbmFtZTpldF9wYl9mbGlwVG9wOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX2ZsaXBSaWdodHt0b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWSgwZGVnKX19QGtleWZyYW1lcyBldF9wYl9mbGlwUmlnaHR7dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyl9fS5ldF9hbmltYXRlZC5mbGlwUmlnaHR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9mbGlwUmlnaHQ7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfZmxpcFJpZ2h0Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX2ZsaXBCb3R0b217dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVgoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVgoMGRlZyl9fUBrZXlmcmFtZXMgZXRfcGJfZmxpcEJvdHRvbXt0b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWCgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWCgwZGVnKX19LmV0X2FuaW1hdGVkLmZsaXBCb3R0b217LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9mbGlwQm90dG9tO2FuaW1hdGlvbi1uYW1lOmV0X3BiX2ZsaXBCb3R0b207LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcn1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfZmxpcExlZnR7dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyl9fUBrZXlmcmFtZXMgZXRfcGJfZmxpcExlZnR7dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyl9fS5ldF9hbmltYXRlZC5mbGlwTGVmdHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX2ZsaXBMZWZ0O2FuaW1hdGlvbi1uYW1lOmV0X3BiX2ZsaXBMZWZ0Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX2ZvbGR7dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyl9fUBrZXlmcmFtZXMgZXRfcGJfZm9sZHt0b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWSgwZGVnKX19LmV0X2FuaW1hdGVkLmZvbGR7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX2ZvbGQ7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfZm9sZH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfZm9sZFRvcHt0b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWCgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWCgwZGVnKX19QGtleWZyYW1lcyBldF9wYl9mb2xkVG9we3Rve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVYKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGVYKDBkZWcpfX0uZXRfYW5pbWF0ZWQuZm9sZFRvcHstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wO3RyYW5zZm9ybS1vcmlnaW46dG9wOy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfZm9sZFRvcDthbmltYXRpb24tbmFtZTpldF9wYl9mb2xkVG9wfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9mb2xkUmlnaHR7dG97b3BhY2l0eToxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVkoMGRlZyl9fUBrZXlmcmFtZXMgZXRfcGJfZm9sZFJpZ2h0e3Rve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVZKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGVZKDBkZWcpfX0uZXRfYW5pbWF0ZWQuZm9sZFJpZ2h0ey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0Oy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfZm9sZFJpZ2h0O2FuaW1hdGlvbi1uYW1lOmV0X3BiX2ZvbGRSaWdodH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfZm9sZEJvdHRvbXt0b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWCgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWCgwZGVnKX19QGtleWZyYW1lcyBldF9wYl9mb2xkQm90dG9te3Rve29wYWNpdHk6MTstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVYKDBkZWcpO3RyYW5zZm9ybTpyb3RhdGVYKDBkZWcpfX0uZXRfYW5pbWF0ZWQuZm9sZEJvdHRvbXstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Ym90dG9tO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tOy13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ZXRfcGJfZm9sZEJvdHRvbTthbmltYXRpb24tbmFtZTpldF9wYl9mb2xkQm90dG9tfUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9mb2xkTGVmdHt0b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWSgwZGVnKX19QGtleWZyYW1lcyBldF9wYl9mb2xkTGVmdHt0b3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWSgwZGVnKX19LmV0X2FuaW1hdGVkLmZvbGRMZWZ0ey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpsZWZ0O3RyYW5zZm9ybS1vcmlnaW46bGVmdDstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX2ZvbGRMZWZ0O2FuaW1hdGlvbi1uYW1lOmV0X3BiX2ZvbGRMZWZ0fUAtd2Via2l0LWtleWZyYW1lcyBldF9wYl9yb2xsezAley13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9dG97LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lO29wYWNpdHk6MX19QGtleWZyYW1lcyBldF9wYl9yb2xsezAley13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9dG97LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lO29wYWNpdHk6MX19LmV0X2FuaW1hdGVkLnJvbGx7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9yb2xsO2FuaW1hdGlvbi1uYW1lOmV0X3BiX3JvbGx9QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX3JvbGxUb3B7MCV7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcDt0cmFuc2Zvcm0tb3JpZ2luOnRvcH10b3std2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wO3RyYW5zZm9ybS1vcmlnaW46dG9wOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3JvbGxUb3B7MCV7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOnRvcDt0cmFuc2Zvcm0tb3JpZ2luOnRvcH10b3std2Via2l0LXRyYW5zZm9ybS1vcmlnaW46dG9wO3RyYW5zZm9ybS1vcmlnaW46dG9wOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQucm9sbFRvcHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX3JvbGxUb3A7YW5pbWF0aW9uLW5hbWU6ZXRfcGJfcm9sbFRvcH1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfcm9sbFJpZ2h0ezAley13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0fXRvey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodDt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0Oy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3JvbGxSaWdodHswJXstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQ7dHJhbnNmb3JtLW9yaWdpbjpyaWdodH10b3std2Via2l0LXRyYW5zZm9ybS1vcmlnaW46cmlnaHQ7dHJhbnNmb3JtLW9yaWdpbjpyaWdodDstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lO29wYWNpdHk6MX19LmV0X2FuaW1hdGVkLnJvbGxSaWdodHstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX3JvbGxSaWdodDthbmltYXRpb24tbmFtZTpldF9wYl9yb2xsUmlnaHR9QC13ZWJraXQta2V5ZnJhbWVzIGV0X3BiX3JvbGxCb3R0b217MCV7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbTt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbX10b3std2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Ym90dG9tO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGV0X3BiX3JvbGxCb3R0b217MCV7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbTt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbX10b3std2Via2l0LXRyYW5zZm9ybS1vcmlnaW46Ym90dG9tO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tOy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQucm9sbEJvdHRvbXstd2Via2l0LWFuaW1hdGlvbi1uYW1lOmV0X3BiX3JvbGxCb3R0b207YW5pbWF0aW9uLW5hbWU6ZXRfcGJfcm9sbEJvdHRvbX1ALXdlYmtpdC1rZXlmcmFtZXMgZXRfcGJfcm9sbExlZnR7MCV7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0fXRvey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpsZWZ0O3RyYW5zZm9ybS1vcmlnaW46bGVmdDstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lO29wYWNpdHk6MX19QGtleWZyYW1lcyBldF9wYl9yb2xsTGVmdHswJXstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46bGVmdDt0cmFuc2Zvcm0tb3JpZ2luOmxlZnR9dG97LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0Oy13ZWJraXQtdHJhbnNmb3JtOm5vbmU7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX0uZXRfYW5pbWF0ZWQucm9sbExlZnR7LXdlYmtpdC1hbmltYXRpb24tbmFtZTpldF9wYl9yb2xsTGVmdDthbmltYXRpb24tbmFtZTpldF9wYl9yb2xsTGVmdH0="}},"time_used":137,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":136,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/themes/Divi-child/style.css?ver=4.4.8.1592758137","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.639Z","timestamp":1785148618639,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/themes/Divi-child/style.css?ver=4.4.8.1592758137 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/css\r\nContent-Length: 564\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:16 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":564,"size_decoded":772,"mime_type":"text/css","magic":"ASCII text","md5":"de5852431e22ebafc0f11a5a184f02d0","sha1":"73a3695c966acc3a12f0a19e33648e9be3161968","sha256":"a8d977d35197016a7ce690d4b72c7d640d1690fa049f91223ac1399f3fca3f48","sha512":"3816179161eb0735e87809d4ccde1c4d37ff2085d97275f8f9beb1817b45f38121ee38ee12bcb6ef20c1ce914d6831a37245a3b2cb258091947b5b4fa3de3a5a","ssdeep":"","tlshash":"cef0200d683ab2b1372b1d0af0f46606473b6394d0d0a1e0fa1ec608018be0f9976f19","first_seen":"2026-07-27T08:11:28.961284Z","last_seen":"2026-07-27T10:37:50.417697Z","times_seen":3,"resource_available":false,"data":"LyoKVGhlbWUgTmFtZTogRGl2aSBDaGlsZApUaGVtZSBVUkk6IGh0dHA6Ly93d3cuZWxlZ2FudHRoZW1lcy5jb20vZ2FsbGVyeS9kaXZpLwpUZW1wbGF0ZTogRGl2aQpBdXRob3I6IEVsZWdhbnQgVGhlbWVzCkF1dGhvciBVUkk6IGh0dHA6Ly93d3cuZWxlZ2FudHRoZW1lcy5jb20KRGVzY3JpcHRpb246IFNtYXJ0LiBGbGV4aWJsZS4gQmVhdXRpZnVsLiBEaXZpIGlzIHRoZSBtb3N0IHBvd2VyZnVsIHRoZW1lIGluIG91ciBjb2xsZWN0aW9uLgpUYWdzOiByZXNwb25zaXZlLWxheW91dCxvbmUtY29sdW1uLHR3by1jb2x1bW5zLHRocmVlLWNvbHVtbnMsZm91ci1jb2x1bW5zLGxlZnQtc2lkZWJhcixyaWdodC1zaWRlYmFyLGN1c3RvbS1iYWNrZ3JvdW5kLGN1c3RvbS1jb2xvcnMsZmVhdHVyZWQtaW1hZ2VzLGZ1bGwtd2lkdGgtdGVtcGxhdGUscG9zdC1mb3JtYXRzLHJ0bC1sYW5ndWFnZS1zdXBwb3J0LHRoZW1lLW9wdGlvbnMsdGhyZWFkZWQtY29tbWVudHMsdHJhbnNsYXRpb24tcmVhZHkKVmVyc2lvbjogNC40LjguMTU5Mjc1ODEzNwpVcGRhdGVkOiAyMDIwLTA2LTIxIDE2OjQ4OjU3CgoqLwoK"}},"time_used":420,"timings":{"blocked":326,"dns":0,"connect":0,"send":0,"wait":94,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/pwa-for-wp/assets/js/pwaforwp-video.js?ver=1.7.49","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.953Z","timestamp":1785148618953,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/pwa-for-wp/assets/js/pwaforwp-video.js?ver=1.7.49 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/javascript\r\nContent-Length: 936\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:59:28 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":936,"size_decoded":1151,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text","md5":"b9b795325b49ff6aa46e342be7812055","sha1":"8a8664b70e3986a17aa61400f4a96d86222640ec","sha256":"27144ac7b0c09c41dfd9e63d6db3e1fb3866e4b34255c3b908f34ea692414ec8","sha512":"864e7592417f9a49b956398f2fa39408ea4d6499e6e51f2ac8733b8ff5445566c283877ab70500661bd14032505b03316bfdad131812307ea061084ef6bc964b","ssdeep":"","tlshash":"9511c06bfb5d31a5f725217a9d3e22d9383e00b309081e5bfca540303360d0d22458f4","first_seen":"2024-12-22T04:14:22.181389Z","last_seen":"2026-07-27T10:37:50.397036Z","times_seen":12,"resource_available":true,"data":"KGZ1bmN0aW9uKCl7CglzZXRUaW1lb3V0KCgpPT57CgkJaWYod2luZG93Lm1hdGNoTWVkaWEoJyhkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpJykubWF0Y2hlcyB8fCB3aW5kb3cubWF0Y2hNZWRpYSgnKGRpc3BsYXktbW9kZTogZnVsbHNjcmVlbiknKS5tYXRjaGVzIHx8IHdpbmRvdy5tYXRjaE1lZGlhKCcoZGlzcGxheS1tb2RlOiBtaW5pbWFsLXVpKScpLm1hdGNoZXMpIHsgCgkJCWlmICghbmF2aWdhdG9yLm9uTGluZSkgewoJCQkJdmFyIHZpZGVvID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInZpZGVvIik7CgkJCQlBcnJheS5mcm9tKHZpZGVvKS5mb3JFYWNoKGZ1bmN0aW9uKGVsbSl7CgkJCQkJY29uc29sZS5sb2coIkVhY2ggTG9vcCIsZWxtKTsKCQkJCQl2YXIgc3JjID0gZWxtLnNyYzsKCQkJCQljb25zb2xlLmxvZyhzcmMpOwoJCQkJCXZhciBleHQgPSBpc1ZpZGVvKHNyYyk7CgkJCQkJaWYoZXh0PT10cnVlKXsKCQkJCQkJZWxtLnNldEF0dHJpYnV0ZSgic3JjIiwnJyk7CgkJCQkJCWVsbS5wYXJlbnRFbGVtZW50LmFwcGVuZCgnPHA+TVA0IHZpZGVvIGlzIG5vdCBzdXBwb3J0ZWQgaW4gc2VydmljZSB3b3JrZXIgYXBwPC9wPicpOwoJCQkJCX0KCQkJCX0pCgkgIAkJfQoJCX0KCgkJZnVuY3Rpb24gaXNWaWRlbyhmaWxlbmFtZSkgewoJCSAgICB2YXIgZXh0ID0gZ2V0RXh0ZW5zaW9uKGZpbGVuYW1lKTsKCQkgICAgc3dpdGNoIChleHQudG9Mb3dlckNhc2UoKSkgewoJCSAgICBjYXNlICdtcDQnOgoJCSAgICAgICAgcmV0dXJuIHRydWU7CgkJICAgIH0KCQkgICAgcmV0dXJuIGZhbHNlOwoJCX0KCgkJZnVuY3Rpb24gZ2V0RXh0ZW5zaW9uKGZpbGVuYW1lKSB7CgkJICAgIHZhciBwYXJ0cyA9IGZpbGVuYW1lLnNwbGl0KCcuJyk7CgkJICAgIHJldHVybiBwYXJ0c1twYXJ0cy5sZW5ndGggLSAxXTsKCQl9CgoJfSwxMDAwKQp9KSgp"}},"time_used":448,"timings":{"blocked":353,"dns":0,"connect":0,"send":0,"wait":95,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/uploads/2020/06/marketing-bg6.png","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:59.400Z","timestamp":1785148619400,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /wp-content/uploads/2020/06/marketing-bg6.png HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=4, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"","headers":null,"cookies":null,"status_code":"","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-08-12T08:40:50.123104Z","times_seen":17852352,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"equinuxglobalassets.com/wp-content/plugins/divi-100-hamburger-menu/assets/css/style.css?ver=20160602","fqdn":"equinuxglobalassets.com","domain":"equinuxglobalassets.com","tld":"com"},"ip":{"addr":"66.70.148.19","port":443,"asn":16276,"as":"OVH SAS","country":"Canada","country_code":"CA"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://equinuxglobalassets.com/","date":"2026-07-27T10:36:58.603Z","timestamp":1785148618603,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.equinuxglobalassets.com","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 09 Jul 2026 22:36:43 GMT","end":"Wed, 07 Oct 2026 22:36:42 GMT"},"fingerprint":{"sha1":"61:45:AD:E9:93:F8:71:D5:32:4C:37:1A:43:9A:A7:6E:4D:05:74:D8","sha256":"09:66:BA:AF:9A:16:C0:6F:A9:E6:58:79:7C:1B:ED:36:CA:25:A1:73:21:1C:68:19:B7:2E:53:A5:E5:31:BA:3F"}}},"request":{"raw":"GET /wp-content/plugins/divi-100-hamburger-menu/assets/css/style.css?ver=20160602 HTTP/1.1\r\nHost: equinuxglobalassets.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/css,*/*;q=0.1\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://equinuxglobalassets.com/\r\nCookie: PHPSESSID=ejghagf5v1jkn7ncct6uejkkf1\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/1.1 200 OK\r\nServer: nginx\r\nDate: Mon, 27 Jul 2026 10:36:59 GMT\r\nContent-Type: text/css\r\nContent-Length: 55860\r\nConnection: keep-alive\r\nLast-Modified: Wed, 12 Oct 2022 12:58:14 GMT\r\nAccept-Ranges: bytes\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"OK","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":55860,"size_decoded":56070,"mime_type":"text/css","magic":"ASCII text, with very long lines (13017)","md5":"bb7ff6cece21143d86f349e4508af55f","sha1":"de819b038462327f3e0620ba267d65851a715ffc","sha256":"fc195d4a2c83f0b4b04e33fbd94267007ec3bb0bebe8b42d93c984ed124dedbb","sha512":"eccc9313df48ceb081c09433071a172322d961e8a28457cc9634df49cd1ab1e8aba698d4715f7bfa7074fb8f8c2143cb7eb045829027ff449a48a24dc50da55d","ssdeep":"384:4jWj4se3bwi0ohoQ9xtVaTJEZp5md24ELf:1i0wh9xtVa1m5md2xr","tlshash":"1543afe41c9801d852da4836e7df55602c39c3136c268eb4f3ae28b5eba6e4c73d5772","first_seen":"2023-05-01T12:48:52Z","last_seen":"2026-08-08T19:43:19.577083Z","times_seen":200,"resource_available":false,"data":"LyogTWVudSAqLwouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgZGlzcGxheTogYmxvY2s7CiAgd2lkdGg6IDEuODc1cmVtOwogIGhlaWdodDogMS44NzVyZW07CiAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICBjdXJzb3I6IHBvaW50ZXI7CiAgcGFkZGluZzogMC4yNXJlbTsKICBjbGVhcjogYm90aDsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbiBkaXYgewogIGJhY2tncm91bmQ6ICMwMDA7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAwLjEyNXJlbTsKICBtYXJnaW46IDAuMjVyZW0gYXV0bzsKICBib3JkZXItcmFkaXVzOiAxMHB4OwogIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjgsIDAuNTUsIDAuMzg1LCAxLjY1KTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI4LCAwLjU1LCAwLjM4NSwgMS42NSk7CiAgLXdlYmtpdC10cmFuc2Zvcm06IDA7CiAgICAgICAgICB0cmFuc2Zvcm06IDA7CiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24gZGl2OmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbiBkaXY6YWZ0ZXIgewogIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogIHRyYW5zaXRpb246IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjgsIDAuNTUsIDAuMzg1LCAxLjY1KTsKICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI4LCAwLjU1LCAwLjM4NSwgMS42NSk7Cn0KCi8qIFR5cGUgMSAqLwouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTEuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0yIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHsKICB3aWR0aDogMDsKICBtYXJnaW4tbGVmdDogMDsKICBvcGFjaXR5OiAxOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTEuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDFTM0RGOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQxUzNERjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQxUzNERiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICB9CiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgfQp9CgpAa2V5ZnJhbWVzIFQxUzNERiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICB9CiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTEuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBUMVMzTDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMVMzTDsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQxUzNMIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgVDFTM0wgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICB9CiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogIH0KfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0xLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXYgewogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTEuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS00IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDFTNERGOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQxUzRERjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQxUzRERiB7CiAgMCUgewogICAgbWFyZ2luLXJpZ2h0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgMjAlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogIH0KICA0MCUgewogICAgd2lkdGg6IDA7CiAgICBtYXJnaW4tcmlnaHQ6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICB3aWR0aDogMDsKICAgIG1hcmdpbi1yaWdodDogYXV0bzsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgfQogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogIH0KfQoKQGtleWZyYW1lcyBUMVM0REYgewogIDAlIHsKICAgIG1hcmdpbi1yaWdodDogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDIwJSB7CiAgICB3aWR0aDogMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICB9CiAgNDAlIHsKICAgIHdpZHRoOiAwOwogICAgbWFyZ2luLXJpZ2h0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogIH0KICA4MCUgewogICAgd2lkdGg6IDA7CiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogIH0KICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTQgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQxUzRMOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQxUzRMOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDFTNEwgewogIDAlIHsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgMjAlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDQwJSB7CiAgICB3aWR0aDogMDsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICB3aWR0aDogMDsKICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgfQogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgVDFTNEwgewogIDAlIHsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgMjAlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDQwJSB7CiAgICB3aWR0aDogMDsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICB3aWR0aDogMDsKICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgfQogIDkwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2IHsKICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0xLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQxUzVERjsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMVM1REY7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBUMVM1REYgewogIDAlIHsKICAgIG1hcmdpbi1yaWdodDogMDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0OwogIH0KICAyNSUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoMTBkZWcpOwogIH0KICAzMCUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoMTBkZWcpOwogIH0KICA0MCUgewogICAgd2lkdGg6IDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSgxMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICB9CiAgNTAlIHsKICAgIHdpZHRoOiAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogIH0KICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgVDFTNURGIHsKICAwJSB7CiAgICBtYXJnaW4tcmlnaHQ6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDsKICB9CiAgMjUlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSgxMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICB9CiAgMzAlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSgxMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICB9CiAgNDAlIHsKICAgIHdpZHRoOiAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoMTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSgxMGRlZyk7CiAgfQogIDUwJSB7CiAgICB3aWR0aDogMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICB9CiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTEuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBUMVM1RE07CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogVDFTNURNOwogIHdpZHRoOiAwJTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQxUzVETSB7CiAgMCUgewogICAgd2lkdGg6IDEwMCU7CiAgICBvcGFjaXR5OiAxOwogIH0KICA0MCUgewogICAgd2lkdGg6IDEwMCU7CiAgfQogIDUwJSB7CiAgICB3aWR0aDogMCU7CiAgICBvcGFjaXR5OiAxOwogIH0KfQoKQGtleWZyYW1lcyBUMVM1RE0gewogIDAlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgb3BhY2l0eTogMTsKICB9CiAgNDAlIHsKICAgIHdpZHRoOiAxMDAlOwogIH0KICA1MCUgewogICAgd2lkdGg6IDAlOwogICAgb3BhY2l0eTogMTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQxUzVMOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQxUzVMOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDFTNUwgewogIDAlIHsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0OwogIH0KICAyNSUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgxMGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgxMGRlZyk7CiAgfQogIDMwJSB7CiAgICB3aWR0aDogMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICB9CiAgNDAlIHsKICAgIHdpZHRoOiAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICB9CiAgNTAlIHsKICAgIHdpZHRoOiAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOwogICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9CiAgOTAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogIH0KfQoKQGtleWZyYW1lcyBUMVM1TCB7CiAgMCUgewogICAgbWFyZ2luLWxlZnQ6IDA7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDsKICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7CiAgfQogIDI1JSB7CiAgICB3aWR0aDogMTAwJTsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKDEwZGVnKTsKICB9CiAgMzAlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoMTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoMTBkZWcpOwogIH0KICA0MCUgewogICAgd2lkdGg6IDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoMTBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoMTBkZWcpOwogIH0KICA1MCUgewogICAgd2lkdGg6IDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7CiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogIH0KICA5MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgfQp9CgovKiBUeXBlIDIgKi8KLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24gZGl2LCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbiBkaXYgewogIGRpc3BsYXk6IC13ZWJraXQtYm94OwogIGRpc3BsYXk6IC1tcy1mbGV4Ym94OwogIGRpc3BsYXk6IGZsZXg7CiAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwogIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOwogICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7CiAgYmFja2dyb3VuZDogMDsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24gZGl2OmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24gZGl2OmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24gZGl2OmFmdGVyLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbiBkaXY6YWZ0ZXIgewogIGNvbnRlbnQ6ICcnOwogIGRpc3BsYXk6IGJsb2NrOwogIGJhY2tncm91bmQ6ICMwMDA7CiAgd2lkdGg6IDJweDsKICBtaW4td2lkdGg6IDJweDsKICBoZWlnaHQ6IDJweDsKICBib3JkZXItcmFkaXVzOiAxMHB4OwogIG1hcmdpbjogMCAycHggMCAwOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbiBkaXY6YWZ0ZXIsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uIGRpdjphZnRlciB7CiAgd2lkdGg6IDEwMCU7CiAgbWFyZ2luOiAwOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0yIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHsKICBvcGFjaXR5OiAxOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0yIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTIgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIgewogIHdpZHRoOiAwOwogIG1pbi13aWR0aDogMDsKICBtYXJnaW4tbGVmdDogMDsKICBvcGFjaXR5OiAxOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZCwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtMy5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQyUzNERjsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMlMzREY7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBUMlMzREYgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogIH0KICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgVDJTM0RGIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICB9CiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZDpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDJTM0RGQjsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMlMzREZCOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDJTM0RGQiB7CiAgMCUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgVDJTM0RGQiB7CiAgMCUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkOmFmdGVyLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZDphZnRlciB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDJTM0RNQTsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMlMzRE1BOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDJTM0RNQSB7CiAgMCUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCkBrZXlmcmFtZXMgVDJTM0RNQSB7CiAgMCUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQyUzNETDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMlMzREw7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBUMlMzREwgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMjVyZW0pOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMjVyZW0pOwogIH0KICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgfQp9CgpAa2V5ZnJhbWVzIFQyUzNETCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4yNXJlbSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4yNXJlbSk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQ6YmVmb3JlLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkOmJlZm9yZSB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDJTM0RGQjsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMlMzREZCOwp9CgpAa2V5ZnJhbWVzIFQyUzNERkIgewogIDAlIHsKICAgIHdpZHRoOiAxMDAlOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkOmFmdGVyLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkOmFmdGVyIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBUMlMzRE1BOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQyUzNETUE7Cn0KCkBrZXlmcmFtZXMgVDJTM0RNQSB7CiAgMCUgewogICAgd2lkdGg6IDEwMCU7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTQgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2LCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdiB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTQgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkOmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQ6YmVmb3JlLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS00IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZDphZnRlciwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQ6YWZ0ZXIgewogIHdpZHRoOiAwJTsKICBtaW4td2lkdGg6IDA7CiAgbWFyZ2luOiAwIGF1dG87CiAgb3BhY2l0eTogMDsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIG9wYWNpdHk6IDE7Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTQgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTphZnRlciwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHdpZHRoOiAxMDAlOwogIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyIHRyYW5zZm9ybSAwLjNzIDAuM3MgbGluZWFyOwogIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhciB0cmFuc2Zvcm0gMC4zcyAwLjNzIGxpbmVhcjsKICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTQuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlIHsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTphZnRlciwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZDpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTQuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQ6YmVmb3JlLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS00IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkOmFmdGVyLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkOmFmdGVyIHsKICB3aWR0aDogMTAwJTsKICBtaW4td2lkdGg6IDA7CiAgb3BhY2l0eTogMDsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXYsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2IHsKICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDJTNURGOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQyUzVERjsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQyUzVERiB7CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgpAa2V5ZnJhbWVzIFQyUzVERiB7CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZDpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkOmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQ6YWZ0ZXIsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkOmFmdGVyIHsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgd2lkdGg6IDA7Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkOmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQ6YmVmb3JlIHsKICBsZWZ0OiAwOwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQyUzVERkI7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogVDJTNURGQjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQyUzVERkIgewogIDIwJSB7CiAgICB3aWR0aDogMCU7CiAgfQp9CgpAa2V5ZnJhbWVzIFQyUzVERkIgewogIDIwJSB7CiAgICB3aWR0aDogMCU7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZDphZnRlciwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQ6YWZ0ZXIgewogIHJpZ2h0OiAwOwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQyUzVERkE7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogVDJTNURGQTsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQyUzVERkEgewogIDIwJSB7CiAgICB3aWR0aDogMCU7CiAgfQp9CgpAa2V5ZnJhbWVzIFQyUzVERkEgewogIDIwJSB7CiAgICB3aWR0aDogMCU7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgb3BhY2l0eTogMTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOmFmdGVyLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHsKICBtYXJnaW46IDAgYXV0bzsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCk6YmVmb3JlIHsKICBkaXNwbGF5OiBub25lOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOmFmdGVyLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBUMlM1REw7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogVDJTNURMOwogIHdpZHRoOiAycHg7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBUMlM1REwgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogMTAwJTsKICAgICAgICAgICAgdHJhbnNmb3JtOiAxMDAlOwogIH0KfQoKQGtleWZyYW1lcyBUMlM1REwgewogIDIwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogMTAwJTsKICAgICAgICAgICAgdHJhbnNmb3JtOiAxMDAlOwogIH0KfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZCwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZCB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQyUzVETDsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMlM1REw7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwp9CgpAa2V5ZnJhbWVzIFQyUzVETCB7CiAgMjAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTIuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS01IC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkOmJlZm9yZSwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZDpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQ6YWZ0ZXIsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQ6YWZ0ZXIgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB3aWR0aDogMDsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZDpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQ6YmVmb3JlIHsKICBsZWZ0OiAwOwogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQyUzVERkI7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogVDJTNURGQjsKfQoKQGtleWZyYW1lcyBUMlM1REZCIHsKICAyMCUgewogICAgd2lkdGg6IDAlOwogIH0KfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0yLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZDphZnRlciwgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNS5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZDphZnRlciB7CiAgcmlnaHQ6IDA7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDJTNURNQTsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUMlM1RE1BOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDJTNURNQSB7CiAgMjAlIHsKICAgIHdpZHRoOiAwJTsKICB9Cn0KCkBrZXlmcmFtZXMgVDJTNURNQSB7CiAgMjAlIHsKICAgIHdpZHRoOiAwJTsKICB9Cn0KCi8qIFR5cGUgMyAqLwouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbiBkaXY6YmVmb3JlIHsKICB3aWR0aDogMTAwJTsKICBtYXJnaW46IDAgMnB4IDAgMDsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24gZGl2OmFmdGVyIHsKICB3aWR0aDogMnB4OwogIG1hcmdpbjogMDsKfQoKLyogVHlwZSA0ICovCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uIGRpdiB7CiAgd2lkdGg6IDJweDsKICBtYXJnaW4tcmlnaHQ6IGF1dG87CiAgbWFyZ2luLWxlZnQ6IGF1dG87Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTIgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkIHsKICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBUNFMyREY7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogVDRTMkRGOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDRTMkRGIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgd2lkdGg6IDJweDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICB9CiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKTsKICB9CiAgODAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgfQp9CgpAa2V5ZnJhbWVzIFQ0UzJERiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgMjAlIHsKICAgIHdpZHRoOiAycHg7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgfQogIDQwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogIH0KfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtMiAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDRTMkw7CiAgICAgICAgICBhbmltYXRpb24tbmFtZTogVDRTMkw7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBUNFMyTCB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgMjAlIHsKICAgIHdpZHRoOiAycHg7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICB9CiAgNDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pOwogIH0KICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7CiAgfQp9CgpAa2V5ZnJhbWVzIFQ0UzJMIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTsKICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lOwogIH0KICAyMCUgewogICAgd2lkdGg6IDJweDsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pOwogIH0KICA0MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgewogIC13ZWJraXQtYW5pbWF0aW9uOiBUNFMzMC42cyBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogICAgICAgICAgYW5pbWF0aW9uOiBUNFMzMC42cyBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDRTMyB7CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgfQp9CgpAa2V5ZnJhbWVzIFQ0UzMgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogIH0KfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtMyAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXYgewogIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwogICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOwp9CgouZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS10eXBlLTQuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51LS1zdHlsZS0zIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpmaXJzdC1jaGlsZCB7CiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogVDRTM0RGOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQ0UzNERjsKfQoKQC13ZWJraXQta2V5ZnJhbWVzIFQ0UzNERiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsKICB9CiAgNDAlIHsKICAgIHdpZHRoOiAycHg7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzc1cmVtKSByb3RhdGUoNDVkZWcpOwogIH0KfQoKQGtleWZyYW1lcyBUNFMzREYgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDQwJSB7CiAgICB3aWR0aDogMnB4OwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pOwogIH0KICA4MCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pIHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTMgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Omxhc3QtY2hpbGQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQ0UzNMOwogICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IFQ0UzNMOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDRTM0wgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDQwJSB7CiAgICB3aWR0aDogMnB4OwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9Cn0KCkBrZXlmcmFtZXMgVDRTM0wgewogIDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lOwogICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7CiAgfQogIDQwJSB7CiAgICB3aWR0aDogMnB4OwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSk7CiAgfQogIDgwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMzc1cmVtKSByb3RhdGUoLTQ1ZGVnKTsKICB9Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTQgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgewogIC13ZWJraXQtYW5pbWF0aW9uOiBUNFM0MC42cyBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogICAgICAgICAgYW5pbWF0aW9uOiBUNFM0MC42cyBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwp9CgpALXdlYmtpdC1rZXlmcmFtZXMgVDRTNCB7CiAgMTAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgfQp9CgpAa2V5ZnJhbWVzIFQ0UzQgewogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogIH0KfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6Zmlyc3QtY2hpbGQgewogIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IFQ0UzRERjsKICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBUNFM0REY7Cn0KCkAtd2Via2l0LWtleWZyYW1lcyBUNFM0REYge30KCkBrZXlmcmFtZXMgVDRTNERGIHt9LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7CiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjI4LCAwLjU1LCAwLjM4NSwgMS42NSk7CiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI4LCAwLjU1LCAwLjM4NSwgMS42NSk7CiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjgsIDAuNTUsIDAuMzg1LCAxLjY1KTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXYgewogIHdpZHRoOiAycHg7CiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7CiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXR5cGUtNC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUtLXN0eWxlLTUgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7CiAgd2lkdGg6IDEwMCU7CiAgb3BhY2l0eTogMTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tdHlwZS00LmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudS0tc3R5bGUtNSAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6bGFzdC1jaGlsZCB7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOwp9CgovKiBUb2dnbGVkICovCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdiB7CiAgd2lkdGg6IDEwMCU7CiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNnM7CiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNnM7CiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yOCwgMC41NSwgMC4zODUsIDEuNjUpOwogICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjgsIDAuNTUsIDAuMzg1LCAxLjY1KTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmFmdGVyLCAuZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi0tdG9nZ2xlZCBkaXY6YmVmb3JlIHsKICB3aWR0aDogMTAwJTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2OmZpcnN0LWNoaWxkIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjM3NXJlbSkgcm90YXRlKDQ1ZGVnKTsKfQoKLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudV9faWNvbi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24tLXRvZ2dsZWQgZGl2Om5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgewogIG9wYWNpdHk6IDA7Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnVfX2ljb24uZXRfZGl2aV8xMDBfY3VzdG9tX2hhbWJ1cmdlcl9tZW51X19pY29uLS10b2dnbGVkIGRpdjpsYXN0LWNoaWxkIHsKICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zNzVyZW0pIHJvdGF0ZSgtNDVkZWcpOwogICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjM3NXJlbSkgcm90YXRlKC00NWRlZyk7Cn0KCi5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUgLm1vYmlsZV9tZW51X2JhcjpiZWZvcmUsIC5ldF9kaXZpXzEwMF9jdXN0b21faGFtYnVyZ2VyX21lbnUgLm1vYmlsZV9tZW51X2JhcjphZnRlciB7CiAgZGlzcGxheTogbm9uZTsKfQoKQG1lZGlhIChtYXgtd2lkdGg6IDk4MHB4KSB7CiAgLmV0X2RpdmlfMTAwX2N1c3RvbV9oYW1idXJnZXJfbWVudSAubW9iaWxlX21lbnVfYmFyIHsKICAgIHBhZGRpbmctYm90dG9tOiAwOwogICAgbWFyZ2luLWJvdHRvbTogMjZweDsKICB9Cn0KLyojIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKemIzVnlZMlZ6SWpwYkluTmpjM012YzNSNWJHVXVjMk56Y3lJc0luTmpjM012ZEhsd1pYTXZYM1I1Y0dVdE1TNXpZM056SWl3aWMzUjViR1V1WTNOeklpd2ljMk56Y3k5MGVYQmxjeTlmZEhsd1pTMHlMbk5qYzNNaUxDSnpZM056TDNSNWNHVnpMMTkwZVhCbExUTXVjMk56Y3lJc0luTmpjM012ZEhsd1pYTXZYM1I1Y0dVdE5DNXpZM056SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVhORFFTeFZRVUZWTzBGQlExWTdSVUZEUlN4dFFrRkJiVUk3UlVGRGJrSXNaVUZCWlR0RlFVTm1MR2RDUVRsQ1pUdEZRU3RDWml4cFFrRXZRbVU3UlVGblEyWXNkVUpCUVhWQ08wVkJRM1pDTEdkQ1FVRm5RanRGUVVOb1FpeHBRa0ZCZVVJN1JVRkRla0lzV1VGQldUdERRVzFDWWpzN1FVRXpRa1E3UlVGWFNTeHBRa0ZvUTFFN1JVRnBRMUlzV1VGQldUdEZRVU5hTEdsQ1FYaERZVHRGUVhsRFlpeHhRa0ZCT0VVN1JVRkRPVVVzYjBKQlFXOUNPMFZCUTNCQ0xDdEVRWEpDY1VJN1JVRnhRbkpDTEhWRVFYSkNjVUk3UlVGelFuSkNMREJGUVhSQ2NVSTdWVUZ6UW5KQ0xHdEZRWFJDY1VJN1JVRjFRbkpDTEhGQ1FVRmhPMVZCUVdJc1lVRkJZVHRGUVVOaUxHbERRVUY1UWp0VlFVRjZRaXg1UWtGQmVVSTdRMEZQTVVJN08wRkJNVUpJTzBWQmRVSk5MQ3RFUVRWQ2JVSTdSVUUwUW01Q0xIVkVRVFZDYlVJN1JVRTJRbTVDTERCRlFUZENiVUk3VlVFMlFtNUNMR3RGUVRkQ2JVSTdRMEU0UW5CQ096dEJRV2RDVEN4WlFVRlpPMEZCVEZZN1JVTnlSVWtzVTBGQlV6dEZRVU5VTEdWQlFXVTdSVUZEWml4WFFVRlhPME5CUTFvN08wRkVhMFZJTzBWRGRFUkpMQ3RDUVVGblFqdFZRVUZvUWl4MVFrRkJaMEk3UTBGblFtcENPenRCUVdSRE8wVkJSVVU3U1VGRFJTeDNRa0ZCWjBJN1dVRkJhRUlzWjBKQlFXZENPMGREYVVKMlFqdEZSR1JMTzBsQlEwVXNkME5CUVhGQ08xbEJRWEpDTEdkRFFVRnhRanRIUTJkQ05VSTdSVVJpU3p0SlFVTkZMSE5FUVVGblNEdFpRVUZvU0N3NFEwRkJaMGc3UjBObGRrZzdRMEZEUmpzN1FVUXpRa3M3UlVGRlJUdEpRVU5GTEhkQ1FVRm5RanRaUVVGb1FpeG5Ra0ZCWjBJN1IwTnBRblpDTzBWRVpFczdTVUZEUlN4M1EwRkJjVUk3V1VGQmNrSXNaME5CUVhGQ08wZERaMEkxUWp0RlJHSkxPMGxCUTBVc2MwUkJRV2RJTzFsQlFXaElMRGhEUVVGblNEdEhRMlYyU0R0RFFVTkdPenRCUm5sQ1F6dEZRMjVEU1N3NFFrRkJaMEk3VlVGQmFFSXNjMEpCUVdkQ08wTkJaMEpxUWpzN1FVRmtRenRGUVVWRk8wbEJRMFVzZDBKQlFXZENPMWxCUVdoQ0xHZENRVUZuUWp0SFEyTjJRanRGUkZoTE8wbEJRMFVzZVVOQlFYRkNPMWxCUVhKQ0xHbERRVUZ4UWp0SFEyRTFRanRGUkZaTE8wbEJRMFVzZDBSQlFXMUlPMWxCUVc1SUxHZEVRVUZ0U0R0SFExa3hTRHREUVVOR096dEJSSGhDU3p0RlFVVkZPMGxCUTBVc2QwSkJRV2RDTzFsQlFXaENMR2RDUVVGblFqdEhRMk4yUWp0RlJGaExPMGxCUTBVc2VVTkJRWEZDTzFsQlFYSkNMR2xEUVVGeFFqdEhRMkUxUWp0RlJGWkxPMGxCUTBVc2QwUkJRVzFJTzFsQlFXNUlMR2RFUVVGdFNEdEhRMWt4U0R0RFFVTkdPenRCUmxORE8wVkRVa1VzTUVOQlFXdERPMVZCUVd4RExHdERRVUZyUXp0RFFXMUZia003TzBGRU0wUkVPMFZEVEVrc0swSkJRV2RDTzFWQlFXaENMSFZDUVVGblFqdERRVGhDYWtJN08wRkJOVUpETzBWQlJVVTdTVUZEUlN4blFrRkJaMEk3U1VGRGFFSXNkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRIUTBsMlFqdEZSRVJMTzBsQlEwVXNXVUZCV1R0SlFVTmFMSGREUVVGeFFqdFpRVUZ5UWl4blEwRkJjVUk3UjBOSE5VSTdSVVJCU3p0SlFVTkZMRk5CUVZNN1NVRkRWQ3huUWtGQlowSTdTVUZEYUVJc2QwTkJRWEZDTzFsQlFYSkNMR2REUVVGeFFqdEhRMFUxUWp0RlJFTkxPMGxCUTBVc1UwRkJVenRKUVVOVUxHMUNRVUZ0UWp0SlFVTnVRaXh6UkVGQlowZzdXVUZCYUVnc09FTkJRV2RJTzBkRFEzWklPMFZFUlVzN1NVRkRSU3h6UkVGQlowZzdXVUZCYUVnc09FTkJRV2RJTzBkRFFYWklPME5CUTBZN08wRkVNVUpMTzBWQlJVVTdTVUZEUlN4blFrRkJaMEk3U1VGRGFFSXNkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRIUTBsMlFqdEZSRVJMTzBsQlEwVXNXVUZCV1R0SlFVTmFMSGREUVVGeFFqdFpRVUZ5UWl4blEwRkJjVUk3UjBOSE5VSTdSVVJCU3p0SlFVTkZMRk5CUVZNN1NVRkRWQ3huUWtGQlowSTdTVUZEYUVJc2QwTkJRWEZDTzFsQlFYSkNMR2REUVVGeFFqdEhRMFUxUWp0RlJFTkxPMGxCUTBVc1UwRkJVenRKUVVOVUxHMUNRVUZ0UWp0SlFVTnVRaXh6UkVGQlowZzdXVUZCYUVnc09FTkJRV2RJTzBkRFEzWklPMFZFUlVzN1NVRkRSU3h6UkVGQlowZzdXVUZCYUVnc09FTkJRV2RJTzBkRFFYWklPME5CUTBZN08wRkdka0pETzBWRE5FSkpMRGhDUVVGblFqdFZRVUZvUWl4elFrRkJaMEk3UTBFNFFtcENPenRCUVRWQ1F6dEZRVVZGTzBsQlEwVXNaVUZCWlR0SlFVTm1MSGRDUVVGblFqdFpRVUZvUWl4blFrRkJaMEk3UjBORWRrSTdSVVJKU3p0SlFVTkZMRmxCUVZrN1NVRkRXaXg1UTBGQmNVSTdXVUZCY2tJc2FVTkJRWEZDTzBkRFJqVkNPMFZFUzBzN1NVRkRSU3hUUVVGVE8wbEJRMVFzWlVGQlpUdEpRVU5tTEhsRFFVRnhRanRaUVVGeVFpeHBRMEZCY1VJN1IwTklOVUk3UlVSTlN6dEpRVU5GTEZOQlFWTTdTVUZEVkN4clFrRkJhMEk3U1VGRGJFSXNkMFJCUVcxSU8xbEJRVzVJTEdkRVFVRnRTRHRIUTBveFNEdEZSRTlMTzBsQlEwVXNkMFJCUVcxSU8xbEJRVzVJTEdkRVFVRnRTRHRIUTB3eFNEdERRVU5HT3p0QlJISkNTenRGUVVWRk8wbEJRMFVzWlVGQlpUdEpRVU5tTEhkQ1FVRm5RanRaUVVGb1FpeG5Ra0ZCWjBJN1IwTkVka0k3UlVSSlN6dEpRVU5GTEZsQlFWazdTVUZEV2l4NVEwRkJjVUk3V1VGQmNrSXNhVU5CUVhGQ08wZERSalZDTzBWRVMwczdTVUZEUlN4VFFVRlRPMGxCUTFRc1pVRkJaVHRKUVVObUxIbERRVUZ4UWp0WlFVRnlRaXhwUTBGQmNVSTdSME5JTlVJN1JVUk5TenRKUVVORkxGTkJRVk03U1VGRFZDeHJRa0ZCYTBJN1NVRkRiRUlzZDBSQlFXMUlPMWxCUVc1SUxHZEVRVUZ0U0R0SFEwb3hTRHRGUkU5TE8wbEJRMFVzZDBSQlFXMUlPMWxCUVc1SUxHZEVRVUZ0U0R0SFEwd3hTRHREUVVOR096dEJSbTVFUXp0RlEzRkZSU3d3UTBGQmEwTTdWVUZCYkVNc2EwTkJRV3RETzBOQmJVZHVRenM3UVVSNFMwUTdSVU4zUlVrc0swSkJRV2RDTzFWQlFXaENMSFZDUVVGblFqdERRVzFEYWtJN08wRkJha05ETzBWQlJVVTdTVUZEUlN4blFrRkJaMEk3U1VGRGFFSXNkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRKUVVOb1FpeHZRMEZCTkVJN1dVRkJOVUlzTkVKQlFUUkNPMGREWW01RE8wVkVaMEpMTzBsQlEwVXNXVUZCV1R0SlFVTmFMSE5FUVVGblNEdFpRVUZvU0N3NFEwRkJaMGc3UjBOa2RrZzdSVVJwUWtzN1NVRkRSU3haUVVGWk8wbEJRMW9zYzBSQlFXZElPMWxCUVdoSUxEaERRVUZuU0R0SFEyWjJTRHRGUkd0Q1N6dEpRVU5GTEZWQlFWVTdTVUZEVml4elJFRkJaMGc3V1VGQmFFZ3NPRU5CUVdkSU8wZERhRUoyU0R0RlJHMUNTenRKUVVORkxGVkJRVlU3U1VGRFZpeHBRMEZCZVVJN1dVRkJla0lzZVVKQlFYbENPMGxCUTNwQ0xITkVRVUZuU0R0WlFVRm9TQ3c0UTBGQlowZzdSME5xUW5aSU8wVkViMEpMTzBsQlEwVXNjMFJCUVdkSU8xbEJRV2hJTERoRFFVRm5TRHRIUTJ4Q2RrZzdRMEZEUmpzN1FVUmlTenRGUVVWRk8wbEJRMFVzWjBKQlFXZENPMGxCUTJoQ0xIZENRVUZuUWp0WlFVRm9RaXhuUWtGQlowSTdTVUZEYUVJc2IwTkJRVFJDTzFsQlFUVkNMRFJDUVVFMFFqdEhRMkp1UXp0RlJHZENTenRKUVVORkxGbEJRVms3U1VGRFdpeHpSRUZCWjBnN1dVRkJhRWdzT0VOQlFXZElPMGREWkhaSU8wVkVhVUpMTzBsQlEwVXNXVUZCV1R0SlFVTmFMSE5FUVVGblNEdFpRVUZvU0N3NFEwRkJaMGc3UjBObWRrZzdSVVJyUWtzN1NVRkRSU3hWUVVGVk8wbEJRMVlzYzBSQlFXZElPMWxCUVdoSUxEaERRVUZuU0R0SFEyaENka2c3UlVSdFFrczdTVUZEUlN4VlFVRlZPMGxCUTFZc2FVTkJRWGxDTzFsQlFYcENMSGxDUVVGNVFqdEpRVU42UWl4elJFRkJaMGc3V1VGQmFFZ3NPRU5CUVdkSU8wZERha0oyU0R0RlJHOUNTenRKUVVORkxITkVRVUZuU0R0WlFVRm9TQ3c0UTBGQlowZzdSME5zUW5aSU8wTkJRMFk3TzBGR2RrWkRPMFZET0VkSkxDdENRVUZuUWp0VlFVRm9RaXgxUWtGQlowSTdSVUZEYUVJc1ZVRkJWVHREUVd0Q1dEczdRVUZvUWtNN1JVRkZSVHRKUVVORkxGbEJRVms3U1VGRFdpeFhRVUZYTzBkRGJrSnNRanRGUkhOQ1N6dEpRVU5GTEZsQlFWazdSME53UW01Q08wVkVkVUpMTzBsQlEwVXNWVUZCVlR0SlFVTldMRmRCUVZjN1IwTnlRbXhDTzBOQlEwWTdPMEZFVDBzN1JVRkZSVHRKUVVORkxGbEJRVms3U1VGRFdpeFhRVUZYTzBkRGJrSnNRanRGUkhOQ1N6dEpRVU5GTEZsQlFWazdSME53UW01Q08wVkVkVUpMTzBsQlEwVXNWVUZCVlR0SlFVTldMRmRCUVZjN1IwTnlRbXhDTzBOQlEwWTdPMEZHTVVkRE8wVkRiMGxKTERoQ1FVRm5RanRWUVVGb1FpeHpRa0ZCWjBJN1EwRnRRMnBDT3p0QlFXcERRenRGUVVWRk8wbEJRMFVzWlVGQlpUdEpRVU5tTEhkQ1FVRm5RanRaUVVGb1FpeG5Ra0ZCWjBJN1NVRkRhRUlzYzBOQlFUaENPMWxCUVRsQ0xEaENRVUU0UWp0SFEzUkNja003UlVSNVFrczdTVUZEUlN4WlFVRlpPMGxCUTFvc2RVUkJRVzFJTzFsQlFXNUlMQ3REUVVGdFNEdEhRM1pDTVVnN1JVUXdRa3M3U1VGRFJTeFpRVUZaTzBsQlExb3NkVVJCUVcxSU8xbEJRVzVJTEN0RFFVRnRTRHRIUTNoQ01VZzdSVVF5UWtzN1NVRkRSU3hWUVVGVk8wbEJRMVlzZFVSQlFXMUlPMWxCUVc1SUxDdERRVUZ0U0R0SFEzcENNVWc3UlVRMFFrczdTVUZEUlN4VlFVRlZPMGxCUTFZc2FVTkJRWGxDTzFsQlFYcENMSGxDUVVGNVFqdEpRVU42UWl4M1JFRkJiVWc3V1VGQmJrZ3NaMFJCUVcxSU8wZERNVUl4U0R0RlJEWkNTenRKUVVORkxIZEVRVUZ0U0R0WlFVRnVTQ3huUkVGQmJVZzdSME16UWpGSU8wTkJRMFk3TzBGRVNrczdSVUZGUlR0SlFVTkZMR1ZCUVdVN1NVRkRaaXgzUWtGQlowSTdXVUZCYUVJc1owSkJRV2RDTzBsQlEyaENMSE5EUVVFNFFqdFpRVUU1UWl3NFFrRkJPRUk3UjBOMFFuSkRPMFZFZVVKTE8wbEJRMFVzV1VGQldUdEpRVU5hTEhWRVFVRnRTRHRaUVVGdVNDd3JRMEZCYlVnN1IwTjJRakZJTzBWRU1FSkxPMGxCUTBVc1dVRkJXVHRKUVVOYUxIVkVRVUZ0U0R0WlFVRnVTQ3dyUTBGQmJVZzdSME40UWpGSU8wVkVNa0pMTzBsQlEwVXNWVUZCVlR0SlFVTldMSFZFUVVGdFNEdFpRVUZ1U0N3clEwRkJiVWc3UjBONlFqRklPMFZFTkVKTE8wbEJRMFVzVlVGQlZUdEpRVU5XTEdsRFFVRjVRanRaUVVGNlFpeDVRa0ZCZVVJN1NVRkRla0lzZDBSQlFXMUlPMWxCUVc1SUxHZEVRVUZ0U0R0SFF6RkNNVWc3UlVRMlFrczdTVUZEUlN4M1JFRkJiVWc3V1VGQmJrZ3NaMFJCUVcxSU8wZERNMEl4U0R0RFFVTkdPenRCUm14SlJDeFpRVUZaTzBGQlpGWTdSVWR1UlVVc2NVSkJRV003UlVGQlpDeHhRa0ZCWXp0RlFVRmtMR05CUVdNN1JVRkRaQ3dyUWtGQmIwSTdSVUZCY0VJc09FSkJRVzlDTzAxQlFYQkNMSGRDUVVGdlFqdFZRVUZ3UWl4dlFrRkJiMEk3UlVGRGNFSXNZMEZCWXp0RFFXdENaanM3UVVnclEwUTdSVWMzUkVrc1dVRkJXVHRGUVVOYUxHVkJRV1U3UlVGRFppeHBRa2hSVFR0RlIxQk9MRmRCUVZjN1JVRkRXQ3hsUVVGbE8wVkJRMllzV1VGQldUdEZRVU5hTEc5Q1FVRnZRanRGUVVOd1FpeHJRa0ZCYTBJN1EwRkRia0k3TzBGSWNVUklPMFZIYkVSSkxGbEJRVms3UlVGRFdpeFZRVUZWTzBOQlExZzdPMEZJYzBSSU8wVkhPVU5KTEZkQlFWYzdRMEZUV2pzN1FVaHhRMGc3UlVjeFEwMHNVMEZCVXp0RlFVTlVMR0ZCUVdFN1JVRkRZaXhsUVVGbE8wVkJRMllzVjBGQlZ6dERRVU5hT3p0QlNITkRURHRGUjNoQ1NTd3JRa0ZCWjBJN1ZVRkJhRUlzZFVKQlFXZENPME5CYjBScVFqczdRVUZzUkVNN1JVRkZSVHRKUVVORkxIZENRVUZuUWp0WlFVRm9RaXhuUWtGQlowSTdSMFIzVFhaQ08wVkRjazFMTzBsQlEwVXNkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRIUkhWTmRrSTdSVU53VFVzN1NVRkRSU3gzUTBGQmNVSTdXVUZCY2tJc1owTkJRWEZDTzBkRWMwMDFRanRGUTI1TlN6dEpRVU5GTEhORVFVRm5TRHRaUVVGb1NDdzRRMEZCWjBnN1IwUnhUWFpJTzBOQlEwWTdPMEZEY2s1TE8wVkJSVVU3U1VGRFJTeDNRa0ZCWjBJN1dVRkJhRUlzWjBKQlFXZENPMGRFZDAxMlFqdEZRM0pOU3p0SlFVTkZMSGRDUVVGblFqdFpRVUZvUWl4blFrRkJaMEk3UjBSMVRYWkNPMFZEY0UxTE8wbEJRMFVzZDBOQlFYRkNPMWxCUVhKQ0xHZERRVUZ4UWp0SFJITk5OVUk3UlVOdVRVczdTVUZEUlN4elJFRkJaMGc3V1VGQmFFZ3NPRU5CUVdkSU8wZEVjVTEyU0R0RFFVTkdPenRCUmk5TVF6dEZSMFpOTEdkRFFVRm5RanRWUVVGb1FpeDNRa0ZCWjBJN1EwRmhha0k3TzBGQldFTTdSVUZGUlR0SlFVTkZMRmxCUVZrN1NVRkRXaXgzUWtGQlowSTdXVUZCYUVJc1owSkJRV2RDTzBkRWNVMTZRanRGUTJ4TlR6dEpRVU5GTEhkQ1FVRm5RanRaUVVGb1FpeG5Ra0ZCWjBJN1IwUnZUWHBDTzBOQlEwWTdPMEZETjAxUE8wVkJSVVU3U1VGRFJTeFpRVUZaTzBsQlExb3NkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRIUkhGTmVrSTdSVU5zVFU4N1NVRkRSU3gzUWtGQlowSTdXVUZCYUVJc1owSkJRV2RDTzBkRWIwMTZRanREUVVOR096dEJSamROUXp0RlIyTk5MR2REUVVGblFqdFZRVUZvUWl4M1FrRkJaMEk3UTBGaGFrSTdPMEZCV0VNN1JVRkZSVHRKUVVORkxGbEJRVms3U1VGRFdpeDNRa0ZCWjBJN1dVRkJhRUlzWjBKQlFXZENPMGRFYlUxNlFqdEZRMmhOVHp0SlFVTkZMSGRDUVVGblFqdFpRVUZvUWl4blFrRkJaMEk3UjBSclRYcENPME5CUTBZN08wRkRNMDFQTzBWQlJVVTdTVUZEUlN4WlFVRlpPMGxCUTFvc2QwSkJRV2RDTzFsQlFXaENMR2RDUVVGblFqdEhSRzFOZWtJN1JVTm9UVTg3U1VGRFJTeDNRa0ZCWjBJN1dVRkJhRUlzWjBKQlFXZENPMGRFYTAxNlFqdERRVU5HT3p0QlJqTk9RenRGUnl0Q1NTd3JRa0ZCWjBJN1ZVRkJhRUlzZFVKQlFXZENPME5CYjBScVFqczdRVUZzUkVNN1JVRkZSVHRKUVVORkxIZENRVUZuUWp0WlFVRm9RaXhuUWtGQlowSTdSMFJuVFhaQ08wVkROMHhMTzBsQlEwVXNkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRIUkN0TWRrSTdSVU0xVEVzN1NVRkRSU3gzUTBGQmNVSTdXVUZCY2tJc1owTkJRWEZDTzBkRU9FdzFRanRGUXpOTVN6dEpRVU5GTEhkRVFVRnRTRHRaUVVGdVNDeG5SRUZCYlVnN1IwUTJUREZJTzBOQlEwWTdPMEZETjAxTE8wVkJSVVU3U1VGRFJTeDNRa0ZCWjBJN1dVRkJhRUlzWjBKQlFXZENPMGRFWjAxMlFqdEZRemRNU3p0SlFVTkZMSGRDUVVGblFqdFpRVUZvUWl4blFrRkJaMEk3UjBRclRIWkNPMFZETlV4TE8wbEJRMFVzZDBOQlFYRkNPMWxCUVhKQ0xHZERRVUZ4UWp0SFJEaE1OVUk3UlVNelRFczdTVUZEUlN4M1JFRkJiVWc3V1VGQmJrZ3NaMFJCUVcxSU8wZEVOa3d4U0R0RFFVTkdPenRCUmpsUFF6dEZSM0ZFVFN4blEwRkJaMEk3VlVGQmFFSXNkMEpCUVdkQ08wTkJZV3BDT3p0QlFWaERPMFZCUlVVN1NVRkRSU3haUVVGWk8wbEJRMW9zZDBKQlFXZENPMWxCUVdoQ0xHZENRVUZuUWp0SFJEWk1la0k3UlVNeFRFODdTVUZEUlN4M1FrRkJaMEk3V1VGQmFFSXNaMEpCUVdkQ08wZEVORXg2UWp0RFFVTkdPenRCUmpWUVF6dEZSM0ZGVFN4blEwRkJaMEk3VlVGQmFFSXNkMEpCUVdkQ08wTkJZV3BDT3p0QlFWaERPMFZCUlVVN1NVRkRSU3haUVVGWk8wbEJRMW9zZDBKQlFXZENPMWxCUVdoQ0xHZENRVUZuUWp0SFJESk1la0k3UlVONFRFODdTVUZEUlN4M1FrRkJaMEk3V1VGQmFFSXNaMEpCUVdkQ08wZEVNRXg2UWp0RFFVTkdPenRCUmpGUlF6dEZSeXRHUlN4M1FrRkJaMEk3VlVGQmFFSXNaMEpCUVdkQ08wTkJlVU5xUWpzN1FVaDRTVVE3UlVkdlIwMHNWVUZCVlR0RlFVTldMR0ZCUVdFN1JVRkRZaXhsUVVGbE8wVkJRMllzVjBGQlZ6dERRVU5hT3p0QlNIaEhURHRGUnpSSFNTeHRRa0ZCYlVJN1JVRkRia0lzVjBGQlZ6dERRV2xDV2pzN1FVZzVTRWc3UlVkcFNFMHNiVUpCUVcxQ08wVkJRMjVDTEZsQlFWazdSVUZEV2l3clJFRkJkVVE3UlVGQmRrUXNkVVJCUVhWRU8wVkJRM1pFTEdsRFFVRjVRanRWUVVGNlFpeDVRa0ZCZVVJN1EwRkRNVUk3TzBGSWNraE1PMFZIZDBoTkxHbERRVUZwUWp0VlFVRnFRaXg1UWtGQmFVSTdRMEZEYkVJN08wRklla2hNTzBWSE5FaE5MR3REUVVGcFFqdFZRVUZxUWl3d1FrRkJhVUk3UTBGRGJFSTdPMEZJTjBoTU8wVkhiVWxOTEZsQlFWazdSVUZEV2l4aFFVRmhPMFZCUTJJc1YwRkJWenREUVVOYU96dEJTSFJKVER0RlIyMUtSU3gzUWtGQlowSTdWVUZCYUVJc1owSkJRV2RDTzBOQmFVaHFRanM3UVVod1VVUTdSVWR6U2trc2JVSkJRVzFDTzBWQlEyNUNMQ3RDUVVGblFqdFZRVUZvUWl4MVFrRkJaMEk3UlVGRGFFSXNjMFJCUVdkSU8xVkJRV2hJTERoRFFVRm5TRHREUVhORGFrZzdPMEZCY0VORE8wVkJSVVU3U1VGRFJTeDNRa0ZCWjBJN1dVRkJhRUlzWjBKQlFXZENPMGRFYVV0MlFqdERRVU5HT3p0QlEzSkxTenRGUVVWRk8wbEJRMFVzZDBKQlFXZENPMWxCUVdoQ0xHZENRVUZuUWp0SFJHbExka0k3UTBGRFJqczdRVVl2VkVNN1JVZHRTMDBzYlVKQlFXMUNPMFZCUTI1Q0xGTkJRVk03UTBGRFZqczdRVWh5UzB3N1JVZDNTMDBzVVVGQlVUdEZRVU5TTEdkRFFVRm5RanRWUVVGb1FpeDNRa0ZCWjBJN1EwRlJha0k3TzBGQlRrTTdSVUZGUlR0SlFVTkZMRlZCUVZVN1IwUm5TMjVDTzBOQlEwWTdPMEZEY0V0UE8wVkJSVVU3U1VGRFJTeFZRVUZWTzBkRVowdHVRanREUVVOR096dEJSaTlWUXp0RlIyOU1UU3hUUVVGVE8wVkJRMVFzWjBOQlFXZENPMVZCUVdoQ0xIZENRVUZuUWp0RFFWRnFRanM3UVVGT1F6dEZRVVZGTzBsQlEwVXNWVUZCVlR0SFJDdEtia0k3UTBGRFJqczdRVU51UzA4N1JVRkZSVHRKUVVORkxGVkJRVlU3UjBRclNtNUNPME5CUTBZN08wRkdNVlpETzBWSGFVMUpMRzFDUVVGdFFqdEZRVU51UWl4WFFVRlhPME5CYzBKYU96dEJTSGhPU0R0RlIzTk5UU3hsUVVGbE8wTkJRMmhDT3p0QlNIWk5URHRGUnpCTlRTeGpRVUZqTzBOQlEyWTdPMEZJTTAxTU8wVkhPRTFOTEN0Q1FVRm5RanRWUVVGb1FpeDFRa0ZCWjBJN1JVRkRhRUlzVjBGQlZ6dERRVkZhT3p0QlFVNURPMFZCUlVVN1NVRkRSU3gzUWtGQlowSTdXVUZCYUVJc1owSkJRV2RDTzBkRU5rcDZRanREUVVOR096dEJRMnBMVHp0RlFVVkZPMGxCUTBVc2QwSkJRV2RDTzFsQlFXaENMR2RDUVVGblFqdEhSRFpLZWtJN1EwRkRSanM3UVVac1dFTTdSVWN5VGtrc2JVSkJRVzFDTzBWQlEyNUNMQ3RDUVVGblFqdFZRVUZvUWl4MVFrRkJaMEk3UlVGRGFFSXNkMFJCUVcxSU8xVkJRVzVJTEdkRVFVRnRTRHREUVhORGNFZzdPMEZCY0VORE8wVkJSVVU3U1VGRFJTeDNRa0ZCWjBJN1dVRkJhRUlzWjBKQlFXZENPMGRFTWtwMlFqdERRVU5HT3p0QlJqbFlRenRGUjNkUFRTeHRRa0ZCYlVJN1JVRkRia0lzVTBGQlV6dERRVU5XT3p0QlNERlBURHRGUnpaUFRTeFJRVUZSTzBWQlExSXNaME5CUVdkQ08xVkJRV2hDTEhkQ1FVRm5RanREUVZGcVFqczdRVUZPUXp0RlFVVkZPMGxCUTBVc1ZVRkJWVHRIUkRCS2JrSTdRMEZEUmpzN1FVWTVXVU03UlVkNVVFMHNVMEZCVXp0RlFVTlVMR2REUVVGblFqdFZRVUZvUWl4M1FrRkJaMEk3UTBGUmFrSTdPMEZCVGtNN1JVRkZSVHRKUVVORkxGVkJRVlU3UjBSNVNtNUNPME5CUTBZN08wRkROMHBQTzBWQlJVVTdTVUZEUlN4VlFVRlZPMGRFZVVwdVFqdERRVU5HT3p0QlJqbFpSQ3haUVVGWk8wRkJha0pXTzBWSk9VUkpMRmxCUVZrN1JVRkRXaXhyUWtGQmEwSTdRMEZEYmtJN08wRktORVJJTzBWSmVrUkpMRmRCUVZjN1JVRkRXQ3hWUVVGVk8wTkJRMWc3TzBGS01rVk1MRmxCUVZrN1FVRndRbFk3UlV0dVJVVXNWMEZCVnp0RlFVTllMRzFDUVVGdFFqdEZRVU51UWl4clFrRkJhMEk3UTBGRGJrSTdPMEZNYzBWRU8wVkxNMFJKTEN0Q1FVRm5RanRWUVVGb1FpeDFRa0ZCWjBJN1EwRnhRbXBDT3p0QlFXNUNRenRGUVVWRk8wbEJRMFVzZDBKQlFXZENPMWxCUVdoQ0xHZENRVUZuUWp0SFNEQmxka0k3UlVkMlpVczdTVUZEUlN4WFFVRlhPMGxCUTFnc2QwTkJRWEZDTzFsQlFYSkNMR2REUVVGeFFqdEhTSGxsTlVJN1JVZDBaVXM3U1VGRFJTeDNRMEZCY1VJN1dVRkJja0lzWjBOQlFYRkNPMGRJZDJVMVFqdEZSM0psU3p0SlFVTkZMSE5FUVVGblNEdFpRVUZvU0N3NFEwRkJaMGc3UjBoMVpYWklPME5CUTBZN08wRkhlR1pMTzBWQlJVVTdTVUZEUlN4M1FrRkJaMEk3V1VGQmFFSXNaMEpCUVdkQ08wZElNR1YyUWp0RlIzWmxTenRKUVVORkxGZEJRVmM3U1VGRFdDeDNRMEZCY1VJN1dVRkJja0lzWjBOQlFYRkNPMGRJZVdVMVFqdEZSM1JsU3p0SlFVTkZMSGREUVVGeFFqdFpRVUZ5UWl4blEwRkJjVUk3UjBoM1pUVkNPMFZIY21WTE8wbEJRMFVzYzBSQlFXZElPMWxCUVdoSUxEaERRVUZuU0R0SFNIVmxka2c3UTBGRFJqczdRVVl2WWtNN1JVdHVRMGtzT0VKQlFXZENPMVZCUVdoQ0xITkNRVUZuUWp0RFFYRkNha0k3TzBGQmJrSkRPMFZCUlVVN1NVRkRSU3gzUWtGQlowSTdXVUZCYUVJc1owSkJRV2RDTzBkSWMyVjJRanRGUjI1bFN6dEpRVU5GTEZkQlFWYzdTVUZEV0N4NVEwRkJjVUk3V1VGQmNrSXNhVU5CUVhGQ08wZEljV1UxUWp0RlIyeGxTenRKUVVORkxIbERRVUZ4UWp0WlFVRnlRaXhwUTBGQmNVSTdSMGh2WlRWQ08wVkhhbVZMTzBsQlEwVXNkMFJCUVcxSU8xbEJRVzVJTEdkRVFVRnRTRHRIU0cxbE1VZzdRMEZEUmpzN1FVZHdaa3M3UlVGRlJUdEpRVU5GTEhkQ1FVRm5RanRaUVVGb1FpeG5Ra0ZCWjBJN1IwaHpaWFpDTzBWSGJtVkxPMGxCUTBVc1YwRkJWenRKUVVOWUxIbERRVUZ4UWp0WlFVRnlRaXhwUTBGQmNVSTdSMGh4WlRWQ08wVkhiR1ZMTzBsQlEwVXNlVU5CUVhGQ08xbEJRWEpDTEdsRFFVRnhRanRIU0c5bE5VSTdSVWRxWlVzN1NVRkRSU3gzUkVGQmJVZzdXVUZCYmtnc1owUkJRVzFJTzBkSWJXVXhTRHREUVVOR096dEJSbTVrUXp0RlMwcEJMR3RGVEhKRGRVSTdWVXR4UTNaQ0xEQkVUSEpEZFVJN1EwRXlRM1JDT3p0QlMwcEVPMFZCUlVVN1NVRkRSU3hyUTBGQmFVSTdXVUZCYWtJc01FSkJRV2xDTzBkSU1tUndRanREUVVOR096dEJSeTlrUXp0RlFVVkZPMGxCUTBVc2EwTkJRV2xDTzFsQlFXcENMREJDUVVGcFFqdEhTREprY0VJN1EwRkRSanM3UVVZM1pFTTdSVXROUlN3d1EwRkJhME03VlVGQmJFTXNhME5CUVd0RE8wTkJlVU51UXpzN1FVd3ZRMFE3UlV0VFNTd3JRa0ZCWjBJN1ZVRkJhRUlzZFVKQlFXZENPME5CYVVKcVFqczdRVUZtUXp0RlFVVkZPMGxCUTBVc2QwSkJRV2RDTzFsQlFXaENMR2RDUVVGblFqdEhTRFJrZGtJN1JVZDZaRXM3U1VGRFJTeFhRVUZYTzBsQlExZ3NkME5CUVhGQ08xbEJRWEpDTEdkRFFVRnhRanRIU0RKa05VSTdSVWQ0WkVzN1NVRkRSU3h6UkVGQlowZzdXVUZCYUVnc09FTkJRV2RJTzBkSU1HUjJTRHREUVVOR096dEJSM1psU3p0RlFVVkZPMGxCUTBVc2QwSkJRV2RDTzFsQlFXaENMR2RDUVVGblFqdEhTRFJrZGtJN1JVZDZaRXM3U1VGRFJTeFhRVUZYTzBsQlExZ3NkME5CUVhGQ08xbEJRWEpDTEdkRFFVRnhRanRIU0RKa05VSTdSVWQ0WkVzN1NVRkRSU3h6UkVGQlowZzdXVUZCYUVnc09FTkJRV2RJTzBkSU1HUjJTRHREUVVOR096dEJSbXhtUXp0RlN6WkNTU3c0UWtGQlowSTdWVUZCYUVJc2MwSkJRV2RDTzBOQmFVSnFRanM3UVVGbVF6dEZRVVZGTzBsQlEwVXNkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRIU0hsa2RrSTdSVWQwWkVzN1NVRkRSU3hYUVVGWE8wbEJRMWdzZVVOQlFYRkNPMWxCUVhKQ0xHbERRVUZ4UWp0SFNIZGtOVUk3UlVkeVpFczdTVUZEUlN4M1JFRkJiVWc3V1VGQmJrZ3NaMFJCUVcxSU8wZElkV1F4U0R0RFFVTkdPenRCUjNCbFN6dEZRVVZGTzBsQlEwVXNkMEpCUVdkQ08xbEJRV2hDTEdkQ1FVRm5RanRIU0hsa2RrSTdSVWQwWkVzN1NVRkRSU3hYUVVGWE8wbEJRMWdzZVVOQlFYRkNPMWxCUVhKQ0xHbERRVUZ4UWp0SFNIZGtOVUk3UlVkeVpFczdTVUZEUlN4M1JFRkJiVWc3V1VGQmJrZ3NaMFJCUVcxSU8wZElkV1F4U0R0RFFVTkdPenRCUm01blFrTTdSVXQzUkVFc2EwVk1ha2QxUWp0VlMybEhka0lzTUVSTWFrZDFRanREUVRKRGRFSTdPMEZMZDBSRU8wVkJSVVU3U1VGRFJTeHJRMEZCYVVJN1dVRkJha0lzTUVKQlFXbENPMGRJSzJOd1FqdERRVU5HT3p0QlIyNWtRenRGUVVWRk8wbEJRMFVzYTBOQlFXbENPMWxCUVdwQ0xEQkNRVUZwUWp0SFNDdGpjRUk3UTBGRFJqczdRVVkzWjBKRE8wVkxiVVZKTEN0Q1FVRm5RanRWUVVGb1FpeDFRa0ZCWjBJN1EwRkhha0k3TzBGQlJFTXNORUpNY2tWS096dEJTM0ZGU1N4dlFreHlSVW83UlV0blJrRXNhVU5CUVdsQ08xVkJRV3BDTEhsQ1FVRnBRanRGUVVOcVFpd3JSRXd4U0hWQ08wVkxNRWgyUWl4MVJFd3hTSFZDTzBWTE1raDJRaXd3UlV3elNIVkNPMVZMTWtoMlFpeHJSVXd6U0hWQ08wTkJNa04wUWpzN1FVRkdSRHRGUzNGR1JTeFhRVUZYTzBWQlExZ3NkMEpCUVdkQ08xVkJRV2hDTEdkQ1FVRm5RanREUVdOcVFqczdRVXh3UjBRN1JVdDVSa2tzYjBOQlFYRkNPMVZCUVhKQ0xEUkNRVUZ4UWp0RFFVTjBRanM3UVV3eFJrZzdSVXMyUmtrc1dVRkJXVHRGUVVOYUxGZEJRVmM3UTBGRFdqczdRVXd2UmtnN1JVdHJSMGtzYlVOQlFYRkNPMVZCUVhKQ0xESkNRVUZ4UWp0RFFVTjBRanM3UVV4c1Jrd3NZVUZCWVR0QlFVTmlPMFZCUjBrc1dVRkJXVHRGUVVOYUxHbERRVUZwUXp0VlFVRnFReXg1UWtGQmFVTTdSVUZEYWtNc2VVVkJhRVZ4UWp0VlFXZEZja0lzYVVWQmFFVnhRanREUVd0R2RFSTdPMEZCZGtKSU8wVkJVMDBzV1VGQldUdERRVU5pT3p0QlFWWk1PMFZCWVUwc2MwUkJRV2RJTzFWQlFXaElMRGhEUVVGblNEdERRVU5xU0RzN1FVRmtURHRGUVdsQ1RTeFhRVUZYTzBOQlExbzdPMEZCYkVKTU8wVkJjVUpOTEhkRVFVRnRTRHRWUVVGdVNDeG5SRUZCYlVnN1EwRkRjRWc3TzBGQlNVdzdSVUZMVFN4alFVRmpPME5CUTJZN08wRkJTVXc3UlVGRFJUdEpRVWRKTEd0Q1FVRnJRanRKUVVOc1FpeHZRa0ZCYjBJN1IwRkRja0k3UTBVclowSktJaXdpWm1sc1pTSTZJbk4wZVd4bExtTnpjeUo5ICov"}},"time_used":540,"timings":{"blocked":353,"dns":0,"connect":0,"send":0,"wait":95,"receive":92,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"equinuxglobalassets.com","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}}]}
